漏洞描述
Symfony servers support a "/_fragment" command that allows clients to provide custom PHP commands and return the HTML output.
id: symfony-fragment
info:
name: Symfony _fragment - Detect
author: Palanichamy_perumal,TechbrunchFR
severity: unknown
description: |
Symfony servers support a "/_fragment" command that allows clients to provide custom PHP commands and return the HTML output.
reference:
- https://portswigger.net/daily-swig/symfony-based-websites-open-to-rce-attack-research-finds
- https://medium.com/@m4cddr/how-i-got-rce-in-10-websites-26dd87441f22
- https://al1z4deh.medium.com/how-i-hacked-28-sites-at-once-rce-5458211048d5
- https://github.com/ambionics/symfony-exploits
classification:
cpe: cpe:2.3:a:sensiolabs:symfony:*:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 1
vendor: sensiolabs
product: symfony
shodan-query: http.html:"symfony Profiler"
tags: config,exposure,symfony,misconfig,vuln
http:
- method: GET
path:
- '{{BaseURL}}/_fragment'
matchers-condition: and
matchers:
- type: dsl
dsl:
- "status_code == 403"
- "contains(body, 'Symfony') || contains(body, '403 Forbidden')"
- "(\"8b2f83102bc96e5068d36df80301a64d\" == md5(body)) || (\"4df206fbc337c398c3b669172934c8cb\" == md5(body))"
condition: and
# digest: 4a0a0047304502202398fabf0b8bf626502a869d8a1380c47b2cfb0b9938018af4f9ad4e636f3b650221008b40af4d8db7a76b50956601d5384112d90f9ad5fb7dc0e1ce0fa5371d0f4e56:922c64590222798bb761d5b6d8e72950