CVE-2022-25845 ist eine Sicherheitslücke mit hohem Schweregrad (Wertung 8.1 von 10 auf der Skala CVSS-) in der bekannten Fastjson-Bibliothek, die bei Remote-Code-Execution-Angriffen verwendet werden könnte.
Zum Glück, die Schwachstelle ist bereits gepatcht. Die Schwachstelle ergibt sich aus der Deserialisierung nicht vertrauenswürdiger Daten in der AutoType-Funktion, und wurde von den Projektbetreuern in Version behoben 1.2.83.
CVE-2022-25845 Technische Details
Laut Sicherheitsforscherin Uriya Yavnieli von JFrog, die Schwachstelle „ist immer noch geheimnisumwittert“. Bekannt ist, dass es alle Java-Apps betrifft, die auf Fastjson-Versionen angewiesen sind 1.2.80 oder früher, und Versionen, die benutzergesteuerte Daten entweder an die APIs JSON.parse oder JSON.parseObject übergeben, ohne eine bestimmte Klasse zum Deserialisieren anzugeben.
„Es gibt kaum öffentliche technische Details darüber – wer genau angreifbar ist und unter welchen Bedingungen?,“Die Forscher hinzugefügt.
Laut offizieller Beschreibung, „Fastjson ist eine Java-Bibliothek, mit der Java-Objekte in ihre JSON-Darstellung konvertiert werden können. Es kann auch verwendet werden, um einen JSON-String in ein äquivalentes Java-Objekt zu konvertieren.“ Die Bibliothek kann mit beliebigen Java-Objekten arbeiten, einschließlich bereits vorhandener Objekte, für die Entwickler keinen Quellcode haben.
AutoTyp, die verwundbare Funktion, ist standardmäßig aktiviert. Es gibt einen benutzerdefinierten Typ an, wenn eine JSON-Eingabe analysiert wird, die in ein Objekt der bestimmten Klasse deserialisiert werden kann.
Ein Sicherheitsproblem tritt auf, wenn das deserialisierte JSON benutzergesteuert ist, Analysieren Sie es mit aktiviertem AutoType. Dies kann zu einer Schwachstelle bei Deserialisierung führen, da Bedrohungsakteure „jede Klasse instanziieren können, die auf dem Klassenpfad verfügbar ist, und seinen Konstruktor mit beliebigen Argumenten füttern,” erklärte der Forscher in seinem technische Beschreibung.
Die Projektbesitzer umgingen die Schwachstelle, indem sie einen abgesicherten Modus einführten, der AutoType deaktiviert. Sie haben auch damit begonnen, eine Sperrliste von Klassen zu führen, um sich vor solchen zukünftigen Problemen zu schützen. Jedoch, CVE-2022-25845 umgeht die Beschränkungen und kann eine Remotecodeausführung Angriff.
Fastjson-Benutzer sollten auf Version aktualisieren 1.2.83 oder aktivieren Sie safeMode, um die Funktion zu deaktivieren und Deserialisierungsangriffe zu vermeiden.