Penelope
Penelope - Gestion Avancée de Shells pour la Post-Exploitation
⚠️ Avertissement : Ce contenu est strictement destiné à un usage éducatif et éthique dans le domaine de la cybersécurité. Toute utilisation illégale ou malveillante est interdite et engage la seule responsabilité de l’utilisateur.
Introduction
Penelope est un outil polyvalent conçu pour la gestion avancée de shells interactifs dans un environnement de post-exploitation. Il permet aux pentesters et chercheurs en sécurité de maintenir des connexions fiables avec des cibles compromises, d'exécuter des commandes ou scripts à distance, et de gérer plusieurs sessions simultanées.
Grâce à ses fonctionnalités telles que l'auto-upgrade en shell PTY, la gestion de la persistance et un serveur HTTP intégré, Penelope simplifie considérablement les étapes critiques de la post-exploitation.
🚀 Étape 1 : Installation de Penelope
Pré-requis
Python 3.6 ou version ultérieure :
Vérifiez votre version de Python :
Cloner le dépôt GitHub de Penelope :
Téléchargez Penelope depuis son dépôt officiel :
Naviguer dans le répertoire Penelope :
Installer les dépendances :
Utilisez
pip
pour installer les modules nécessaires :
🛠️ Étape 2 : Utilisation de Base
1. Établir une Connexion avec une Cible
Pour établir une connexion avec une cible compromise, utilisez la commande suivante :
Explication :
-t
: Spécifie l'adresse IP de la cible.-p
: Indique le port sur lequel se connecter (par défaut, 22 pour SSH ou 4444 pour un reverse shell).
2. Téléchargement et Upload de Fichiers
a) Télécharger un fichier depuis la machine cible
Explication :
Télécharge un fichier spécifique depuis la cible vers votre machine.
b) Uploader un fichier vers la cible
Explication :
Envoie un fichier local (par exemple, un script de post-exploitation) vers la cible.
3. Maintenir des Sessions Multiples
Penelope permet de maintenir plusieurs sessions actives avec une cible. Si une session est perdue, elle est automatiquement recréée.
Explication :
--maintain
: Spécifie le nombre de sessions à maintenir (2 dans cet exemple).
4. Auto-Upgrade en Shell PTY
Dès qu'une connexion est établie, Penelope tente d'upgrader automatiquement un shell simple en PTY (Pseudo-Terminal) pour permettre des commandes interactives comme nano
ou top
.
Si l’upgrade n’est pas automatique, utilisez la commande :
Explication :
Convertit le shell actuel en un terminal interactif.
🔍 Étape 3 : Fonctionnalités Avancées
1. Ajouter de la Persistance
Penelope peut maintenir l'accès à une machine compromise même après un redémarrage ou une interruption de session.
Commande :
Explication :
Configure un mécanisme de persistance, comme l'ajout d'un backdoor.
2. Utiliser le Serveur HTTP Intégré
Penelope inclut un serveur HTTP intégré pour partager facilement des fichiers entre votre machine et la cible.
Démarrer le serveur HTTP :
Explication :
-s
: Active le serveur HTTP.--port
: Spécifie le port du serveur (8000 dans cet exemple).
3. Exécuter des Scripts Locaux sur la Cible
Penelope permet d'uploader et d'exécuter des scripts locaux directement sur la machine cible.
Commande :
Explication :
Exécute le script spécifié et affiche les résultats dans la session en cours.
📋 Scénarios d’Utilisation
Exemple 1 : Maintenir un Accès Constant à une Machine
Si vous souhaitez maintenir deux sessions actives avec une machine cible pour éviter toute perte d'accès, utilisez la commande suivante :
Penelope régénérera automatiquement une nouvelle session si une des connexions est interrompue.
Exemple 2 : Exécuter des Scripts de Post-Exploitation
a) Uploader un script de post-exploitation
b) Exécuter le script sur la machine cible
Explication :
linpeas.sh
est un script d’énumération populaire pour identifier des failles ou des privilèges à exploiter.
Exemple 3 : Partager des Fichiers via le Serveur HTTP Intégré
Démarrer le serveur HTTP sur votre machine :
Télécharger le fichier depuis la cible : Sur la machine cible, exécutez :
📖 Bonnes Pratiques
1. Obtenir des Autorisations Légales
Assurez-vous toujours d’avoir une autorisation explicite pour tester ou accéder à un système.
2. Maintenir la Discrétion
Évitez d’uploader ou d'exécuter des fichiers inutiles pour réduire les traces laissées.
Supprimez les fichiers sensibles après l'utilisation :
3. Éviter les Détections
Si la cible dispose d'un antivirus ou d’un IDS, modifiez vos scripts ou utilisez des versions obfusquées.
4. Planifier des Points de Reconnexion
Utilisez la persistance avec parcimonie pour éviter de déclencher des alertes réseau.
Conclusion
Penelope est un outil indispensable pour les pentesters cherchant à simplifier la gestion des shells et des connexions post-exploitation. Grâce à ses fonctionnalités telles que le maintien de sessions multiples, l’auto-upgrade des shells en PTY, et un serveur HTTP intégré, il facilite grandement les étapes complexes de post-exploitation. Que ce soit pour uploader des scripts, maintenir un accès persistant ou gérer des fichiers à distance, Penelope s'impose comme un choix fiable et puissant.
Liens utiles :
Dernière mise à jour