
CVE-2022-45599 の概念実証:Aztech WMB250ACルーターのlogin.phpにおけるPHP型ジャグリング脆弱性により、細工されたMD5ハッシュで管理者認証をバイパスできる。
| CVE URL: | https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-45599 |
|---|---|
| 報告者: | TanYeeTat |
| 製品: | Aztech WMB250AC ワイヤレスメッシュルーター |
| 影響を受けるファームウェア: | 2020年リリース (topaz-linux.lzma.img) |
| ファームウェアのダウンロード: | クローズドソース |


脆弱性は、2022年6月7日に [email protected] 経由で Aztech のセキュリティチームに報告されましたが、2023年2月21日現在、応答はありません。
PHP の型のゆるい比較(Type Juggling)の脆弱性が、ポート80の login.php Web ページの password 認証フィールドに存在します。これにより、攻撃者は管理者のパスワードを知らなくても認証を通過できます。ただし、これは発生確率が非常に低く、管理者の MD5 ハッシュ化されたパスワードが 0e で始まり、その後に数字が続く必要があります。PHP Type Juggling 攻撃の影響を受ける平文パスワードと対応する MD5 ハッシュの包括的なリストを以下に示します。また、詳細を解説している参考ブログも併せて記載します。
要約: login.php 内の認証チェックを行う PHP ソースコードは、厳密比較(===、等号3つ)ではなく、緩い比較(==、等号2つ)を使用しています。

管理者ユーザーのパスワードを、MD5 ハッシュ化した結果が 0e で始まり数字が続くような平文の値に設定します。
PJNPDWY, MD5: 0e291529052894702774557631701704
注: 無効なハッシュ
0e123456789012345678901234567890でも動作します。
Web サービス上で管理者ユーザーとして、ユーザー名 admin と MD5 Type Juggling List にある任意の平文パスワード(例: 240610708)を使用して認証します。