Web server.zip





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

JK 2010 
Created at
Updated at  
10,283 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.
    688
  2. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    2,549
  3. The Future of Software Engineer - AI Engineering
    915
  4. Why ROLLBACK is useful when you work with Google Gemini CLI?
    811
  5. Gemini CLI makes a Magic! Time to speed up your app development with Google Gemini CLI!
    942
  6. Common Naming Format in Software Development
    2,507
  7. Types of Memory and Storage
    7,405
  8. How to access websites blocked by ESNI and ECH settings with Firefox!
    10,208
  9. Block unwanted URLs for comfortable web browsing with Chrome Addon - URL Blocker
    7,577
  10. Modern Web Indexing Technology - IndexNow
    7,392
  11. Key Differences in Gen Z/Alpha/Zalpha based on Upbringing and Life Experiences
    8,114
  12. Zalpha: A Global Trend, Not Just a Distant Concept
    7,706
  13. Zalpha Generation: A New Term for the Children of Gen Z and Millennials
    7,763
  14. The Generation Corona (+ Gen Z) is grappling with how to communicate and live alongside Gen Alpha
    8,041
  15. Starship, Super Heavy, Successful Ground Landing
    7,586
  16. Understanding the Key Differences Between GIS and LBS: Purpose, Technology, and Applications
    7,282
  17. The Evolution and Applications of Geographic Information Systems: From Thematic Mapping to Efficient Data Analysis and Management
    7,198
  18. Japan's Current Status on Generative AI and Copyright: A Summary of Developments, Current Situation, and Key Issues
    7,789
  19. Quantum computer and qubit generation method
    7,258
  20. Why Two Path Authentication is Essential - My Microsoft Account is Gone!
    8,285
  21. The UN Pushes for Global AI Standards
    7,186
  22. Global Robot Market Outlook
    9,493
  23. Global Electronic Medicine Trends and Market Outlook 
    9,170
  24. Big Tech's AI Investments and RE100
    7,142
  25. Amazon's Return-to-Office Mandate: A Bold Move or a Step Backwards?
    10,370
  26. The Federal Reserve: The Money-Printing King
    9,582
  27. Green Premium, Eco-Certified Building
    8,726
  28. Europe is retreating from Carbon Neutrality.
    7,404
  29. Lack of Public Incinerators in Korea
    7,579
  30. The Biden administration announces $62 million in support of the growing hydrogen industry in the United States
    8,576
Recently updated
  1. Bootstrap vs. Tailwind CSS: Origins, Features, Pros & Cons, and How to Choose the Right Framework
    88
  2. The Complete Guide to Golang: History, Features, Real-World Uses, and Code Examples
    225
  3. Telemetry vs. Analytics: Understanding the Difference and Why It Matters
    184
  4. The Evolution and Production Reality of Agentic AI
    174
  5. How to Activate or Waive Your UIUC Student Health Insurance
    253
  6. Complete Guide to Building a Machine Learning Model
    296
  7. My life cuts at Las Vegas during Thanksgiving day holiday
    7,376
  8. The Cybercab Transformation: From Autonomous Taxi to Mobile Base Station
    320
  9. Harness vs. OpenClaw: Two Very Different "Agents"
    918
  10. Clean Python Environments: The Power of venv vs. Docker
    786
  11. What is Docker? Why is Docker also useful in a development environment?
    591
  12. UIUC 2026-2027 Academic Calendar
    1,506
  13. How to Build Llama 3 AI Apps with Python: Setup & User Prompts
    772
  14. Open-Source LLMs: The AI Revolution
    726
  15. Resume 2.0: Leveling Up for My First Software Gig
    2,116
  16. Not everyone will understand what this man just did
    1,751
  17. UIUC Dorm Guide: Find Your Perfect Fit !!
    1,555
  18. Unpacking IU's Shopper
    719
  19. Jackie Chan's Police Story: The Action Masterpiece
    616
  20. The IVE Story: Identity, 'I AM' Charts, and Influence
    920
  21. Tech Visionaries who graduated at UIUC - You are the Next Turn
    1,154
  22. Open Databases for Sex Crime Occurrences in the U.S.
    688
  23. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    2,549
  24. My First Day at University of Illinois-Urvana Champaign
    1,161
  25. Sand, Sea, and a Splash of Fun at Newport Beach: A Family Adventure
    8,094
  26. Sun, Rocks, and Adventure: A Day at Joshua Tree National Park
    8,171
  27. Sipping the Stars: My Starbucks Adventure
    9,595
  28. Exciting explore at Sequoia National Park
    7,624
  29. My Life Shot at Death Valley
    1,649
  30. Ip Man fights with Muay Thai Master
    911
  31. Mad Clown - Don't Die
    983
  32. How to get Student Enrollment and Degree Verification at UIUC
    4,695
  33. LAX Thanksgiving Rush: A Joyful Reunion
    901
  34. ZO ZAZZ(조째즈) - Don`t you know (모르시나요) (PROD.ROCOBERRY)
    1,088
  35. FISHINGIRLS Unleashes Energetic EP 'Funiverse' Featuring Signature Track 'Fishing King'
    952
  36. 10CM - To Reach You (너에게 닿기를)
    1,134
  37. Feeling weak? Transform yourself at the UIUC ARC!
    1,552
  38. BOYNEXTDOOR - If I Say I Love You
    1,163
  39. The Future of Software Engineer - AI Engineering
    915
  40. G Dragon x Taeyang (Eyes Nose Lips, Power, Home Sweet Home, GOOD BOY) - LE GALA PIÈCES JAUNES 2025
    886
  41. Lie - Legend song by BIGBANG
    7,792
  42. Why ROLLBACK is useful when you work with Google Gemini CLI?
    811
  43. Reimbursement after Vaccination at McKinley Health Center
    986
  44. Gemini CLI makes a Magic! Time to speed up your app development with Google Gemini CLI!
    942
  45. Common Questions from UIUC school life in terms of CS Program
    1,085
  46. UIUC Immunization Compliance
    1,177
  47. LEE CHANHYUK's songs really resonate with my soul - Time Stop! Vivid LaLa Love, Eve, Endangered Love ...
    1,071
  48. LEE CHANHYUK - Endangered Love (멸종위기사랑)
    1,072
  49. Cupid (OT4/Twin Ver.) - LIVE IN STUDIO | FIFTY FIFTY (피프티피프티)
    848
  50. Common methods to improve coding skills
    969