
Générateur de charges utiles de désérialisation pour divers formateurs .NET
YSoNet génère des charges utiles de désérialisation .NET pour la recherche de sécurité autorisée, avec un assistant interactif et une ligne de commande pour un travail reproductible.
YSoNet est un fork de ysoserial.net, créé par Alvaro Munoz (@pwntester), et s'appuie sur le travail de ses contributeurs. YSoNet est maintenu par Soroush Dalili (@irsdl).
Téléchargez la dernière version, puis suivez Getting Started pour extraire le ZIP complet et ouvrir l'assistant. Le guide couvre les exigences Windows/runtime, les diagnostics d'installation et les builds de développement.
YSoNet est une collection d'utilitaires et de « chaînes de gadgets » de programmation orientée propriétés pour la recherche sur la désérialisation non sécurisée d'objets .NET. Fournissez l'entrée dont un module a besoin, choisissez un formateur compatible et enregistrez les données générées. L'effet côté cible dépend de la chaîne, du runtime et de l'application ; voir utilisation et exemples et preuves d'exécution.
La vulnérabilité réside dans l'application qui effectue une désérialisation non sécurisée, et NON dans la présence de gadgets sur le classpath. Ce projet est inspiré par le projet ysoserial de Chris Frohoff.
Ne transformez pas le catalogue de gadgets et de plugins de YSoNet en une liste de blocage de désérialisation. Le catalogue ne peut pas inclure toutes les chaînes privées, futures, spécifiques à une application ou composées différemment, donc bloquer ce qui est listé ici ne rend pas un désérialiseur non sécurisé sûr. Cela peut créer une fausse assurance tout en ne faisant que retarder une attaque.
Si vous examinez ce dépôt pour durcir une application, lisez Consignes de sécurité pour les défenseurs et les évaluateurs avant d'inspecter les gadgets ou les plugins. L'objectif est de supprimer la désérialisation non sécurisée ou de passer à une conception à schéma fixe et uniquement basée sur les données. Une liste d'autorisation stricte est un confinement temporaire lorsqu'une migration ne peut pas avoir lieu immédiatement ; une liste de blocage n'est pas une remédiation.
La documentation complète se trouve dans docs/ :
./ysonet.exe -f Json.Net -g ObjectDataProvider -o raw -c "calc" -t
Commencez par la référence rapide. Voir toutes les options avec ysonet.exe --fullhelp, et l'aide par gadget ou par plugin avec -g NameHere -help ou -p NameHere -help. Plus d'informations dans Utilisation et exemples.
Chaque build fournit la compétence d'agent portable à l'emplacement
.claude/skills/ysonet-payloads/ à côté de ysonet.exe. Claude Code découvre cette
compétence de projet lorsqu'il travaille depuis le dossier binaire extrait. D'autres clients
compatibles avec les compétences d'agent peuvent importer le même dossier.