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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
phpmyadmin-auth-plugin-unquoted — phpMyAdmin 5.2.3 - 高 - リモート - SQLi - 認証プラグイン識別子が引用符で囲まれていない | Kitploit
ツール/GitHubGitHub/abraxas/phpmyadmin-auth-plugin-unquoted
脆弱性スキャナー脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティペネトレーションテストデータベースセキュリティ
GitHubabraxas/phpmyadmin-auth-plugin-unquoted

phpmyadmin-auth-plugin-unquoted

phpMyAdmin 5.2.3 - 高 - リモート - SQLi - 認証プラグイン識別子が引用符で囲まれていない

リポジトリを見る
3日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

Abraxas Labs - phpmyadmin-auth-plugin-unquoted

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  phpmyadmin-auth-plugin-unquoted

phpmyadmin-auth-plugin-unquoted

Class: SQLi Reach: Remote

phpMyAdmin 5.2.3 (RELEASE_5_2_3 / 962857e) - phpMyAdmin

パスワード変更はデフォルトで有効です。UserPassword.php は POST の authentication_plugin を、許可リストもクォートもなしに ALTER USER ... IDENTIFIED WITH へコピーします。同じステートメント内のユーザー名、ホスト、パスワードは escapeString を通ります。MySQL 8 では、POST されたプラグインが現在のものと異なる場合に WITH 句が出力されます。

サインイン済みの phpMyAdmin ユーザーが、パスワード変更フォームを通じて自身の ALTER USER に SQL を注入します。プラグインフィールド内の追加 SQL は SQL であり、プラグイン名ではありません。

IDCVE 未割当
ClassSQLi
ReachRemote (認証済み Cookie ログイン、パスワード変更有効)
CWECWE-89
CVSSHigh: 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
ProductphpMyAdmin
Affected5.2.3 タグ RELEASE_5_2_3 (962857e4f63d42e38f11ff4d63f5e722018add76)
Auth認証済み Cookie ログイン。$cfg['ShowChgPassword'] はデフォルトで true。認証タイプは config ではない
LicenseGNU Affero GPL v3.0
Lab127.0.0.1 のみ

攻撃者ができること

サインイン済みの phpMyAdmin ユーザーが、パスワード変更フォームを通じて自身の ALTER USER に SQL を注入できます。

権限メソッド / シンク偵察 / 完全性 / 可用性ラボ実証または推測
IDENTIFIED WITH に追加 SQL を送信POST index.php?route=/user-password と authentication_pluginphpMyAdmin が構築するステートメントの完全性ラボ実証済み。生の POST sha256_password /*PMA-AUTH-PLUGIN-UNQUOTED-WITNESS*/ が SQL ボックス内でクォートされずに現れる
その追加 SQL を MySQL に SQL としてパースさせる同じステートメントが mysqld に到達ユーザー接続の完全性ラボ実証済み。general log はプラグイン sha256_password を保持し、コメントを破棄した。このユーザーに CREATE USER がないため 1227
ブレイクアウトがパースされれば追加句や追加アカウント同じシンク。スタッククエリはドライバーに依存他アカウントの完全性推測。このラボでは 2 番目のステートメントを実行したり、別アカウントを作成したりしない
ユーザー追加/編集時の同じ連結Privileges.php の IDENTIFIED WITH / MariaDB の VIA付与者構築ステートメントの完全性推測される類似箇所。ラボの POST はパスワード変更のみ

この経路で成立しないもの: 未認証での利用 (Cookie ログイン必須)、config 認証 (パスワード変更が非表示)、RCE、MySQL 8 で GRANT なしのプラグイン変更が成功すること (CREATE USER なしでは 1227)。ユーザー名、ホスト、パスワードはエスケープされたままです。自身のパスワードには GRANT は不要です。残る問題はクォートされていないプラグインフィールドであり、自由なプラグイン差し替えではありません。

同じピン: WebAuthn CustomServer leftover。

発見の経緯

phpmyadmin/phpmyadmin RELEASE_5_2_3 をピン留めしました。PMASA-2025-1/2/3 はすでに 5.2.2 に含まれています。パスワード変更は依然として次のように構築されます:

return 'ALTER USER \'' . $dbi->escapeString($username)
    . '\'@\'' . $dbi->escapeString($hostname)
    . '\' IDENTIFIED WITH ' . $authPlugin . ' BY '

$authPlugin は $_POST['authentication_plugin'] です。MySQL 5.7.37+ と 8.0 は、プラグインが変更されない限り WITH を省略します。別の名前を POST すると、その句が復活します。

すでに記録済みの誤った道: MySQL 1227 を残存問題の失敗とみなすこと (これは追加 SQL がパースされた証拠です)、MySQL 8 での GRANT なしプラグイン変更を主張すること、config 認証を対象範囲内とみなすこと、リバースシェル。茶番です。

ラボ

python3 phpmyadmin-auth-plugin-unquoted-Abraxas-Labs.py
# or: cd lab && ./run.sh

対象は http://127.0.0.1:19260 のみ。イメージは phpmyadmin:5.2.3 と mysql:8.0。Compose プロジェクトは phpmyadmin-auth-plugin-unquoted。実行後にスタックは破棄されます。

appuser として Cookie ログイン。authentication_plugin=sha256_password /*PMA-AUTH-PLUGIN-UNQUOTED-WITNESS*/ で /user-password に POST。PMA SQL クエリボックス: ALTER USER 'appuser'@'%' IDENTIFIED WITH sha256_password /*PMA-AUTH-PLUGIN-UNQUOTED-WITNESS*/ BY '***'。MySQL general log はコメントをパースし、IDENTIFIED WITH 'sha256_password' を保存します。ユーザー名はクォートされています。

SUCCESS phpmyadmin-auth-plugin-unquoted how=live unquoted=yes escaped-user=yes plugin=sha256_password PMA-AUTH-PLUGIN-UNQUOTED-WITNESS

修正

SHOW PLUGINS からプラグイン名を許可リスト化します。POST を IDENTIFIED WITH、VIA、plugin= に絶対に補間しないでください。

参考資料

  • github.com/phpmyadmin/phpmyadmin タグ RELEASE_5_2_3 (962857e4f63d42e38f11ff4d63f5e722018add76)
  • libraries/classes/UserPassword.php
  • libraries/classes/Server/Privileges.php
  • 同じピン: PMA-5.2.3-WebAuthn-2FA
  • CWE-89

ライセンス

GNU Affero GPL v3.0。LICENSE を参照。ループバックラボのみ。無保証。

ツールをダウンロード