HTTP/2 Single Packet Attack low level library based on Scapy
Project description
H2SpaceX
HTTP/2 Single Packet Attack (Race Condition) low level library based on Scapy
TODO
- Single Packet Attack - POST &...
- implement
- test functionality on different H2 frameworks
- Single Packet Attack - GET
- implement
- Content-Length: 1 Method
- POST Request with x-override-method: GET header
- test functionality on different H2 frameworks
- Response Parsing
- implement
- implement threaded response parser
- Body Decompression
- gzip
- br
- deflate
- Proxy
- Socks5 Proxy
More Research
Some following statements are just ideas and not testes or implemented.
- More Request in a Single Packet
- Increase MSS (Idea by James Kettle)
- Out of Order TCP Packets (Idea by James Kettle)
- IP Fragmentation
- Proxy the Single Packet Request through SOCKS
- Single Packet Attack on GET Requests
- Content-Length: 1 Method (Idea by James Kettle)
- x-override-method: GET Method (Idea by James Kettle)
- Index HPACK Headers to Make GET Requests Smaller
- HEADERS Frame without END_HEADER Flag
- HEADERS Frame Without Some Pseudo Headers
Installation
H2SpaceX works with Python 3 (preferred: >=3.10)
pip install h2spacex
Quick Start
You can import the HTTP/2 TLS Connection and set up the connection. After setting up the connection, you can do other things:
from h2spacex import H2OnTlsConnection
h2_conn = H2OnTlsConnection(
hostname='http2.github.io',
port_number=443
)
h2_conn.setup_connection()
...
see more examples in Wiki Page
References & Resources
I also got some ideas from a previous developed library h2tinker.
Finally, thanks again to James Kettle for directly helping and pointing some other techniques.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
h2spacex-0.1.15.tar.gz
(23.3 kB
view hashes)
Built Distribution
h2spacex-0.1.15-py3-none-any.whl
(22.8 kB
view hashes)
Close
Hashes for h2spacex-0.1.15-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9bc42146953836d05eaeaca655de0348781f597662aaa1b95491b5ffcb925922 |
|
MD5 | 49c9aeaaab9b02d8113a309948be3dcc |
|
BLAKE2b-256 | 32ce46e92a757ccff7a3caece926b09d314bdae83c87d58ba060c34a45f3f875 |