Difference in HEAD and GET for HTTP Request - why HEAD Request could be used for DDoS Attack?

JK 2010 
Created at
Updated at  
10,304 0 0

This is something asasociated with HTTP Request - simply web browser request. I was curious why client request my website in differen t manners.

Below is web log I got recently stored in my apache web server log - actually the client source (IP address) is different:

270.137.243.151 - - [10/Oct/2024:11:06:02 -0700] "GET /knowledgebase/395/Snack-that-makes-my-mouth-happy-when-winter-comes/ HTTP/1.1" 200 85447 "https://abjohn.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36"
134.206.227.125 - - [10/Oct/2024:11:06:03 -0700] "HEAD /knowledgebase/395/Snack-that-makes-my-mouth-happy-when-winter-comes HTTP/1.1" 200 - "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36"

The peculiar thing is that users call the same URL, one called GET and one called HEAD.

the difference between the GET and HEAD methods relates to how the HTTP requests interact with the server:

  1. GET Request:
    • The GET method is used to request the full content of a resource (like a webpage, file, or other data).
    • In the first log entry, the GET request retrieves the full content of the webpage /knowledgebase/395/Snack-that-makes-my-mouth-happy-when-winter-comes/, and the response size is 85447 bytes (which indicates the server returned that much data).
  2. HEAD Request:
    • The HEAD method is similar to GET, but it only requests the headers of the resource, without the body (i.e., it does not download the actual content of the webpage).
    • In the second log entry, the HEAD request for the same URL returned a 200 OK response but with no body (-), as indicated by the absence of a response size.

To summarize:

  • GET retrieves the full content of the resource.
  • HEAD retrieves only the headers (e.g., metadata like the content type or status code) without downloading the resource itself. This is often used to check the status of a resource without needing to download it.

 

I was wondering if HEAD method could be treated as DDoS attack. HEAD requests can be used as part of a DDoS (Distributed Denial of Service) attack, though on their own, they are less commonly used compared to GET or other methods in DDoS attacks. Here's why and how they could be involved:

Why HEAD Requests Could Be Used in DDoS Attacks:

  1. Low Bandwidth, High Request Rate: Since HEAD requests only retrieve headers and not the full content, they require less bandwidth on the attacker’s side. This allows attackers to send a higher volume of requests in a short amount of time, overwhelming the server’s ability to process them.
  2. Resource Consumption: Even though a HEAD request does not return the body of the resource, the server still needs to process the request and generate the headers. If an attacker sends a large number of HEAD requests, it can still consume CPU, memory, and connection resources on the server, which can lead to resource exhaustion.
  3. Detection Evasion: Since HEAD requests are legitimate in nature (used by browsers, bots, and search engines for checking the status of a page), attackers may use them to try and bypass certain security measures that are designed to detect or block more typical DDoS attacks involving GET requests.
  4. Server-Side Processing: Some applications handle HEAD requests in a similar way to GET requests, meaning that even though no body is returned, the backend still processes the request fully, including database queries or other heavy operations.

Comparison to GET-Based DDoS:

  • GET requests in DDoS attacks often consume more bandwidth, since they retrieve the full content, but the server processes both GET and HEAD requests in similar ways from a resource perspective.
  • HEAD requests can allow attackers to perform high-frequency attacks with lower bandwidth usage, which could make them harder to detect in some cases, especially if the server isn’t rate-limiting them.

Mitigation Strategies:

  • Rate Limiting: Implement rate limiting for all types of HTTP requests, including HEAD requests, to avoid abuse.
  • Traffic Monitoring: Monitor traffic patterns and inspect request headers. Large volumes of HEAD requests from the same IPs or IP ranges can be a sign of suspicious activity.
  • Firewall Rules: Use Web Application Firewalls (WAF) to filter out suspicious patterns of HEAD requests.
  • Request Throttling: Throttle the number of requests per second per client (IP) to prevent overload.

While HEAD requests are not as commonly used in DDoS attacks as GET or POST, they can still be leveraged as part of a broader attack or in combination with other methods to create a multi-vector DDoS attack.

