GET.zip





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

JK 2014 
Created at
Updated at  
10,356 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.
    711
  2. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    2,609
  3. The Future of Software Engineer - AI Engineering
    924
  4. Why ROLLBACK is useful when you work with Google Gemini CLI?
    828
  5. Gemini CLI makes a Magic! Time to speed up your app development with Google Gemini CLI!
    963
  6. Common Naming Format in Software Development
    2,543
  7. Types of Memory and Storage
    7,417
  8. How to access websites blocked by ESNI and ECH settings with Firefox!
    10,264
  9. Block unwanted URLs for comfortable web browsing with Chrome Addon - URL Blocker
    7,588
  10. Modern Web Indexing Technology - IndexNow
    7,399
  11. Key Differences in Gen Z/Alpha/Zalpha based on Upbringing and Life Experiences
    8,133
  12. Zalpha: A Global Trend, Not Just a Distant Concept
    7,722
  13. Zalpha Generation: A New Term for the Children of Gen Z and Millennials
    7,774
  14. The Generation Corona (+ Gen Z) is grappling with how to communicate and live alongside Gen Alpha
    8,063
  15. Starship, Super Heavy, Successful Ground Landing
    7,609
  16. Understanding the Key Differences Between GIS and LBS: Purpose, Technology, and Applications
    7,301
  17. The Evolution and Applications of Geographic Information Systems: From Thematic Mapping to Efficient Data Analysis and Management
    7,213
  18. Japan's Current Status on Generative AI and Copyright: A Summary of Developments, Current Situation, and Key Issues
    7,811
  19. Quantum computer and qubit generation method
    7,280
  20. Why Two Path Authentication is Essential - My Microsoft Account is Gone!
    8,338
  21. The UN Pushes for Global AI Standards
    7,202
  22. Global Robot Market Outlook
    9,549
  23. Global Electronic Medicine Trends and Market Outlook 
    9,224
  24. Big Tech's AI Investments and RE100
    7,151
  25. Amazon's Return-to-Office Mandate: A Bold Move or a Step Backwards?
    10,446
  26. The Federal Reserve: The Money-Printing King
    9,644
  27. Green Premium, Eco-Certified Building
    8,759
  28. Europe is retreating from Carbon Neutrality.
    7,436
  29. Lack of Public Incinerators in Korea
    7,596
  30. The Biden administration announces $62 million in support of the growing hydrogen industry in the United States
    8,621
Recently updated
  1. Michael Jackson's Billie Jean
    72
  2. Bootstrap vs. Tailwind CSS: Origins, Features, Pros & Cons, and How to Choose the Right Framework
    122
  3. The Complete Guide to Golang: History, Features, Real-World Uses, and Code Examples
    341
  4. Telemetry vs. Analytics: Understanding the Difference and Why It Matters
    213
  5. The Evolution and Production Reality of Agentic AI
    199
  6. How to Activate or Waive Your UIUC Student Health Insurance
    283
  7. Complete Guide to Building a Machine Learning Model
    316
  8. My life cuts at Las Vegas during Thanksgiving day holiday
    7,397
  9. The Cybercab Transformation: From Autonomous Taxi to Mobile Base Station
    343
  10. Harness vs. OpenClaw: Two Very Different "Agents"
    962
  11. Clean Python Environments: The Power of venv vs. Docker
    813
  12. What is Docker? Why is Docker also useful in a development environment?
    610
  13. UIUC 2026-2027 Academic Calendar
    1,565
  14. How to Build Llama 3 AI Apps with Python: Setup & User Prompts
    802
  15. Open-Source LLMs: The AI Revolution
    748
  16. Resume 2.0: Leveling Up for My First Software Gig
    2,194
  17. Not everyone will understand what this man just did
    1,826
  18. UIUC Dorm Guide: Find Your Perfect Fit !!
    1,580
  19. Unpacking IU's Shopper
    751
  20. Jackie Chan's Police Story: The Action Masterpiece
    650
  21. The IVE Story: Identity, 'I AM' Charts, and Influence
    949
  22. Tech Visionaries who graduated at UIUC - You are the Next Turn
    1,184
  23. Open Databases for Sex Crime Occurrences in the U.S.
    711
  24. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    2,609
  25. My First Day at University of Illinois-Urvana Champaign
    1,183
  26. Sand, Sea, and a Splash of Fun at Newport Beach: A Family Adventure
    8,119
  27. Sun, Rocks, and Adventure: A Day at Joshua Tree National Park
    8,198
  28. Sipping the Stars: My Starbucks Adventure
    9,631
  29. Exciting explore at Sequoia National Park
    7,649
  30. My Life Shot at Death Valley
    1,692
  31. Ip Man fights with Muay Thai Master
    931
  32. Mad Clown - Don't Die
    1,009
  33. How to get Student Enrollment and Degree Verification at UIUC
    4,834
  34. LAX Thanksgiving Rush: A Joyful Reunion
    918
  35. ZO ZAZZ(조째즈) - Don`t you know (모르시나요) (PROD.ROCOBERRY)
    1,117
  36. FISHINGIRLS Unleashes Energetic EP 'Funiverse' Featuring Signature Track 'Fishing King'
    970
  37. 10CM - To Reach You (너에게 닿기를)
    1,151
  38. Feeling weak? Transform yourself at the UIUC ARC!
    1,569
  39. BOYNEXTDOOR - If I Say I Love You
    1,181
  40. The Future of Software Engineer - AI Engineering
    924
  41. G Dragon x Taeyang (Eyes Nose Lips, Power, Home Sweet Home, GOOD BOY) - LE GALA PIÈCES JAUNES 2025
    900
  42. Lie - Legend song by BIGBANG
    7,809
  43. Why ROLLBACK is useful when you work with Google Gemini CLI?
    828
  44. Reimbursement after Vaccination at McKinley Health Center
    1,012
  45. Gemini CLI makes a Magic! Time to speed up your app development with Google Gemini CLI!
    963
  46. Common Questions from UIUC school life in terms of CS Program
    1,114
  47. UIUC Immunization Compliance
    1,206
  48. LEE CHANHYUK's songs really resonate with my soul - Time Stop! Vivid LaLa Love, Eve, Endangered Love ...
    1,086
  49. LEE CHANHYUK - Endangered Love (멸종위기사랑)
    1,090
  50. Cupid (OT4/Twin Ver.) - LIVE IN STUDIO | FIFTY FIFTY (피프티피프티)
    864