Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
penelope — Penelope Shell Handler | Kitploit
Outils/GitHubGitHub/brightio/penelope
Génération de PayloadsShellcodePost-ExploitationCTFTests d'IntrusionCommandement et ContrôleRed TeamingOutil d'Accès à DistanceTop en Post-Exploitation n°20
2.0k22725il y a 3 joursVérifié par Kitploit
GitHub
brightio/penelope

penelope

Penelope Shell Handler

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Logo


Black Hat Arsenal EU USA MEA
Kali Linux

Penelope est un gestionnaire de shells moderne pour les testeurs d'intrusion et les joueurs de CTF. Il offre une alternative plus performante aux simples écouteurs netcat, en ajoutant des mises à niveau automatiques vers PTY, la gestion de sessions, la journalisation, les transferts de fichiers et des modules d'aide.

Table des matières

  • 📥 Installation
  • ⚙️ Fonctionnalités
    • 🖥️ Fonctionnalités de session
    • 🌍 Fonctionnalités globales
    • 🧩 Modules
  • 💻 Utilisation
    • ▶️ Exemple d'utilisation typique
    • 🎬 Démonstration d'utilisation aléatoire
    • 🖲️ Commandes du menu principal
    • ⚡ Options en ligne de commande
  • 🔒 Considérations de sécurité
  • 📝 TODO
  • ❓ FAQ
  • 🙌 Remerciements aux premiers contributeurs

Installation

Penelope fonctionne sur les systèmes de type Unix, y compris Linux, macOS et FreeBSD, et nécessite Python 3.6+.

Kali Linux

Penelope est disponible dans Kali Linux :

sudo apt update
sudo apt install penelope

Exécution autonome

Penelope est implémenté entièrement avec la bibliothèque standard de Python, ce qui permet de l'exécuter comme un script autonome sans dépendances externes :

wget -q https://raw.githubusercontent.com/brightio/penelope/refs/heads/main/penelope.py && python3 penelope.py

pipx

Pour installer la dernière version amont directement depuis GitHub :

pipx install git+https://github.com/brightio/penelope

Pour un chemin de versionnement et plus stable, Penelope est également disponible sur PyPI :

pipx install penelope-shell-handler

Fonctionnalités

Fonctionnalités de session

FonctionnalitéCible de type UnixCible Windows
Mise à niveau automatique du shellPTYreadline(*)
Redimensionnement du terminal en temps réel✅❌
Journalisation de l'activité du shell✅✅
Téléchargement de fichiers/dossiers distants✅✅
Téléversement de fichiers/dossiers locaux/HTTP✅✅
Exécution de script local/HTTP en mémoire avec téléchargement de sortie en temps réel✅❌
Redirection de port local✅❌
Ouverture de shells sur plusieurs onglets et/ou hôtes✅❌
Maintien automatique de N shells actifs par hôte (ré-ouverture à la mort)✅❌

(*) Peut être manuellement mis à niveau vers PTY avec la commande upgrade

⚠️ Le support Windows est expérimental et en développement actif.

Fonctionnalités globales

  • Interaction simplifiée avec les cibles via les modules
  • Sessions multiples
  • Écouteurs multiples
  • Servir des fichiers/dossiers via HTTP (option -s)
  • Peut être importé par des exploits python3 et obtenir un shell sur le même terminal (voir extras/exploit_examples)
  • Peut fonctionner en conjonction avec les exploits Metasploit en désactivant le gestionnaire par défaut avec set DisablePayloadHandler True
  • Exposer des sessions actives à un client MCP comme Claude Code avec l'option --mcp (HTTP local, authentifié par jeton), pilotant les mêmes shells à vos côtés

Modules

modules

Démonstration du module Meterpreter

meterpreter

Utilisation

Exemple d'utilisation typique

penelope                          # Écoute des shells inversés sur 0.0.0.0:4444
penelope -p 5555                  # Écoute des shells inversés sur 0.0.0.0:5555
penelope -p 4444,5555             # Écoute des shells inversés sur 0.0.0.0:4444 et 0.0.0.0:5555
penelope -i eth0 -p 5555          # Écoute des shells inversés sur eth0:5555
penelope -a                       # Écoute des shells inversés sur 0.0.0.0:4444 et affiche des exemples de payloads de shell inversé

penelope -c target -p 3333        # Connexion à un shell bind sur target:3333

penelope ssh user@target          # Obtient un shell inversé depuis target sur le port local 4444
penelope -p 5555 ssh user@target  # Obtient un shell inversé depuis target sur le port local 5555
penelope -i eth0 -p 5555 -- ssh -l user -p 2222 target  # Obtient un shell inversé depuis target sur eth0, port local 5555 (utiliser -- si ssh nécessite des options)

penelope -s <Fichier/Dossier>     # Partage un fichier ou dossier via HTTP

Penelope

Serveur de fichiers HTTP (-s)

Penelope peut également être utilisé comme un serveur de fichiers HTTP rapide.

penelope -s file.txt                 # Servir un seul fichier sur 0.0.0.0:8000
penelope -s /path/to/dir             # Servir tout un dossier
penelope -s a.sh b.elf notes.txt     # Servir plusieurs éléments à la fois
penelope -s . -p 80                  # Servir le répertoire courant sur le port 80
penelope -s secret.txt -prefix xk9   # Cacher derrière un préfixe d'URL : /xk9/secret.txt
penelope -s -u                       # Mode téléversement : accepter PUT/POST dans le répertoire de travail
penelope -s -u -ud /tmp/loot         # Mode téléversement, stocker les fichiers reçus dans /tmp/loot

Au démarrage, Penelope affiche un lien prêt à l'emploi par interface (et un indice de téléversement quand -u est défini), vous pouvez donc copier-coller directement dans le shell cible.

Démonstration d'utilisation aléatoire

Comme le montre la vidéo ci-dessous, en quelques secondes seulement, nous pouvons :

  1. Obtenir un shell PTY entièrement fonctionnel et redimensionnable automatiquement tout en journalisant chaque interaction avec la cible
  2. Exécuter la dernière version de LinPEAS sur la cible sans toucher au disque et enregistrer la sortie dans un fichier local en temps réel
  3. Ouvrir un autre shell PTY dans un autre onglet
  4. Téléverser les dernières versions de LinPEAS et linux-smart-enumeration
  5. Téléverser un dossier local contenant des scripts personnalisés
  6. Téléverser un exploit depuis exploit-db directement depuis une URL
  7. Télécharger et ouvrir un fichier distant localement
  8. Télécharger le répertoire /etc distant
  9. Générer automatiquement un nouveau shell si un shell existant meurt, aidant à maintenir l'accès pendant les sessions de shell instables

https://github.com/brightio/penelope/assets/65655412/7295da32-28e2-4c92-971f-09423eeff178

Commandes du menu principal

Quelques notes :

  • Par défaut, vous devez appuyer sur F12 pour détacher le shell PTY et aller au Menu Principal. Si la mise à niveau n'a pas été possible et que vous avez un shell basique, vous pouvez le détacher avec Ctrl+C. Cela évite également la suppression accidentelle du shell.
  • Le Menu Principal prend en charge la complétion par TAB et aussi des commandes courtes. Par exemple, au lieu de interact 1, vous pouvez simplement taper i 1.
Télécharger l’outil