Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
QLinspector — CodeQLでJava/C#ガジェットチェーンを発見する | Kitploit
ツール/GitHubGitHub/synacktiv/qlinspector
静的分析脆弱性分析コード分析エクスプロイトペイロード開発
GitHubsynacktiv/qlinspector

QLinspector

CodeQLでJava/C#ガジェットチェーンを発見する

リポジトリを見る
1882212ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

QLinspector

CodeQLでJava/C#ガジェットチェーンを探すツールです。 詳細はこちらの記事をご覧ください。

インストール

リポジトリをクローンします。

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

ガジェットを検索します。

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

クエリ

QLinspector.ql

ガジェットチェーンを見つけるために使用できるメインのCodeQLクエリです。

Aspectjガジェットチェーンを使用した例は次のとおりです。

aspectj

上記のクエリを実行すると、多くの偽陽性が返されることがあります。それらをフィルタリングするために、GadgetSanitizerクラスが追加されています。DataFlow::Nodeを除外する条件を追加できます。

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

QLinspectorOld.ql

当初開発された古いクエリです。このクエリはCodeQLの汚染(taint)モデルを使用しないため、異なる結果を返す可能性があります。

BeanFactoryGadgetFinder.ql

org.apache.naming.factory.BeanFactoryに基づいた新しいガジェットチェーンを見つけるために使用できるクエリです。BeanFactoryクラスは、デフォルトコンストラクタで任意のクラスのインスタンスを作成し、Stringパラメータを1つ持つ任意のパブリックメソッドを呼び出すことを可能にします。

詳細はこちらのブログ記事を参照してください: https://www.veracode.com/blog/research/exploiting-jndi-injections-java

CommonsBeanutilsGadgetFinder.ql

CommonsBeanutilsチェーンで使用されるgetOutputPropertiesメソッドの代替を見つけるために使用できるクエリです。

詳細はこちら:

  • 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

org.apache.naming.factory.BeanFactoryの代替を見つけるために使用できるクエリです。JNDIエクスプロイトの際に役立つ可能性があります。

詳細はこちらのブログ記事を参照してください: https://www.veracode.com/blog/research/exploiting-jndi-injections-java

リソース

  • 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
ツールをダウンロード