Tags DDoS Attack GET GET request HEAD HEAD request HTTP methods HTTP protocol HTTP request Resource request Server request URL request Web browser request Web server Facebook X
Comments 0
  1. Open Databases for Sex Crime Occurrences in the U.S.
    690
  2. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    2,554
  3. The Future of Software Engineer - AI Engineering
    917
  4. Why ROLLBACK is useful when you work with Google Gemini CLI?
    814
  5. Gemini CLI makes a Magic! Time to speed up your app development with Google Gemini CLI!
    946
  6. Common Naming Format in Software Development
    2,511
  7. Types of Memory and Storage
    7,407
  8. How to access websites blocked by ESNI and ECH settings with Firefox!
    10,217
  9. Block unwanted URLs for comfortable web browsing with Chrome Addon - URL Blocker
    7,582
  10. Modern Web Indexing Technology - IndexNow
    7,393
  11. Key Differences in Gen Z/Alpha/Zalpha based on Upbringing and Life Experiences
    8,117
  12. Zalpha: A Global Trend, Not Just a Distant Concept
    7,710
  13. Zalpha Generation: A New Term for the Children of Gen Z and Millennials
    7,769
  14. The Generation Corona (+ Gen Z) is grappling with how to communicate and live alongside Gen Alpha
    8,048
  15. Starship, Super Heavy, Successful Ground Landing
    7,593
  16. Understanding the Key Differences Between GIS and LBS: Purpose, Technology, and Applications
    7,287
  17. The Evolution and Applications of Geographic Information Systems: From Thematic Mapping to Efficient Data Analysis and Management
    7,201
  18. Japan's Current Status on Generative AI and Copyright: A Summary of Developments, Current Situation, and Key Issues
    7,793
  19. Quantum computer and qubit generation method
    7,263
  20. Why Two Path Authentication is Essential - My Microsoft Account is Gone!
    8,289
  21. The UN Pushes for Global AI Standards
    7,190
  22. Global Robot Market Outlook
    9,501
  23. Global Electronic Medicine Trends and Market Outlook 
    9,183
  24. Big Tech's AI Investments and RE100
    7,145
  25. Amazon's Return-to-Office Mandate: A Bold Move or a Step Backwards?
    10,389
  26. The Federal Reserve: The Money-Printing King
    9,604
  27. Green Premium, Eco-Certified Building
    8,729
  28. Europe is retreating from Carbon Neutrality.
    7,415
  29. Lack of Public Incinerators in Korea
    7,584
  30. The Biden administration announces $62 million in support of the growing hydrogen industry in the United States
    8,583
Recently updated
  1. Bootstrap vs. Tailwind CSS: Origins, Features, Pros & Cons, and How to Choose the Right Framework
    102
  2. The Complete Guide to Golang: History, Features, Real-World Uses, and Code Examples
    259
  3. Telemetry vs. Analytics: Understanding the Difference and Why It Matters
    187
  4. The Evolution and Production Reality of Agentic AI
    177
  5. How to Activate or Waive Your UIUC Student Health Insurance
    258
  6. Complete Guide to Building a Machine Learning Model
    298
  7. My life cuts at Las Vegas during Thanksgiving day holiday
    7,379
  8. The Cybercab Transformation: From Autonomous Taxi to Mobile Base Station
    322
  9. Harness vs. OpenClaw: Two Very Different "Agents"
    920
  10. Clean Python Environments: The Power of venv vs. Docker
    794
  11. What is Docker? Why is Docker also useful in a development environment?
    596
  12. UIUC 2026-2027 Academic Calendar
    1,529
  13. How to Build Llama 3 AI Apps with Python: Setup & User Prompts
    779
  14. Open-Source LLMs: The AI Revolution
    728
  15. Resume 2.0: Leveling Up for My First Software Gig
    2,125
  16. Not everyone will understand what this man just did
    1,757
  17. UIUC Dorm Guide: Find Your Perfect Fit !!
    1,558
  18. Unpacking IU's Shopper
    729
  19. Jackie Chan's Police Story: The Action Masterpiece
    620
  20. The IVE Story: Identity, 'I AM' Charts, and Influence
    923
  21. Tech Visionaries who graduated at UIUC - You are the Next Turn
    1,162
  22. Open Databases for Sex Crime Occurrences in the U.S.
    690
  23. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    2,554
  24. My First Day at University of Illinois-Urvana Champaign
    1,162
  25. Sand, Sea, and a Splash of Fun at Newport Beach: A Family Adventure
    8,097
  26. Sun, Rocks, and Adventure: A Day at Joshua Tree National Park
    8,177
  27. Sipping the Stars: My Starbucks Adventure
    9,597
  28. Exciting explore at Sequoia National Park
    7,629
  29. My Life Shot at Death Valley
    1,650
  30. Ip Man fights with Muay Thai Master
    912
  31. Mad Clown - Don't Die
    987
  32. How to get Student Enrollment and Degree Verification at UIUC
    4,714
  33. LAX Thanksgiving Rush: A Joyful Reunion
    904
  34. ZO ZAZZ(조째즈) - Don`t you know (모르시나요) (PROD.ROCOBERRY)
    1,093
  35. FISHINGIRLS Unleashes Energetic EP 'Funiverse' Featuring Signature Track 'Fishing King'
    958
  36. 10CM - To Reach You (너에게 닿기를)
    1,136
  37. Feeling weak? Transform yourself at the UIUC ARC!
    1,555
  38. BOYNEXTDOOR - If I Say I Love You
    1,165
  39. The Future of Software Engineer - AI Engineering
    917
  40. G Dragon x Taeyang (Eyes Nose Lips, Power, Home Sweet Home, GOOD BOY) - LE GALA PIÈCES JAUNES 2025
    889
  41. Lie - Legend song by BIGBANG
    7,796
  42. Why ROLLBACK is useful when you work with Google Gemini CLI?
    814
  43. Reimbursement after Vaccination at McKinley Health Center
    990
  44. Gemini CLI makes a Magic! Time to speed up your app development with Google Gemini CLI!
    946
  45. Common Questions from UIUC school life in terms of CS Program
    1,088
  46. UIUC Immunization Compliance
    1,181
  47. LEE CHANHYUK's songs really resonate with my soul - Time Stop! Vivid LaLa Love, Eve, Endangered Love ...
    1,075
  48. LEE CHANHYUK - Endangered Love (멸종위기사랑)
    1,075
  49. Cupid (OT4/Twin Ver.) - LIVE IN STUDIO | FIFTY FIFTY (피프티피프티)
    851
  50. Common methods to improve coding skills
    971