Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-3494_Verfication — CVE-2026-3494を再現・分析するツールです。MariaDBのserver_auditプラグインにおける監査ログバイパスを対象とし、Dockerベースのマルチバージョンテストを用いて、脆弱なバージョンとパッチ適用済みバージョン間のログ動作を比較します。 | Kitploit
ツール/GitHubGitHub/kelnor/cve-2026-3494_verfication
脆弱性分析エクスプロイト論文と研究学習と教育データベースセキュリティ
GitHubkelnor/cve-2026-3494_verfication

CVE-2026-3494_Verfication

CVE-2026-3494を再現・分析するツールです。MariaDBのserver_auditプラグインにおける監査ログバイパスを対象とし、Dockerベースのマルチバージョンテストを用いて、脆弱なバージョンとパッチ適用済みバージョン間のログ動作を比較します。

リポジトリを見る

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
184ヶ月前未レビュー
共有

CVE-2026-3494 - MariaDB server_audit ログ記録検証 PoC

このプロジェクトは、SQLクエリ内で特定のインラインコメント(#、--)が使用された際に、MariaDBのserver_auditプラグインにおける潜在的な監査ログバイパスを検証・分析するための専用環境を提供します。


主な発見

  • v11.8.6におけるログ記録漏れ: MariaDB v11.8.6(以前はパッチ適用済みと見なされていたバージョン)において、特定のクエリ(例: コメント付きのSET PASSWORDやError 1046のケース)が監査ログに記録されないことを確認しました。
  • パーサーの不整合の可能性: 最近のバージョンにおける監査プラグインのパーサー動作の変化を特定しました。マルチラインコメント(#)により、DCLステートメントが監査機能によって不適切に処理されたり、無視されたりする可能性があります。
  • バージョンリグレッションの特定: v11.8.5以下では正常に記録されていたログがv11.8.6では記録されない動作を検出し、監査ログ記録ロジックにリグレッションが存在する可能性を示唆しています。

1. 概要

  • CVE参照: CVE-2026-3494
  • 影響を受けるバージョン: MariaDB 11.8.5以下(10.x系を含む)
  • 脆弱性の詳細: QUERY_DCL、QUERY_DDL、QUERY_DMLなどのフィルタを指定してserver_auditを有効にした場合、インラインコメントを含む特定のクエリがログ記録メカニズムをバイパスする可能性があります。
  • 目的: 同一のクエリ条件下で、複数のMariaDBバージョン(脆弱なバージョンとパッチ適用済みバージョン)間の監査ログ記録動作を比較すること。

2. 実際の結果(検証)

以下のマトリクスは、テスト中に観察されたログ記録動作をまとめたものです:

[MariaDB 10.3.39 / 11.8.5]
- CASE #1, #2A, #2B, #3, #4 → すべてLOGGED(正常な動作)

[MariaDB 11.8.6 (対象バージョン)]
- CASE #2B (Error 1046) → NOT LOGGED(ログ記録漏れ)❗
- CASE #3 (コメント付きSET PASSWORD) → NOT LOGGED(ログ記録漏れ)❗
- CASE #1, #2A, #4 → LOGGED(正常な動作)

3. テスト環境

このプロジェクトはDocker Composeを使用して、3つの分離されたMariaDBインスタンスを実行します:

バージョンポートステータス説明
MariaDB 10.3.393306脆弱レガシー安定版の検証
MariaDB 11.8.53307脆弱最新の脆弱バージョンの検証
MariaDB 11.8.63308対象最近の監査ログ記録変更の評価

4. セットアップと実行

1) インフラストラクチャのセットアップ(Docker)

MariaDBコンテナをビルドして起動します。環境は自動的にserver_auditプラグインを設定し、テストユーザーを初期化します。

# コンテナのビルドと起動
docker compose up --build -d

# コンテナの状態を確認
docker ps

2) 準備(ホスト)

必要なPython依存関係をインストールします:

pip install pymysql

3) PoCの実行

スクリプトはプロジェクト内の任意のディレクトリから実行できます。

python poc/poc.py

5. テストケースの詳細

PoCは5つの異なるシナリオを実行します:

  1. TEST_CASE_1 (正常): コメントなしの標準クエリ(対照群)。
  2. TEST_CASE_2_A (Error 1146): 「テーブルが存在しません」エラーとなるクエリ。
  3. TEST_CASE_2_B (Error 1046): 「データベースが選択されていません」エラーとなるクエリ(Jira再現ケース)。
  4. TEST_CASE_3 (コメント付きSET PASSWORD): #コメントが埋め込まれたSET PASSWORDコマンド(バイパスチェック)。
  5. TEST_CASE_4 (コメント付きSELECT): #コメントが埋め込まれたSELECTステートメント(バイパスチェック)。

6. 結果の解釈

  • LOGGED: クエリが監査ログに正常に記録されました。
  • NOT LOGGED: クエリがログから省略されました(潜在的なバイパスまたはリグレッション)。
  • >> Actual Log: 記録されたステートメントの整合性を検証するために、server_audit.logの生のエントリを青色で表示します。

7. 検証ログ(実際の証拠)

以下は、期待される動作(11.8.5)とログ記録漏れ(11.8.6)の違いを示す実際の実行ログです。

MariaDB 11.8.5(期待されるログ記録動作)
[+] TEST_CASE_2_B_ERROR_1046
    Result: LOGGED
    >> Actual Log: | 20260504 04:45:05,...,QUERY,mysql,'SELECT * FROM user',1046

[+] TEST_CASE_3_COMMENT_SET_PASSWORD
    Result: LOGGED
    >> Actual Log: | 20260504 04:45:07,...,QUERY,mysql,'SET PASSWORD # CVE-2026-3494 Test ...',1133
MariaDB 11.8.6(ログ記録漏れを確認)
[+] TEST_CASE_2_B_ERROR_1046 (データベースが選択されていません)
    Result: NOT LOGGED  <-- 記録漏れを検出

[+] TEST_CASE_3_COMMENT_SET_PASSWORD (インラインコメント #)
    Result: NOT LOGGED  <-- 記録漏れを検出

[!TIP] すべてのテストケースとバージョンの完全なターミナル出力については、完全な実行ログを参照してください。


8. プロジェクト構造

.
├── config/              # MariaDB server_audit設定
├── init/                # 初期化スクリプト(ユーザー&プラグイン設定)
├── logs/                # 監査ログボリュームマウント
├── poc/
│   └── poc.py           # 自動検証スクリプト
├── results/
│   └── full_execution_log.md  # 詳細なターミナル出力ログ
├── docker-compose.yml   # マルチバージョン環境定義
└── README.md            # プロジェクトドキュメント(現在のファイル)

9. 免責事項

このプロジェクトは教育およびセキュリティ研究目的のみで使用してください。責任を持って使用し、十分なテストなしに本番環境へこれらの設定を適用しないでください。

ツールをダウンロード