open-proxy-portscan: Open Proxy to Ports on the Proxy's localhost Interface

2025-08-01 open-proxy-portscan PoC Public

Description

The host is configured as a proxy which allows access to its internal interface

PoC

id: open-proxy-portscan

info:
  name: Open Proxy to Ports on the Proxy's localhost Interface
  author: sullo,s4e-io
  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,CWE-918
  metadata:
    max-request: 8
  tags: exposure,config,proxy,misconfig,fuzz,vuln

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)<html",body_3))
          - (!regex("(?i)SSH-[.]+-+",body_1)) && (!regex("(?i)SSH-[.]+-+",body_2)) && (regex("(?i)SSH-[.]+-+",body_4)) && (!regex("(?i)<html",body_4))
          - (!regex("(?i)POP3",body_1)) && (!regex("(?i)POP3",body_2)) && (regex("(?i)POP3",body_6)) && (!regex("(?i)<html",body_6))
          - (!regex("(?i)SMTP",body_1)) && (!regex("(?i)SMTP",body_2)) && ((regex("(?i)SMTP",body_5) && !regex("(?i)<html",body_5)) || (regex("(?i)SMTP",body_7) && !regex("(?i)<html",body_7)) || (regex("(?i)SMTP",body_8) && !regex("(?i)<html",body_8)))
# digest: 4b0a00483046022100969b285018b68ce344467fb127bbf087d1d2ce001fe6d3db966ba33066f221e8022100f7f72cd23e2601c799773880806c38175f32517c150777d0d1c98d772a2fa24f:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

References

Related Vulnerabilities