CVE-2026-4800
lodash anfällig für Code-Injection über _.template-Import-Schlüsselnamen
- Veröffentlicht
- 31.03.2026
- Aktualisiert
- 14.09.2026
- CNA zuweisen
- openjs
- Beweise beobachtet
- 25.08.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HNiedrig · nächste 30 Tage
- Perzentil
- 85,5 %
- Modelldatum
- 21.09.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
Auswirkungen: Der Fix für CVE-2021-23337 (https://github.com/advisories/GHSA-35jh-r3h4-6jhm) fügte eine Validierung für die Variable-Option in _.template hinzu, wandte dieselbe Validierung jedoch nicht auf die Schlüsselnamen von options.imports an. Beide Pfade fließen in denselben Function()-Konstruktor-Sink. Wenn eine Anwendung nicht vertrauenswürdige Eingaben als Schlüsselnamen von options.imports übergibt, kann ein Angreifer Default-Parameter-Ausdrücke injizieren, die zur Kompilierungszeit der Vorlage beliebigen Code ausführen. Darüber hinaus verwendet _.template assignInWith zum Zusammenführen von imports, das geerbte Eigenschaften über for..in aufzählt. Wenn Object.prototype durch einen anderen Vektor verschmutzt wurde, werden die verschmutzten Schlüssel in das imports-Objekt kopiert und an Function() übergeben. Patches: Benutzer sollten auf Version 4.18.0 aktualisieren. Workarounds: Übergeben Sie keine nicht vertrauenswürdigen Eingaben als Schlüsselnamen in options.imports. Verwenden Sie ausschließlich entwicklergesteuerte, statische Schlüsselnamen.
Quellen
1Proof-of-concept, das die Remote-Codeausführung in lodash-Templates über Prototype Pollution demonstriert, mit detaillierter Analyse des Angriffsablaufs und der Ausnutzungstechnik.
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.