Skip to content

Collecter des exécutables suspects en toute sécurité

Repérer et copier les EXE, DLL et SYS suspects d'un hôte ou d'une image Windows sans les exécuter : PowerShell, Velociraptor, images disque, pièges.

Publié le 3 min de lecture

En bref. Partez des traces d'exécution pour savoir quels binaires comptent, copiez-les avec leurs chemins (une copie ne les exécute jamais), empêchez l'antivirus de les supprimer, et n'analysez que des copies. Le PE Parser accepte le résultat tel quel — fichiers isolés, dossier ou ZIP.

Étape 1 : Partir des traces d'exécution

Un disque contient des dizaines de milliers d'exécutables. Les artefacts indiquent lesquels comptent : Prefetch et Amcache nomment les programmes qui se sont exécutés, ShimCache et BAM ajoutent des chemins et des horodatages, et les services, les tâches planifiées et les clés Run nomment ce qui persiste. Les dossiers accessibles en écriture aux utilisateurs — C:\ProgramData, %AppData%, %Temp%, Downloads, C:\Users\Public — sont ceux où se trouvent habituellement les outils déposés. Dans le cas fictif FIN-WKS-07 utilisé pour nos échantillons, cela désigne C:\ProgramData\Intel\m64.exe et le dossier tools dans les Téléchargements de svc_backup.

Étape 2 : Les copier sans les exécuter

Lire un fichier ne l'exécute pas. Sur un système en fonctionnement, depuis Windows PowerShell lancé en tant qu'administrateur, ce script copie les exécutables modifiés au cours des 14 derniers jours sous les racines habituelles, en conservant leurs chemins :

$dst = 'C:\triage\pe'
$roots = 'C:\ProgramData', 'C:\Users', 'C:\Windows\Temp'
Get-ChildItem -Path $roots -Recurse -Force -File -Include *.exe, *.dll, *.sys, *.scr, *.cpl, *.ocx -ErrorAction SilentlyContinue |
  Where-Object { $_.LastWriteTime -gt (Get-Date).AddDays(-14) -and $_.Length -lt 200MB } |
  ForEach-Object {
    $to = Join-Path $dst $_.FullName.Substring(3)
    New-Item -ItemType Directory -Force -Path (Split-Path $to) | Out-Null
    Copy-Item -LiteralPath $_.FullName -Destination $to -Force
  }

Adaptez les racines et le nombre de jours. Les dates de dernière modification peuvent être falsifiées : copiez donc aussi les chemins exacts trouvés à l'étape 1.

Velociraptor collecte les binaires associés aux processus en cours, aux services, aux tâches planifiées, aux entrées Prefetch et aux cibles de raccourcis grâce au groupe _Live de Windows.Triage.Targets (Velociraptor triage artifacts). Par défaut, il ignore les exécutables signés (CollectionPolicy=ExcludeSigned) :

velociraptor.exe artifacts collect Windows.Triage.Targets --args HighLevelTargets=[\"_Live\"] --output C:\triage\pe.zip

Pour collecter plutôt selon un motif de chemin, Windows.Search.FileFinder avec SearchFilesGlob et Upload_File=Y récupère chaque correspondance.

Les targets KAPE collectent des artefacts (registre, journaux, Prefetch), pas des binaires quelconques ; utilisez-les pour les traces de l'étape 1 et l'une des méthodes ci-dessus pour les fichiers.

Depuis une image disque montée en lecture seule sur E:, robocopy copie par extension et par ancienneté en conservant l'arborescence :

robocopy E:\ProgramData C:\triage\pe\ProgramData *.exe *.dll *.sys *.scr /S /XJ /B /R:0 /W:0 /NP /NDL /MAXAGE:30

Vérifiez aussi les clichés instantanés de volume (volume shadow copies) de l'image : un binaire supprimé après l'attaque peut encore s'y trouver.

Étape 3 : Protéger les copies

  • L'antivirus peut supprimer ou mettre en quarantaine les échantillons pendant la copie. Ajoutez une exclusion pour la destination ou travaillez à partir d'une image.
  • Calculez l'empreinte de tous les fichiers avant l'analyse et consignez les chemins d'origine.
  • Empaquetez avec le tar.exe intégré à Windows 10 1803 et versions ultérieures : tar -a -c -f C:\triage\pe.zip -C C:\triage pe. Les ZIP protégés par mot de passe sont la norme pour partager des échantillons, mais le navigateur ne peut pas les ouvrir : extrayez-les avant de les déposer.

Étape 4 : Analyser en statique

Déposez le dossier ou le ZIP dans le PE Parser. Les fichiers sont reconnus à leur en-tête MZ, si bien que les charges utiles renommées sont détectées ; les fichiers sans rapport sont comptés puis ignorés. Le tableau du lot regroupe les builds par imphash, et chaque fichier bénéficie d'empreintes, de contrôles de signature et d'indicateurs. Lisez ensuite le guide du format PE pour comprendre ce que montre chaque vue.

FAQ

Est-il sans danger de copier un exécutable malveillant en cours d'exécution ?

La copie lit le fichier ; elle ne l'exécute pas. N'ouvrez jamais la copie et ne double-cliquez jamais dessus, conservez-la sur un système d'analyse, et attendez-vous à ce que l'antivirus la mette en quarantaine si la destination n'est pas exclue.

KAPE collecte-t-il les exécutables ?

Les targets KAPE sont conçues pour collecter des artefacts forensiques comme les ruches du registre, les journaux et Prefetch, pas des binaires quelconques. Utilisez une copie scriptée, Velociraptor, ou pointez KAPE vers un dossier précis que vous avez déjà identifié.

Articles liés

Triage statique pas à pas d'exécutables Windows avec PE Parser, gratuit : charger des fichiers ou un ZIP, lire les indicateurs, comparer, exporter.
Ce qui compte dans un fichier PE Windows pour trier un EXE, une DLL ou un pilote suspect : en-têtes, sections, imports, ressources, signature, overlay.
Signes statiques d'un exécutable Windows packé ou protégé — noms de sections, entropie, sections W+X, point d'entrée, imports, overlay — et leurs pièges.