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
QLinspector — Trouver des chaînes de gadgets Java/C# avec CodeQL | Kitploit
Outils/GitHubGitHub/synacktiv/qlinspector
Analyse StatiqueAnalyse des VulnérabilitésAnalyse de CodeExploitationDéveloppement de Charges Utiles
GitHubsynacktiv/qlinspector

QLinspector

Trouver des chaînes de gadgets Java/C# avec CodeQL

Voir le dépôt
18822il y a 2 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

QLinspector

Trouver des chaînes de gadgets Java/C# avec CodeQL. Plus d'informations dans notre article

Installation

Clonez le dépôt

root@kitploit:~
$ git clone https://github.com/synacktiv/QLinspector.git

Recherchez des gadgets :

root@kitploit:~
$ codeql database analyze log4j --format=sarif-latest --output=log4j.sarif --search-path=./QLinspector/ synacktiv/qlinspector-java-queries

Requêtes

QLinspector.ql

La requête CodeQL principale qui peut être utilisée pour trouver des chaînes de gadgets.

Voici un exemple avec la chaîne de gadgets AspectJ :

aspectj

L'exécution de la requête ci-dessus peut parfois renvoyer beaucoup de faux positifs. Pour les filtrer, la classe GadgetSanitizer a été ajoutée. Vous pouvez ajouter des conditions pour filtrer les DataFlow::Node :

root@kitploit:~
/**
 * placeholder for adding sanitizing steps
*/
class GadgetSanitizer extends DataFlow::Node {
  GadgetSanitizer() {
    this.getEnclosingCallable().hasName("")
  }
}

QLinspectorOld.ql

Ancienne requête développée initialement. Cette requête n'utilise pas le modèle de taint de CodeQL et peut donc renvoyer des résultats différents.

BeanFactoryGadgetFinder.ql

Une requête qui peut être utilisée pour trouver de nouvelles chaînes de gadgets basées sur org.apache.naming.factory.BeanFactory. La classe BeanFactory permet de créer une instance d'une classe arbitraire avec un constructeur par défaut et d'appeler toute méthode publique avec un paramètre String.

Plus d'informations dans cet article de blog : https://www.veracode.com/blog/research/exploiting-jndi-injections-java

CommonsBeanutilsGadgetFinder.ql

Une requête qui peut être utilisée pour trouver des alternatives à la méthode getOutputProperties utilisée dans la chaîne CommonsBeanutils.

Plus d'informations ici :

  • https://www.praetorian.com/blog/relution-remote-code-execution-java-deserialization-vulnerability/
  • https://mogwailabs.de/en/blog/2023/04/look-mama-no-templatesimpl/

ObjectFactoryFinder.ql

Une requête qui peut être utilisée pour trouver des alternatives à org.apache.naming.factory.BeanFactory. Cela peut être utile lors de l'exploitation de JNDI.

Plus d'informations dans cet article de blog : https://www.veracode.com/blog/research/exploiting-jndi-injections-java

Ressources

  • https://www.synacktiv.com/publications/finding-gadgets-like-its-2015-part-1.html
  • https://www.synacktiv.com/publications/finding-gadgets-like-its-2015-part-2.html
  • https://www.synacktiv.com/publications/finding-gadgets-like-its-2022.html
  • https://www.synacktiv.com/publications/java-deserialization-tricks
  • https://www.praetorian.com/blog/relution-remote-code-execution-java-deserialization-vulnerability/
  • https://www.veracode.com/blog/research/exploiting-jndi-injections-java
  • https://mogwailabs.de/en/blog/2023/04/look-mama-no-templatesimpl/
  • https://testbnull.medium.com/return-of-the-rhino-analysis-of-mozillarhino-gadgetchain-also-the-writeup-of-hitb-linkextractor-a2074b4ae624
  • https://www.buaq.net/go-53869.html
  • https://b1ue.cn/archives/529.html
Télécharger l’outil