HExHTTP – HTTP Header Exploitation Tool
HExHTTP is a tool designed to perform tests on HTTP headers and analyze the results to identify vulnerabilities and interesting behaviors. Features Server Error response checking Localhost header response analysis Vhosts checking Methods response analysis HTTP Version analysis [Experimental] Cache P

HExHTTP is a tool designed to perform tests on HTTP headers and analyze the
results to identify vulnerabilities and interesting behaviors.
Features
- Server Error response checking
- Localhost header response analysis
- Vhosts checking
- Methods response analysis
- HTTP Version analysis [Experimental]
- Cache Poisoning DoS (CPDoS) techniques
- Web cache poisoning
- Range poisoning/error (416 response error) [Experimental]
- Cookie Reflection
- CDN/proxies Analysis (Envoy/Apache/Akamai/Nginx) [IP]
Installation
Python
pip install -r requirements.txt ./hexhttp.py -u 'https://target.tld/' # OR python3 hexhttp.py -u 'https://target.tld/''
Docker
docker build -t hexhttp:latest . docker run --rm -it --net=host -v "$PWD:/hexhttp/" hexhttp:latest -u 'https://target.tld/'
Usage
Usage: hexhttp.py [-h] [-u URL] [-f URL_FILE] [-H CUSTOM_HEADER] [-A USER_AGENT] [-F] [-a AUTH] [-b]
HExHTTP is a tool designed to perform tests on HTTP headers.
options:
-h, --help show this help message and exit
-u URL, --url URL URL to test [required]
-f URL_FILE, --file URL_FILE
File of URLs
-H CUSTOM_HEADER, --header CUSTOM_HEADER
Add a custom HTTP Header
-A USER_AGENT, --user-agent USER_AGENT
Add a custom User Agent
-F, --full Display the full HTTP Header
-a AUTH, --auth AUTH Add an HTTP authentication. Ex: --auth admin:admin
-b, --behavior Activates a simplified version of verbose, highlighting interesting cache behaviors
-hu HUMANS, --humans HUMANS
Performs a timesleep to reproduce human behavior (Default: 0s) value: "r" or "random"
-t THREADS, --threads THREADS
Threads numbers for multiple URLs. Default: 10
-l LOG, --log LOG Set the logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
-L LOG_FILE, --log-file LOG_FILE
The file path pattern for the log file. Default: logs/
-v, --verbose Increase verbosity (can be used multiple times)