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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/softscheck/tplink-smartplug
パケットスニッフィングと分析暗号化/復号化ツールIoTセキュリティ脆弱性分析リバースエンジニアリングネットワークセキュリティワイヤレスセキュリティハードウェアとIoTセキュリティファームウェア解析
GitHubsoftscheck/tplink-smartplug

tplink-smartplug

TP-Link WiFi SmartPlug クライアントと Wireshark ディセクタ

1.2k2921年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見る

TP-Link WiFi SmartPlug クライアントと Wireshark ディセクタ

詳しい話は、Reverse Engineering the TP-Link HS110 を参照してください。

tplink_smartplug.py

TP-Link HS100、HS110、KP115 WiFi スマートプラグを制御するための、プロプライエタリな TP-Link Smart Home プロトコル用 Python クライアントです。SmartHome プロトコルは TCP ポート 9999 で動作し、セキュリティを提供しない単純な XOR オートキー暗号化を使用します。

認証メカニズムはなく、コマンドはデバイスの状態(設定済み/未設定)に関係なく受け入れられます。

コマンドは JSON でフォーマットされます。例:

{"system":{"get_sysinfo":null}}

null の代わりに {} と書くこともできます。コマンドはネストできます。例:

{"system":{"get_sysinfo":null},"time":{"get_time":null}}

コマンドの完全なリストは tplink-smarthome-commands.txt にあります。

使用法

./tplink_smartplug.py -t <ip> [-c <cmd> || -j <json>]

ターゲット IP は -t で指定し、送信するコマンドは -c または -j で指定します。-c フラグで使用できるコマンド:

ルールの作成や編集など、より高度なコマンドは、-j フラグでコマンドの完全な JSON 文字列を指定して発行できます。コマンドの包括的なリストについては、tplink-smarthome-commands.txt を参照してください。

[!TIP] 応答をプリティプリントするには、quiet パラメータ(-q)を使用して、出力を jq にパイプします。例: ./tplink_smartplug.py -t 192.168.178.49 -c info -q | jq

Wireshark ディセクタ

TP-Link Smart Home プロトコルのパケット(TCP ポート 9999)を復号するための Wireshark ディセクタです。

ScreenShot

[!NOTE]
Wireshark > 3.5.0 をお持ちの場合は、組み込みのディセクタを使用できます。

インストール

tplink-smarthome.lua を次の場所にコピーします:

OSInstallation Path
Windows%APPDATA%\Wireshark\plugins
Linux/MacOS$HOME/.local/lib/wireshark/plugins

tddp-client.py

TP-Link Device Debug Protocol (TDDP) を使用して TP-Link デバイスと通信するための概念実証(proof-of-concept)Python クライアントです。

TDDP は、ルーター、アクセスポイント、カメラ、スマートプラグなど、幅広い TP-Link デバイスに実装されています。TDDP はデバイスの設定を読み書きし、特別なコマンドを発行できます。コマンドの送信には UDP ポート 1040 が使用され、応答は UDP ポート 61000 で返されます。このクライアントは、TP-Link Archer C9 ワイヤレスルーターと TP-Link HS-110 WiFi スマートプラグでテストされています。

TDDP は、特許 CN102096654A に記載されているバイナリプロトコルです。

コマンドは、Type および SubType ヘッダーフィールドに適切な値を設定して発行します。返されるデータは DES 暗号化されており、復号にはデバイスのユーザー名とパスワードが必要です。同様に、デバイスに書き込む設定データは暗号化して送信する必要があります。DES キーは、ユーザー名とパスワードを連結した MD5 ハッシュを取得し、その MD5 ハッシュの最初の 8 バイトを取ることで構築されます。

使用法

./tddp-client.py -t <ip> -u username -p password -c 0A

ターゲット IP は -t で指定します。ユーザー名とパスワードを指定できます。指定しない場合、デフォルトとして admin/admin が使用されます。これらは、返されるデータを復号するために必要です。

コマンドは 2 文字の 16 進文字列、例: -c 0A で指定します。コマンドが読み出すデータの種類は、TP-Link デバイスによって異なります。

例

デフォルト設定の Archer C9 で WAN リンクステータスを読み取ると、リンクがダウン(0)であることがわかります。

root@kitploit:~
./tddp-client.py -t 192.168.0.1 -c 0E
Request Data: Version 02 Type 03 Status 00 Length 00000000 ID 0001 Subtype 0e
Reply Data:   Version 02 Type 03 Status 00 Length 00000018 ID 0001 Subtype 0e
Decrypted:    wan_ph_link 1 0
ツールをダウンロード
CommandDescription
antitheft設定されている盗難防止ルールを一覧表示します
cloudinfoクラウド接続情報を返します
countdown設定されているカウントダウンルールを一覧表示します
energyリアルタイムの電圧/電流/電力を返します
energy_resetエネルギー メーターをリセットします
infoデバイス情報を返します
ledoffLED インジケータをオフにします
ledonLED インジケータをオンにします
offプラグをオフにします
onプラグをオンにします
rebootデバイスを再起動します
resetデバイスを工場出荷時設定にリセットします
runtime_reset稼働時間の統計情報を消去します
schedule設定されているスケジュールルールを一覧表示します
timeシステム時刻を返します
wlanscan近くのアクセスポイントをスキャンします