Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
freddy — Identifier automatiquement les problèmes de désérialisation dans les applications Java et .NET en utilisant des scans actifs et passifs | Kitploit
Outils/GitHubGitHub/nccgroup/freddy
Scanners de VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebTests d'Intrusion
GitHubnccgroup/freddy

freddy

Identifier automatiquement les problèmes de désérialisation dans les applications Java et .NET en utilisant des scans actifs et passifs

Voir le dépôt
582100il y a 4 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

Freddy le tueur de sérialisation - Détecteur de bugs de désérialisation

Une extension Burp Suite pour aider à détecter et exploiter les bibliothèques/API de sérialisation.

Cette extension utile a été développée à l'origine par Nick Bloor (@nickstadb) pour NCC Group et est principalement basée sur les travaux d'Alvaro Muñoz et Oleksandr Mirosh, Friday the 13th: JSON Attacks, présentés à Black Hat USA 2017 et DEF CON 25. Dans leurs travaux, ils ont passé en revue une gamme de bibliothèques de sérialisation JSON et XML pour Java et .NET et ont découvert que beaucoup d'entre elles supportent la sérialisation d'objets runtime arbitraires, ce qui les rend vulnérables de la même manière que de nombreuses technologies de sérialisation - des fragments de code (gadgets POP) qui s'exécutent pendant ou peu après la désérialisation peuvent être contrôlés via les propriétés des objets sérialisés, ouvrant souvent la voie à une exécution de code ou de commandes arbitraire.

D'autres modules supportant plus de formats, dont YAML et AMF, sont également inclus, basés sur l'article Java Unmarshaller Security - Turning your data into code execution et l'outil marshalsec par Moritz Bechler.

Cette extension Burp Suite implémente à la fois le scan passif et actif pour identifier et exploiter les bibliothèques vulnérables.

Fonctionnalités de Freddy

Scan Passif

Freddy peut détecter passivement l'utilisation de bibliothèques et API de sérialisation potentiellement dangereuses en surveillant les spécificateurs de type ou d'autres signatures dans les requêtes HTTP et en surveillant les réponses HTTP pour les exceptions émises par les bibliothèques cibles. Par exemple, la bibliothèque FastJson utilise un champ JSON $types pour spécifier le type de l'objet sérialisé.

Scan Actif

Freddy inclut une fonctionnalité de scan actif qui tente à la fois de détecter et, lorsque c'est possible, d'exploiter les bibliothèques affectées.

Le scan actif tente de détecter l'utilisation de bibliothèques vulnérables via trois méthodes : basée sur les exceptions, basée sur le temps, et basée sur Collaborator.

Basée sur les exceptions

Dans le scan actif basé sur les exceptions, Freddy insère des données dans la requête HTTP qui devraient déclencher une exception ou un message d'erreur spécifique à la cible. Si ce message d'erreur est observé dans la réponse de l'application, un problème est signalé.

Basée sur le temps

Dans certains cas, des charges utiles basées sur le temps peuvent être utilisées pour la détection car l'exécution de commandes du système d'exploitation est déclenchée lors de la désérialisation et cette action bloque l'exécution jusqu'à ce que la commande OS soit terminée. Freddy utilise des charges utiles contenant ping [-n|-c] 21 127.0.0.1 afin d'induire un délai temporel dans ces cas.

Basée sur Collaborator

Les charges utiles basées sur Collaborator fonctionnent soit en émettant une commande nslookup pour résoudre le nom de domaine généré par Burp Suite Collaborator, soit en tentant de charger des classes distantes depuis ce nom de domaine dans une application Java. Freddy vérifie les nouveaux problèmes Collaborator toutes les 60 secondes et les marque dans la liste des problèmes avec RCE (Collaborator).

Cibles Supportées

Les cibles suivantes sont actuellement supportées (les italiques sont nouveaux dans v2.0) :

Java

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

.NET

  • BinaryFormatter (détection, RCE)
  • DataContractSerializer (détection, RCE)
  • DataContractJsonSerializer (détection, RCE)
  • FastJson (détection, RCE)
  • FsPickler JSON support (détection)
  • FsPickler XML support (détection)
  • JavascriptSerializer (détection, RCE)
  • Json.Net (détection, RCE)
  • LosFormatter (détection, RCE) - Note : n'est pas un module en soi, supporté via ObjectStateFormatter
  • NetDataContractSerializer (détection, RCE)
  • ObjectStateFormatter (détection, RCE)
  • SoapFormatter (détection, RCE)
  • Sweet.Jayson (détection)
  • XmlSerializer (détection, RCE)

Publié sous licence AGPL-3.0, voir LICENSE pour plus d'informations

Compilation de freddy

Freddy utilise le système de construction gradle. Pour construire le jar, il vous suffit d'exécuter gradle jar à la racine. Cela lancera les tests et, si tout est correct, créera le fichier jar dans le répertoire build/libs.

Télécharger l’outil