id: open-proxy-portscan info: name: Open Proxy to Ports on the Proxy's localhost Interface author: sullo severity: high description: The host is configured as a proxy which allows access to its internal interface remediation: Disable the proxy or restrict configuration to only allow access to approved hosts/ports. reference: - https://blog.projectdiscovery.io/abusing-reverse-proxies-internal-access/ - https://en.wikipedia.org/wiki/Open_proxy - https://www.acunetix.com/vulnerabilities/web/apache-configured-to-run-as-proxy/ classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N cvss-score: 8.6 cwe-id: CWE-441 metadata: max-request: 8 tags: exposure,config,proxy,misconfig,fuzz http: - raw: - |+ GET / HTTP/1.1 Host: {{Hostname}} - |+ GET http://somethingelsethatdoesnotexist/ HTTP/1.1 Host: somethingelsethatdoesnotexist - |+ GET http://127.0.0.1:21 HTTP/1.1 Host: 127.0.0.1 - |+ GET http://127.0.0.1:22 HTTP/1.1 Host: 127.0.0.1 - |+ GET http://127.0.0.1:25 HTTP/1.1 Host: 127.0.0.1 - |+ GET http://127.0.0.1:110 HTTP/1.1 Host: 127.0.0.1 - |+ GET http://127.0.0.1:587 HTTP/1.1 Host: 127.0.0.1 - |+ GET https://127.0.0.1:587 HTTP/1.1 Host: 127.0.0.1 unsafe: true matchers: - type: dsl condition: or dsl: - (!regex("(?i)FTP",body_1)) && (!regex("(?i)FTP",body_2)) && (regex("(?i)FTP",body_3)) - (!regex("(?i)SSH-[.]+-+",body_1)) && (!regex("(?i)SSH-[.]+-+",body_2)) && (regex("(?i)SSH-[.]+-+",body_4)) - (!regex("(?i)POP3",body_1)) && (!regex("(?i)POP3",body_2)) && (regex("(?i)POP3",body_6)) - (!regex("(?i)SMTP",body_1)) && (!regex("(?i)SMTP",body_2)) && ((regex("(?i)SMTP",body_5)) || (regex("(?i)SMTP",body_7)) || (regex("(?i)SMTP",body_8))) # digest: 4a0a00473045022100ea2fb3ebd78e1c5f154da5c2752dc9b4c3072b6969bbd2eb1e471d806a1e587502205b65830d95619ed72f037ad2ab405b591674b9feb52e35a4d44a6cb84db66ddb:922c64590222798bb761d5b6d8e72950