Skip to content
KitploitKITPLOIT
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CaptainHook — Trace les entrées utilisateur pour détecter les vulnérabilités d'injection dans les méthodes Java via JDWP et Frida, en identifiant les points potentiels d'injection de commandes et SQL. | Kitploit
Outils/GitHubGitHub/synacktiv/captainhook
Analyse Dynamique (Sandboxing)Analyse des VulnérabilitésAnalyse de CodeDébogueursAnalyse de Binaires
GitHubsynacktiv/captainhook

CaptainHook

Trace les entrées utilisateur pour détecter les vulnérabilités d'injection dans les méthodes Java via JDWP et Frida, en identifiant les points potentiels d'injection de commandes et SQL.

Voir le dépôt
92il y a 4 ansPas encore vérifié

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

Captain Hook

Qu'est-ce que c'est ?

Le but de cet outil est de tracer les entrées utilisateur, afin de trouver des points d'injection dans des méthodes sensibles (comme java.lang.Runtime.exec, java.sql.Statement.executeQuery, ...) ainsi que les mutations sur ces entrées entre le point d'injection et l'appel de méthode.

Des « marqueurs » sont générés, qui doivent être insérés dans chaque entrée utilisateur possible de votre application. Des marqueurs différents vous aideront à déterminer l'origine d'une alerte.

La liste des méthodes surveillées est disponible à l'aide de la commande > list_breakpoints dans la CLI. Cette liste peut être modifiée avec les commandes > add_breakpoint et > delete_breakpoint.

L'architecture

root@kitploit:~
            Captain Hook Docker                                   Main machine
                container
 ┌────────────────────────────────────────┐             ┌────────────────────────────────────────┐
 │                                        │             │                                        │
 │ ┌─────────────────┐ ┌────────────────┐ │             │          ┌──────────────────────────┐  │
 │ │                 │ │                │ │             │          │                          │  │
 │ │ ┌────┐          │ │  Java Debugger │ │             │          │                          │  │
 │ │ │    │ Python   │ │                ├─┼─────────────┼──────────►                          │  │
 │ │ │    │    +     │ │                │ │             │          │      Program being       │  │
 │ │ │    │  Frida   │ │                │ │             │          │        analyzed          │  │
 │ │ │    │          │ │                ◄─┼─────────────┼──────────┤                          │  │
 │ │ │    │          ◄─┤                │ │             │          │                          │  │
 │ │ │CLI │          ├─►                │ │             │          │                          │  │
 │ │ │    │          │ │                │ │             │          │                          │  │
 │ │ │    │          │ └────────────────┘ │             │          │                          │  │
 │ │ │    │          │                    │             │          │                          │  │
 │ │ │    │          │                    │             │ ┌──────┐ │                          │  │
 │ │ │    │          ├────────────────────┼─────────────┤►│frida-├─►                          │  │
 │ │ │    │          │                    │             │ │server◄─┤                          │  │
 │ │ └────┘          │                    │             │ │      │ └──────────────────────────┘  │
 │ │                 │◄───────────────────┼─────────────┼─┤      │                               │
 │ └─────────────────┘                    │             │ └──────┘                               │
 │                                        │             │                                        │
 └────────────────────────────────────────┘             └────────────────────────────────────────┘

Comment démarrer Captain Hook ?

Côté du programme analysé

Sa JVM doit être lancée avec les options suivantes :

  • -Xdebug
  • -Xrunjdwp:transport=dt_socket,address=1000,server=y,suspend=n
  • -Xint

Bien sûr, le port d'écoute (1000 dans l'exemple ci-dessus) est arbitraire et peut être modifié.

Si possible, installez frida-server sur la machine contenant le programme analysé, puis lancez-le avec la commande suivante : # frida-server -l 0.0.0.0:1500 &

Le port / l'adresse d'écoute peuvent également être modifiés pour répondre à vos besoins.

Côté de Captain Hook

À la fin du Dockerfile situé dans ./dbg, définissez l'adresse IP du « host » (la machine exécutant le programme à analyser), le port d'écoute JDWP et le port d'écoute Frida (0 si frida-server n'est pas disponible).

Ensuite # make build, puis # make run-dbg. Attachez un second terminal à ce conteneur avec # docker exec -it $(docker ps -lq) bash.

Dans le premier, exécutez : cd debugger && make debug, puis dans le second : cd frida && make instrument

Vous interagirez avec Captain Hook via le second terminal, qui vous présente une CLI. Tapez > help pour obtenir une liste exhaustive des commandes disponibles, toutes documentées.

Fonctionnalités expérimentales

Le dossier « agent » est purement expérimental, de même que la commande > set_object_inspection_strategy.

Télécharger l’outil