Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
fastjson-tp1fn1 — ein auf CVE-2022-25845 basierendes Szenario, das einen TP für metadatenbasierte SCA liefert, aber einen FN, wenn der Callgraph verwendet wird | Kitploit
Tools/GitHubGitHub/scabench/fastjson-tp1fn1
Statische AnalyseSchwachstellenanalyseCode-AnalyseLieferkettensicherheitPapers & ForschungLernen & Bildung
GitHubscabench/fastjson-tp1fn1

fastjson-tp1fn1

ein auf CVE-2022-25845 basierendes Szenario, das einen TP für metadatenbasierte SCA liefert, aber einen FN, wenn der Callgraph verwendet wird

Repository anzeigen
3vor 2 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

json.org CVE-2022-45688 True- und False-Positive (WTF ??)

Das Projekt enthält eine fastjson-Abhängigkeit mit CVE-2022-25845.

Die Schwachstelle tritt auf, da Markup in JSON als Java-Beans interpretiert wird, d. h. Klassen werden instanziiert und Eigenschaften werden durch das Ausführen von Setter-Methoden gesetzt. Dies geschieht mithilfe von Reflection. Befindet sich eine Klasse im Klassenpfad, bei der Setter Verhalten wie das Ausführen von Code auslösen können (im Beispiel ist diese Klasse Trigger, der entsprechende Input ist CVE-2022-25845.json), kann dies ausgenutzt werden.

Das Interessante hierbei ist die Verwendung von Reflection, wie der folgende Stacktrace zeigt, der beim Ausführen des enthaltenen Tests zur Demonstration der Schwachstelle entsteht.

root@kitploit:~
setName:11, Trigger
invoke0:-1, NativeMethodAccessorImpl (jdk.internal.reflect)
invoke:62, NativeMethodAccessorImpl (jdk.internal.reflect) [2]
invoke:43, DelegatingMethodAccessorImpl (jdk.internal.reflect)
invoke:566, Method (java.lang.reflect)
setValue:167, FieldDeserializer (com.alibaba.fastjson.parser.deserializer)
deserialze:155, ThrowableDeserializer (com.alibaba.fastjson.parser.deserializer)
parseObject:405, DefaultJSONParser (com.alibaba.fastjson.parser)
parse:1430, DefaultJSONParser (com.alibaba.fastjson.parser)
parse:1390, DefaultJSONParser (com.alibaba.fastjson.parser)
parse:181, JSON (com.alibaba.fastjson)
parse:191, JSON (com.alibaba.fastjson)
parse:147, JSON (com.alibaba.fastjson)
main:18, CheckJSON (scabench)
confirmCVE202225845:39, ConfirmVulnerabilitiesTests (scabench)

Metadaten-basierte Standard-SCA haben keine Probleme, die Schwachstelle zu identifizieren; das ist "business-as-usual". Allerdings werden Callgraph-basierte Tools sie wahrscheinlich übersehen, da Callgraph-Konstruktionen im Allgemeinen keine reflektierenden Aufrufe modellieren können. In diesem Sinne ist dies sowohl ein True Positive als auch ein False Negative, je nachdem, welche Analysen verwendet werden.

Beachten Sie, dass es einen Proof-of-Vulnerability-Test gibt, um die Schwachstelle zu demonstrieren; dieser Test (und damit der Build mit mvn test) schlägt fehl. Siehe https://github.com/scabench/jsonorg-tp1, um zu erfahren, wie der Test funktioniert.

Ausführen von Software-Composition-Analysen

Es gibt mehrere sh-Skripte, um verschiedene Analysen auszuführen; Ergebnisberichte finden Sie in scan-results.

Generieren der SBOM

Die pom.xml enthält ein Plugin, um eine SBOM im CycloneDX-Format zu generieren. Führen Sie dazu mvn cyclonedx:makePackageBom aus. Die SBOM befindet sich in target/ im json- und xml-Format.

Tool herunterladen