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
freddy — Automatisch Deserialisierungsprobleme in Java- und .NET-Anwendungen durch aktive und passive Scans identifizieren | Kitploit
Tools/GitHubGitHub/nccgroup/freddy
SchwachstellenscannerCode-AnalyseExploitationWebanwendungs-ExploitationPenetrationstests
GitHubnccgroup/freddy

freddy

Automatisch Deserialisierungsprobleme in Java- und .NET-Anwendungen durch aktive und passive Scans identifizieren

Repository anzeigen
582100vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

Freddy der Serial(isation) Killer - Deserialisierungs-Bug-Finder

Eine Burp Suite-Erweiterung zur Erkennung und Ausnutzung von Serialisierungsbibliotheken/APIs.

Diese nützliche Erweiterung wurde ursprünglich von Nick Bloor (@nickstadb) für die NCC Group entwickelt und basiert hauptsächlich auf der Arbeit von Alvaro Muñoz und Oleksandr Mirosh, Friday the 13th: JSON Attacks, die sie auf der Black Hat USA 2017 und der DEF CON 25 vorgestellt haben. In ihrer Arbeit untersuchten sie eine Reihe von JSON- und XML-Serialisierungsbibliotheken für Java und .NET und stellten fest, dass viele von ihnen die Serialisierung beliebiger Laufzeitobjekte unterstützen und daher auf die gleiche Weise anfällig sind wie viele Serialisierungstechnologien – Code-Schnipsel (POP-Gadgets), die während oder kurz nach der Deserialisierung ausgeführt werden, können über die Eigenschaften der serialisierten Objekte gesteuert werden, was oft die Möglichkeit zur Ausführung beliebigen Codes oder von Befehlen eröffnet.

Weitere Module, die mehr Formate wie YAML und AMF unterstützen, sind ebenfalls enthalten, basierend auf dem Paper Java Unmarshaller Security - Turning your data into code execution und dem Tool marshalsec von Moritz Bechler.

Diese Burp Suite-Erweiterung implementiert sowohl passives als auch aktives Scannen, um verwundbare Bibliotheken zu identifizieren und auszunutzen.

Freddy-Funktionen

Passives Scannen

Freddy kann passiv die Verwendung potenziell gefährlicher Serialisierungsbibliotheken und APIs erkennen, indem es auf Typspezifizierer oder andere Signaturen in HTTP-Anfragen achtet und HTTP-Antworten auf Ausnahmen überwacht, die von den Zielbibliotheken ausgelöst werden. Beispielsweise verwendet die Bibliothek FastJson ein JSON-Feld $types, um den Typ des serialisierten Objekts anzugeben.

Aktives Scannen

Freddy enthält eine aktive Scan-Funktionalität, die versucht, betroffene Bibliotheken sowohl zu erkennen als auch, wo möglich, auszunutzen.

Das aktive Scannen versucht, die Verwendung verwundbarer Bibliotheken mit drei Methoden zu erkennen: ausnahmebasiert, zeitbasiert und Collaborator-basiert.

Ausnahmebasiert

Beim ausnahmebasierten aktiven Scannen fügt Freddy Daten in die HTTP-Anfrage ein, die eine bekannte zielspezifische Ausnahme oder Fehlermeldung auslösen sollen. Wenn diese Fehlermeldung in der Antwort der Anwendung beobachtet wird, wird ein Problem gemeldet.

Zeitbasiert

In einigen Fällen können zeitbasierte Payloads zur Erkennung verwendet werden, da während der Deserialisierung die Ausführung von Betriebssystembefehlen ausgelöst wird und diese Aktion die Ausführung blockiert, bis der OS-Befehl abgeschlossen ist. Freddy verwendet Payloads, die ping [-n|-c] 21 127.0.0.1 enthalten, um in diesen Fällen eine Zeitverzögerung zu verursachen.

Collaborator-basiert

Collaborator-basierte Payloads funktionieren entweder durch Ausführen eines nslookup-Befehls, um den von Burp Suite Collaborator generierten Domainnamen aufzulösen, oder durch einen Versuch, entfernte Klassen von diesem Domainnamen in eine Java-Anwendung zu laden. Freddy prüft alle 60 Sekunden auf neue Collaborator-Probleme und markiert sie in der Problemliste mit RCE (Collaborator).

Unterstützte Ziele

Die folgenden Ziele werden derzeit unterstützt (Kursivschrift ist neu in v2.0):

Java

  • BlazeDS AMF 0 (Erkennung, RCE)
  • BlazeDS AMF 3 (Erkennung, RCE)
  • BlazeDS AMF X (Erkennung, RCE)
  • Burlap (Erkennung, RCE)
  • Castor (Erkennung, RCE)
  • FlexJson (Erkennung)
  • Genson (Erkennung)
  • Hessian (Erkennung, RCE)
  • Jackson (Erkennung, RCE)
  • JSON-IO (Erkennung, RCE)
  • JYAML (Erkennung, RCE)
  • Kryo (Erkennung, RCE)
  • Kryo mit StdInstantiatorStrategy (Erkennung, RCE)
  • ObjectInputStream (Erkennung, RCE)
  • Red5 AMF 0 (Erkennung, RCE)
  • Red5 AMF 3 (Erkennung, RCE)
  • SnakeYAML (Erkennung, RCE)
  • XStream (Erkennung, RCE)
  • XmlDecoder (Erkennung, RCE)
  • YAMLBeans (Erkennung, RCE)

.NET

  • BinaryFormatter (Erkennung, RCE)
  • DataContractSerializer (Erkennung, RCE)
  • DataContractJsonSerializer (Erkennung, RCE)
  • FastJson (Erkennung, RCE)
  • FsPickler JSON-Unterstützung (Erkennung)
  • FsPickler XML-Unterstützung (Erkennung)
  • JavascriptSerializer (Erkennung, RCE)
  • Json.Net (Erkennung, RCE)
  • LosFormatter (Erkennung, RCE) – Hinweis: Kein eigenes Modul, wird über ObjectStateFormatter unterstützt
  • NetDataContractSerializer (Erkennung, RCE)
  • ObjectStateFormatter (Erkennung, RCE)
  • SoapFormatter (Erkennung, RCE)
  • Sweet.Jayson (Erkennung)
  • XmlSerializer (Erkennung, RCE)

Veröffentlicht unter AGPL-3.0, siehe LICENSE für weitere Informationen

Freddy erstellen

Freddy verwendet das Gradle-Build-System. Um das Jar zu erstellen, müssen Sie lediglich gradle jar im Stammverzeichnis ausführen. Dies führt die Tests aus und erstellt bei Erfolg die Jar-Datei im Verzeichnis build/libs.

Tool herunterladen