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
beanshooter — Outil d'énumération et d'attaque JMX. | Kitploit
Outils/GitHubGitHub/qtc-de/beanshooter
Analyse des VulnérabilitésExploitationTests d'Intrusion
GitHubqtc-de/beanshooter

beanshooter

Outil d'énumération et d'attaque JMX.

Voir le dépôt
5095573il y a 3 ansVé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

beanshooter


beanshooter est un outil d'énumération et d'attaque JMX, qui aide à identifier les vulnérabilités courantes sur les points d'accès JMX.

https://user-images.githubusercontent.com/49147108/183278179-4a5566a7-5af8-4ce8-a73d-1016876a36d5.mp4

Installation


beanshooter est un projet maven et son installation devrait être simple. Avec maven installé, exécutez simplement les commandes suivantes pour créer un fichier .jar exécutable :```console [qtc@devbox ~]$ git clone https://github.com/qtc-de/beanshooter [qtc@devbox ~]$ cd beanshooter [qtc@devbox ~]$ mvn package

Vous pouvez également utiliser les paquets préconstruits créés pour [chaque version](https://github.com/qtc-de/beanshooter/releases).
Les paquets préconstruits pour la branche de développement sont créés automatiquement et se trouvent sur la *page d'actions* [GitHub](https://github.com/qtc-de/beanshooter/actions). De plus, une image Docker préconstruite pour exécuter *beanshooter* [est disponible](#docker-image).

*beanshooter* n'inclut pas *ysoserial* comme dépendance. Pour activer le support de *ysoserial*, vous devez soit spécifier le chemin vers votre fichier ``ysoserial.jar`` comme argument supplémentaire (par ex. ``--yso /opt/ysoserial.jar``) soit modifier le chemin par défaut dans le [fichier de configuration de beanshooter](https://github.com/qtc-de/beanshooter/blob/master/beanshooter/config.properties) avant de construire le projet.

*beanshooter* prend en charge l'autocomplétion pour *bash*. Pour profiter de l'autocomplétion, vous devez avoir installé le projet [completion-helpers](https://github.com/qtc-de/completion-helpers). Si configuré correctement, il suffit de copier le [script de complétion](https://github.com/qtc-de/beanshooter/blob/master/resources/bash_completion.d/beanshooter) dans votre dossier ``~/.bash_completion.d`` pour activer l'autocomplétion.```console
[qtc@devbox ~]$ cp resources/bash_completion.d/beanshooter ~/bash_completion.d/

Table des matières


  • Supported Operations
    • Basic Operations
      • attr
      • brute
      • deploy
      • enum
      • info
      • invoke
      • jolokia
      • list
      • model
      • serial
      • stager
      • standard
      • undeploy
    • MBean Operations
      • generic
        • attr
        • info
        • invoke
        • stats
        • status
        • export
        • deploy
        • undeploy
      • diagnostic
        • read
        • load
        • logfile
        • nolog
        • cmdline
        • props
      • hotspot
        • dump
        • list
        • get
        • set
      • mlet
        • load
      • recorder
        • new
        • start
        • stop
        • read
        • dump
      • tomcat
        • dump
        • list
        • write
      • tonka
        • exec
        • execarray
        • shell
        • upload
        • download
  • JMXMP
  • Support Jolokia
  • Image Docker
  • Serveur d'exemple

Supported Operations


Les différentes opérations de beanshooter peuvent être divisées en deux groupes : les opérations de base et les opérations MBean. Alors que les opérations de base sont utilisées pour effectuer des opérations générales sur un point d'accès JMX, les opérations MBean ciblent un MBean spécifique pour interagir avec. Pour plus de détails, consultez les exemples d'utilisation dans les sections suivantes.```console [qtc@devbox ~]$ beanshooter -h usage: beanshooter [-h] ...

beanshooter v3.0.0 - a JMX enumeration and attacking tool

positional arguments:

Basic Operations attr set or get MBean attributes brute bruteforce JMX credentials deploy deploys the specified MBean on the JMX server enum enumerate the JMX service for common vulnerabilities info display method and attribute information on an MBean invoke invoke the specified method on the specified MBean list list available MBEans on the remote MBean server serial perform a deserialization attack stager start a stager server to deliver MBeans undeploy undeploys the specified MBEAN from the JMX server

MBean Operations diagnostic Diagnostic Command MBean hotspot HotSpot Diagnostic MBean mlet default JMX bean that can be used to load additional beans dynamically recorder jfr Flight Recorder MBean tomcat tomcat MemoryUserDatabaseMBean used for user management tonka general purpose bean for executing commands and uploading or download files

named arguments: -h, --help show this help message and exit

### Opérations de base

---

Les opérations de base sont des opérations à usage général qui peuvent être effectuées sur un service JMX. Il s'agit généralement d'opérations qui ne ciblent pas un MBean spécifique ou qui ciblent un MBean sans support intégré par beanshooter.

#### Attr

L'action `attr` peut être utilisée pour obtenir ou définir des attributs sur un *MBean* spécifié. Pour obtenir les attributs disponibles, l'action `info` doit être utilisée :```console
[qtc@devbox ~]$ beanshooter info 172.17.0.2 9010
...
[+] MBean Class: sun.management.MemoryImpl
[+] ObjectName: java.lang:type=Memory
[+]
[+]     Attributes:
[+]         Verbose (type: boolean , writable: true)
[+]         ObjectPendingFinalizationCount (type: int , writable: false)
[+]         HeapMemoryUsage (type: javax.management.openmbean.CompositeData , writable: false)
[+]         NonHeapMemoryUsage (type: javax.management.openmbean.CompositeData , writable: false)
[+]         ObjectName (type: javax.management.ObjectName , writable: false)
[+]
[+]     Operations:
[+]         void gc()

Lorsque seul le nom de l'attribut est spécifié, beanshooter obtient et affiche la valeur actuelle de l'attribut :```console [qtc@devbox ~]$ beanshooter attr 172.17.0.2 9010 java.lang:type=Memory Verbose false

Lorsqu'une valeur supplémentaire est spécifiée, *beanshooter* tente de définir l'attribut correspondant. Pour les attributs qui ont un type différent de *String*, la spécification du type d'attribut à l'aide de l'option `--type` est requise :```console
[qtc@devbox ~]$ beanshooter attr 172.17.0.2 9010 java.lang:type=Memory Verbose true --type boolean
[qtc@devbox ~]$ beanshooter attr 172.17.0.2 9010 java.lang:type=Memory Verbose
true

Brute

Télécharger l’outil