Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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
persisthunt — Script de détection de persistance, de chasse et de collecte d'artefacts Linux | Kitploit
Outils/GitHubGitHub/raj3shp/persisthunt
Escalade de PrivilègesReconnaissanceSécurité des ConteneursMécanismes de PersistanceScripting et AutomatisationAnalyse ForensiqueAnalyse de MalwareCriminalistique NumériqueRéponse aux Incidents
GitHubraj3shp/persisthunt

persisthunt

Script de détection de persistance, de chasse et de collecte d'artefacts Linux

25133il y a 3 moisVérifié par Kitploit

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
Voir le dépôt
# Détection de persistance Linux, chasse aux menaces et collecte d'artefacts

- [Résumé](#summary)
- [Utilisation](#usage)
- [Exemples de détections](#example-detections)
- [Tableau des techniques](#techniques)

## Résumé
[`persisthunt.sh`](https://github.com/raj3shp/persisthunt/blob/main/persisthunt.sh) accélère les investigations en collectant des artefacts ciblés liés à la persistance et en signalant les modèles suspects couramment associés aux techniques de persistance Linux.

Le script aide à la détection de persistance, à la chasse aux menaces et à la collecte d'artefacts à travers les mécanismes de persistance Linux bien connus. Les résultats sont classés en trois niveaux — `High`, `Low` et `Informational` — selon la confiance et la sévérité. Les exemples incluent des entrées d'exécution automatique suspectes référençant `/tmp/`, `/home/`, `/dev/tcp`, `curl`, ou la détection de shells bind/inverses actifs.

Il est conçu comme une base flexible que les défenseurs peuvent personnaliser pour leurs environnements en ajoutant ou en supprimant de la logique de détection et des mots-clés. La sortie peut être volumineuse et nécessiter une analyse spécifique à l'environnement, mais elle convient également à la revue et à la synthèse à l'aide de LLM ou d'agents IA.

## Utilisation
Exécutez en tant qu'utilisateur root et redirigez la sortie vers un fichier
```
sudo persisthunt.sh > output.log
```

Exécutez sur un hôte distant via SSH
```
ssh [email protected] 'bash -s' < persisthunt.sh > output.log 2>&1
```

## Exemples de détections


```
=== [HIGH] Active reverse shell ===
bob      3889906  0.0  0.0   2800  1848 pts/2    S+   06:38   0:00 sh -i

=== [HIGH] Active bind shell ===
LISTEN 0      1                                     0.0.0.0:4444  0.0.0.0:* users:(("python3",pid=3891687,fd=3))
bob      3891687  0.7  0.3  19540 12320 pts/3    S+   06:41   0:00 python3 -c exec("""import socket as s,subprocess as sp;s1=s.socket(s.AF_INET,s.SOCK_STREAM);s1.setsockopt(s.SOL_SOCKET,s.SO_REUSEADDR, 1);s1.bind(("0.0.0.0",4444));s1.listen(1);c,a=s1.accept(); while True: d=c.recv(1024).decode();p=sp.Popen(d,shell=True,stdout=sp.PIPE,stderr=sp.PIPE,stdin=sp.PIPE);c.sendall(p.stdout.read()+p.stderr.read())""")

=== [HIGH] eBPF programs with raw network sockets (possible BPFdoor persistence) ===
PID: 3903559, Executable: bpfdoorpoc, Stack trace: /proc/3903559/stack:[<0>] packet_recvmsg+0x6e/0x5c0

=== [LOW] Recent ELF binary in tmp/home/hidden dirs ===
/var/tmp/.test
```

## Techniques

| Confiance | Technique | Description |
|---|---|---|
| Élevée | Persistance via les tâches at | Les tâches « at » légitimes sont rares ; des entrées inattendues dans /var/spool/at sont très suspectes. |
| Élevée | Entrée cron référençant un mot-clé suspect | Fichiers cron qui référencent curl/wget/nc/ncat/socat ou des chemins comme /tmp, /var/tmp, /dev/shm, /home, ou des fichiers cachés. |
| Élevée | Shell bind actif | Détecte les processus interpréteurs (bash/sh/zsh/dash/ksh/python*/perl/nc/ncat/socat) qui écoutent sur des sockets réseau (shells bind). |
| Élevée | Shell inverse actif | Détecte les processus dont stdin et stdout sont redirigés vers des sockets, indiquant des shells inverses. |
| Élevée | Persistance via socket réseau brute eBPF | Des rootkits tels que BPFdoor utilisent des programmes eBPF avec des sockets réseau brutes comme backdoor persistante. [En savoir plus](https://github.com/raj3shp/bpfdoorpoc/tree/main) |
| Élevée | Service/minuteur systemd référençant un mot-clé suspect | Recherche les mots-clés suspects dans les fichiers .service et .timer sous les chemins systemd (y compris les unités utilisateur sous ~/.config/systemd/user/). |
| Élevée | Script init/rc.local/profile référençant un mot-clé suspect | Scripts d'init et fichiers rc.local/profile qui référencent des mots-clés suspects ou des outils réseau dans les chemins de persistance. |
| Élevée | Script MOTD référençant un mot-clé suspect | Scripts MOTD qui référencent des mots-clés suspects ou des outils de persistance. |
| Élevée | Profil shell référençant un mot-clé suspect | Profils shell (/etc/profile, /etc/profile.d, ~/.bashrc, ~/.profile, etc.) contenant des commandes ou des chemins suspects. |
| Élevée | Fichiers de service D-BUS référençant un mot-clé suspect | Fichiers de service D-BUS trouvés dans le chemin \*/dbus-1/\* référençant des mots-clés suspects |
| Élevée | Scripts dispatcher NetworkManager référençant un mot-clé suspect | Scripts dispatcher NetworkManager trouvés dans le chemin \*/NetworkManager/dispatcher.d/\* référençant des mots-clés suspects |
| Élevée | Fichiers exécutables ELF cachés dans les répertoires tmp/home/cachés | Fichiers cachés (noms commençant par un point) dans /tmp, /var/tmp, /home, /dev/shm qui sont des exécutables ELF. |
| Élevée | Processus en cours | Processus en cours référençant un mot-clé suspect |
| Élevée | Binaire ELF SUID/SGID/accessible en écriture par tous | Fichiers accessibles en écriture par tous avec les bits SUID ou SGID définis et qui sont des binaires ELF (élévation de privilèges/backdoor potentielle). |
| Élevée | Processus caché détecté dans /proc (rootkit possible) | Énumère les PID de /proc et les compare à la sortie de ps pour trouver les processus cachés par des rootkits (par exemple Diamorphine) ; inclut des notes sur la façon dont les attaquants installent un backdoor dans ps pour masquer les PID. |
| Élevée | Processus caché via un bind mount | Détecte les bind mounts recouvrant /proc/<pid> (par exemple mount -o bind mydir /proc/1234), ce qui peut masquer les entrées de processus à ps. |
| Élevée | LD_PRELOAD configuré à l'échelle du système | Présence ou modification de /etc/ld.so.preload qui peut être exploitée par des rootkits pour la persistance. |
| Faible | Fichiers avec capabilities | Fichiers du système avec des capabilities POSIX définies (via `getcap`) — indicateur de confiance plus faible mais à vérifier. |
| Faible | Binaire ELF récent dans les répertoires tmp/home/cachés | Binaires ELF exécutables récemment modifiés ou créés (moins de 7 jours) dans /tmp, /var/tmp, /dev/shm, /home — indicateur de confiance plus faible. |
| Faible | Fichier de config ou hooks Git | Fichiers de configuration ou hooks Git autres que les exemples fournis (par exemple .git/config ou .git/hooks/*) qui pourraient être détournés pour la persistance. |
| Faible | Hooks APT | Les hooks APT pourraient être détournés pour la persistance. |
| Faible | Plugins Yum/DNF | Plugins Yum/DNF référençant un mot-clé suspect |
| Faible | Fichier .pth avec contenu suspect (persistance Python) | Fichiers .pth contenant des imports exécutés ou des appels comme import, os.system, exec() qui s'exécutent lors de l'import d'un module Python. |
| Faible | Règles udev | Règles udev avec la clé RUN (persistance possible) |
| Faible | Modules PAM | Modules PAM référençant pam_exec qui peuvent être détournés pour la persistance |
| Faible | Détournement de binaires système | Fichiers binaires récemment modifiés dans /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin/ |
| Informationnelle | Toutes les entrées cron (revue manuelle) | Affiche tous les fichiers liés à cron ainsi que leur contenu (hors commentaires) pour une revue manuelle. |
| Informationnelle | Tous les profils shell (revue manuelle) | Affiche le contenu de tous les fichiers de profil shell système et utilisateur pour inspection manuelle. |
| Informationnelle | Tous les scripts init.d et rc.local (revue manuelle) | Affiche les scripts init.d et rc.local pour inspection manuelle. |
| Informationnelle | Tous les fichiers MOTD (revue manuelle) | Affiche les scripts/fichiers MOTD et update-motd.d pour revue manuelle. |
| Informationnelle | Binaires ELF récents (7 jours) (revue manuelle) | Liste les fichiers ELF exécutables récents (7 jours) pour revue manuelle. |
| Informationnelle | Tous les fichiers cachés dans les répertoires home (revue manuelle) | Énumère les fichiers cachés (dotfiles) dans les répertoires home des utilisateurs pour revue manuelle. |
| Informationnelle | Clés autorisées SSH dans les répertoires home (revue manuelle) | Affiche les fichiers authorized_keys non vides dans /root et /home pour inspection manuelle. |
| Informationnelle | Utilisateurs et groupes locaux (revue manuelle) | Liste les utilisateurs et groupes locaux via getent pour revue manuelle. |
| Informationnelle | Montages (revue manuelle) | Affiche les montages actuels pour inspection manuelle. |
| Informationnelle | Connexions réseau actives (revue manuelle) | Affiche les connexions réseau actives (ss -tunap) pour revue manuelle. |
| Informationnelle | Services systemd (revue manuelle) | Liste les services systemd en cours d'exécution (systemctl list-units --type=service --state=running). |
| Informationnelle | Fichiers de service D-BUS (revue manuelle) | Recherche les fichiers de service D-BUS sous les répertoires dbus-1 pour revue. |
| Informationnelle | Scripts dispatcher NetworkManager | NetworkManager-dispatcher exécute des scripts lors des changements réseau ; vérifiez les scripts exécutables de dispatcher.d sous NetworkManager pour une persistance potentielle. |
| Informationnelle | Images de conteneurs et conteneurs en cours d'exécution | Liste toutes les images de conteneurs et les conteneurs en cours d'exécution avec Docker, Podman et Containerd |
| Informationnelle | Paquets installés | Liste tous les paquets installés avec dpkg/rpm/dnf |
| Informationnelle | Modules du noyau chargés | Liste tous les modules du noyau chargés |
Télécharger l’outil