PowerShell est une interface en ligne de commande ultra-puissante conçue pour l’automatisation et l’administration système sous Windows. Bien plus avancé que CMD, il permet d’interagir avec l’OS, les API Windows, et même de contourner certaines protections. Les hackers éthiques l’utilisent pour l’espionnage discret, l’élévation de privilèges, et l'automatisation des attaques. Pourquoi PowerShell est l’allié des hackers ? • Déjà intégré dans la plupart des versions Windows • Capable d’exécuter des scripts complexes • Peut interagir directement avec les composants .NET et Windows API • Contourne souvent les antivirus traditionnels C’est une boîte à outils redoutable pour toute opération d’infiltration ou d’audit avancé. Premiers pas avec PowerShell Lancer PowerShell : • Touche Windows + X → Choisir “Windows PowerShell” • Ou chercher “PowerShell” dans le menu Démarrer • Clique droit → Exécuter en tant qu’administrateur pour des privilèges élevés Commandes utiles : • `Get-Help` → Aide sur une commande • `Get-ChildItem` → Liste fichiers/répertoires • `Set-Location` → Change de dossier • `Copy-Item`, `Remove-Item` → Gérer les fichiers • `Get-ComputerInfo` → Détails complets du système Astuce 7 : Espionnage discret avec PowerShell Tu peux collecter de nombreuses infos système sans alerter les antivirus. Étapes : 1. Liste les logiciels installés :Code:Get-WmiObject -Class Win32_Product | Select-Object Name, Version2. Visualise les connexions réseau actives :Code:Get-NetTCPConnection | Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State3. Liste tous les comptes utilisateurs :Code:Get-LocalUser | Select-Object Name, Enabled4. Exporte les infos pour analyse :Code:Get-LocalUser | Out-File -FilePath .\users.txt Astuce 8 : Élévation de privilèges PowerShell permet aussi de repérer des failles d’escalade de privilèges. Étapes : 1. Vérifie les privilèges de l’utilisateur :Code:whoami /priv2. Recherche des services vulnérables :Code:Get-WmiObject -Class Win32_Service | Where-Object { $.StartName -eq “LocalSystem” -and $.State -eq “Running” }3. Crée un faux service malveillant :Code:New-Service -Name “ExploitService” -BinaryPathName “C:\malicious.exe” -Credential (Get-Credential) -DisplayName “ExploitService” -StartupType Automatic4. Lance le service pour exécuter ton script avec les droits système :Code:Restart-Service -Name “ExploitService” Aller plus loin avec PowerShell Créer un script PowerShell : 1. Ouvre le Bloc-notes, écris :Code:Get-ChildItem -Recurse | Out-File -FilePath .\filelist.txt2. Sauvegarde en `.ps1` (ex: scan.ps1) 3. Lance avec :Code:powershell.exe -ExecutionPolicy Bypass -File .\scan.ps1Utiliser des modules : PowerShell peut importer des modules spécialisés : • Importer Active Directory :Code:Import-Module ActiveDirectory• Afficher tous les utilisateurs :Code:Get-ADUser -Filter * Conclusion Tu viens d’apprendre à : • Maîtriser les bases de PowerShell • Réaliser une reconnaissance furtive du système • Exécuter des scripts avec élévation de privilèges • Utiliser des modules avancés pour aller plus loin Dans le prochain chapitre, nous plongerons dans l’architecture de sécurité de Windows pour mieux comprendre comment les hackers la contournent.