Skip to main content

HTTP/2 Single Packet Attack low level library based on Scapy

Project description

Scapy   H2SpaceX

pypi: 0.1.14 Python: 3.10 License: GPL v3

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


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 details)

Uploaded Source

Built Distribution

h2spacex-0.1.15-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file h2spacex-0.1.15.tar.gz.

File metadata

  • Download URL: h2spacex-0.1.15.tar.gz
  • Upload date:
  • Size: 23.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for h2spacex-0.1.15.tar.gz
Algorithm Hash digest
SHA256 c6879599df2e768d43f4acfaebb3823516c290efc56448f0c469aceebff8778b
MD5 3bc8cf2b08a441ef99e5cc5bfe89b55e
BLAKE2b-256 e0a03d2659e81bb1a4ef88973b2026f77d2192c288df1a9571caa648808314ea

See more details on using hashes here.

File details

Details for the file h2spacex-0.1.15-py3-none-any.whl.

File metadata

  • Download URL: h2spacex-0.1.15-py3-none-any.whl
  • Upload date:
  • Size: 22.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for h2spacex-0.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 9bc42146953836d05eaeaca655de0348781f597662aaa1b95491b5ffcb925922
MD5 49c9aeaaab9b02d8113a309948be3dcc
BLAKE2b-256 32ce46e92a757ccff7a3caece926b09d314bdae83c87d58ba060c34a45f3f875

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page