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
Aladdin — Génère des charges utiles d'accès initial abusant d'AddInProcess.exe via la désérialisation .NET, prenant en charge les modèles HTA, VBA, JS et CHM pour l'exécution de code en mémoire. | Kitploit
Outils/GitHubGitHub/nettitude/aladdin
Génération de PayloadsExploitationRed TeamingDéveloppement de Charges Utiles
GitHubnettitude/aladdin

Aladdin

Génère des charges utiles d'accès initial abusant d'AddInProcess.exe via la désérialisation .NET, prenant en charge les modèles HTA, VBA, JS et CHM pour l'exécution de code en mémoire.

Voir le dépôt
22420il y a 2 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

Aladdin

root@kitploit:~
           .-.
          [.-''-.,
          |  //`~\)
          (<| 0\0|>_
          ";\  _"/ \\_ _,
         __\|'._/_  \ '='-,
        /\ \    || )_///_\>>
       (  '._ T |\ | _/),-'
        '.   '._.-' /'/ |
        | '._   _.'`-.._/
        ,\ / '-' |/
        [_/\-----j
   _.--.__[_.--'_\__
  /         `--'    '---._
 /  '---.  -'. .'  _.--   '.
 \_      '--.___ _;.-o     /
   '.__ ___/______.__8----'
     c-'----'
  Lefty @lefterispan - Nettitude Red Team - 2022 / 2023 

À propos

Aladdin est une technique de génération de payloads basée sur les travaux de James Forshaw (@tiraniddo), permettant la désérialisation d'un payload .NET et son exécution en mémoire. Le vecteur original a été documenté sur https://www.tiraniddo.dev/2017/07/dg-on-windows-10-s-executing-arbitrary.html.

En démarrant le processus AddInProcess.exe avec les arguments /guid:32a91b0f-30cd-4c75-be79-ccbd6345de99 et /pid:, le processus ouvrira un pipe nommé sous \\.\pipe\32a91b0f-30cd-4c75-be79-ccbd6345de99 et attendra un objet .NET Remoting. Si nous générons un payload qui possède les octets d'en-tête appropriés pour communiquer avec un écouteur .NET Remoting, nous pourrons déclencher la classe ActivitySurrogateSelector de System.Workflow.ComponentModel. et obtenir l'exécution de code.

Initialement, James Forshaw a publié une POC à l'adresse https://github.com/tyranid/DeviceGuardBypasses/tree/master/CreateAddInIpcData. Cependant, cette POC échoue sur les versions récentes de Windows car Microsoft a corrigé le composant vulnérable System.Workflow.ComponentModel (https://github.com/microsoft/dotnet-framework-early-access/blob/master/release-notes/NET48/dotnet-48-changes.md).

Nick Landers (@monoxgas) a cependant identifié un moyen de contourner le correctif introduit par Microsoft et a rédigé un article détaillé sur https://www.netspi.com/blog/technical/adversary-simulation/re-animating-activitysurrogateselector/ . Le contournement est documenté sur https://github.com/pwntester/ysoserial.net/pull/41 .

Aladdin est un outil de génération de payloads qui, en utilisant le contournement spécifique ainsi que les octets d'en-tête nécessaires du protocole .NET Remoting, est capable de générer des payloads d'accès initial qui abusent du AddInProcess comme documenté à l'origine.

Les templates fournis sont :

root@kitploit:~
* HTA

* VBA

* JS

* CHM

Remarques

Pour que l'attaque réussisse, l'assembly .NET doit contenir une seule classe publique avec un constructeur vide pour servir de point d'entrée lors de la désérialisation. Un exemple d'assembly a été inclus dans le projet.

root@kitploit:~
public class EntryPoint {
    public EntryPoint() {
        MessageBox.Show("Hello");
    }
}

Utilisation

root@kitploit:~
Usage:
  -w, --scriptType=VALUE     Définir sur js / hta / vba / chm.

  -o, --output=VALUE         Le fichier de sortie généré, ex : -o
                               C:\Users\Nettitude\Desktop\payload

  -a, --assembly=VALUE       DLL d'assembly fournie, ex : -a
                               C:\Users\Nettitude\Desktop\popcalc.dll

  -h, --help                 Aide

OpSec

  • Le binaire .NET fourni par l'utilisateur sera exécuté sous le processus AddInProcess.exe qui est démarré à partir du payload HTA / JS. Le lancement des processus se fait actuellement via l'objet COM 9BA05972-F6A8-11CF-A442-00A0C90A8F39 (https://dl.packetstormsecurity.net/papers/general/abusing-objects.pdf), ce qui lancera le processus en tant qu'enfant du processus Explorer.exe.

  • Le GUID fourni dans les paramètres de processus de AddInProcess.exe peut être contrôlé par l'utilisateur. Pour le moment, le GUID est codé en dur dans le template et le code.

  • CHM exécute le JScript via une transformation XSLT.

Considérations défensives

  • Addinprocess.exe sera toujours lancé avec /guid et /pid. Établissez une référence de votre environnement pour les utilisations légitimes et surveillez le reste.

Références utiles :

root@kitploit:~
* https://www.tiraniddo.dev/2017/07/dg-on-windows-10-s-executing-arbitrary.html

* https://www.netspi.com/blog/technical/adversary-simulation/re-animating-activitysurrogateselector/

Readme / Crédits

Le code est basé sur les dépôts suivants :

root@kitploit:~
* https://github.com/tyranid/DeviceGuardBypasses/tree/master/CreateAddInIpcData

* https://github.com/pwntester/ysoserial.net

Remerciements à :

  • @m0rv4i pour son aide sur les nuances du C#
  • @ace0fspad3s pour le débogage
  • @ Nettitude RT pour être génial
Télécharger l’outil