---
# System prepended metadata

title: PowerShell Empire

---

# PowerShell Empire
 
 PowerShell Empire est un framework de post-exploitation conçu pour les tests d'intrusion et les opérations red team. Il permet d’exploiter des systèmes Windows déjà compromis en utilisant des scripts PowerShell malveillants
 
 **Fonctionnalités Clés :** 
 
✔ **Aucun fichier sur disque (Fileless)** – Exécution en mémoire via PowerShell
✔ **Communication chiffrée (HTTP/HTTPS, DNS)** pour éviter la détection
✔ **Modules intégrés pour :**

- Dumping de mots de passe (Mimikatz intégré)
- Keylogging
- Détection de pare-feu/AV
- Exfiltration de données

---

## 🖥️ Machines Utilisées

### **Attaquant : Kali Linux**
- **IP** : `192.168.141.128`
- **Mode Réseau** : NAT
- **OS** : Kali Linux 2023.3
- **Outils Principaux** :
  - PowerShell Empire
  - MobaXTerm
 
 ### **Cible : PC Portable ASUS**
- **OS** : Windows 11

---

  ## Mise à jour des composants
 ```bash
 sudo apt update && sudo apt upgrade -y
 ```
  ## Installation d'Empire
 ```bash
 sudo apt install powershell-empire -y
 ```
  ## Configuration d'Empire
 ```bash
 sudo powershell-empire setup
 ```
  ## Demarrage d'Empire
 ```bash
 sudo powershell-empire server
 ```
 ![image](https://hackmd.io/_uploads/S1rC_zoWlx.png)
 ### Accès à l'interface web d'Empire en localhost
Connexion avec les identifiants par défaut : 
Username : `empireadmin`
Password : `password123` 
![image](https://hackmd.io/_uploads/By_rKziZgl.png)
 ### Configuration d'un Listener
Le Listener est un composant essentiel qui permet à Empire de recevoir les connexions des machines compromises.

- Il agit comme un serveur de commande et contrôle (C2)
- Gère les communications avec les agents (stagers) déployés sur les cibles
- Supporte différents protocoles (HTTP, HTTPS, DNS, etc.)
![image](https://hackmd.io/_uploads/BkbLqzjbxg.png)
![image](https://hackmd.io/_uploads/BJLrqzoWxx.png)

 ### Configuration d'un Stager

Le Stager est un mini-payload qui permet à une machine compromise d'établir une connexion vers le Listener et de télécharger le véritable agent Empire en mémoire.

- Objectif principal : Charger l’agent PowerShell en mémoire (fileless)
- Taille réduite : Généralement une ligne de commande ou un petit script
- Évite les détections : Pas de fichier écrit sur le disque (sauf dans certains cas)

**Comment ça marche ?**

- L’attaquant génère un stager (ex: .bat, .vbs, macro Word).
- La victime exécute le stager (ouverture de fichier, clic sur un lien, etc.).
- Le stager contacte le Listener et télécharge le vrai agent PowerShell.
- L’agent s’exécute en mémoire et permet la post-exploitation.

![image](https://hackmd.io/_uploads/BJmXjzjZee.png)
![image](https://hackmd.io/_uploads/Skc5jzible.png)

* ### Exécution du Stager sur machine cible
Le Stager (ex: un .bat ou macro) télécharge et exécute l’Agent en mémoire via PowerShell.
![image](https://hackmd.io/_uploads/SJF-pziZxx.png)
L'agent apparait sur Empire
![image](https://hackmd.io/_uploads/Hk9HTMi-xe.png)

### Utilisation de l'Agent
L’Agent est la charge utile (payload) principale qui s’exécute en mémoire sur une machine compromise après l’étape du Stager. Il permet à l’attaquant de :

- Contrôler à distance la machine victime
- Exécuter des modules (vol de données, mouvement latéral, etc.)
- Maintenir la persistance

Une fois qu’un agent Empire est actif, il est possible d’effectuer diverses actions offensives sur la machine cible. Voici des cas concrets, illustrant les fonctionnalités principales.
- 🔍 **Reconnaissance système**
- 👥 **Lister les utilisateurs du système**
- 📂 **Lister les fichiers d’un dossier**
- 📥 **Télécharger un fichier depuis la machine cible**
- 📤 **Envoyer un fichier vers la machine cible**
- 🎧 **Capturer les frappes clavier (keylogger)**
- 📸 **Prendre une capture d’écran**
- 📷 **Capturer une image de la webcam**
etc...

![image](https://hackmd.io/_uploads/rkO8TQiWle.png)

* ### Empire, la conclusion

PowerShell Empire s’impose comme l’un des frameworks de post-exploitation les plus puissants pour les tests d’intrusion et les opérations red team. Grâce à ses fonctionnalités avancées, il permet :

✅ **Une exploitation furtive :**

- Exécution fileless en mémoire (sans fichiers sur disque).
- Communication chiffrée via HTTP/HTTPS, DNS, ou même des services cloud (Dropbox, Twitter).

✅ **Des attaques modulaires :**

- Vol de credentials (Mimikatz intégré).
- Mouvement latéral (WMI, PsExec, Pass-the-Hash).
- Persistance (registre, tâches planifiées, services).

✅ **Une gestion centralisée :**

- Interface web (StarKiller/Empire-Web) pour le travail collaboratif.
- Agents persistants même après redémarrage.

⚔️ **Pour les Pentesters & Red Teams**

- Atout majeur pour simuler des APT (menaces persistantes avancées).
- Flexibilité : Adaptable aux environnements Windows, Linux, et Mac.
- Évasion des EDR : Techniques anti-détection intégrées.

🛡️ **Pour les Défenseurs (Blue Team)**

**Signaux à surveiller :**

- Activité PowerShell suspecte (-EncodedCommand, connexions inhabituelles).
- Processus enfants de powershell.exe (ex: lancement de navigateurs).

**Recommandations :**

- Désactiver PowerShell si inutile.
- Activer ScriptBlockLogging et AMSI.
- Utiliser des solutions EDR/NDR modernes.

🔮 **L’Avenir d’Empire**

Bien que le projet officiel ne soit plus maintenu, des forks comme BC-Security Empire ou Starkiller perpétuent son héritage. Son approche modulaire et furtive reste une référence pour :

-Les tests de pénétration.
-La recherche en cybersécurité.
-L’entraînement aux cyberattaques réalistes.

**En résumé :** 

`"PowerShell Empire est le couteau suisse du pentester, mais aussi un rappel brutal que PowerShell, conçu pour l’administration, peut devenir une arme redoutable entre de mauvaises mains."`

---
