Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
tplink-smartplug — TP-Link WiFi 스마트 플러그 클라이언트 및 Wireshark 디섹터 | Kitploit
도구/GitHubGitHub/softscheck/tplink-smartplug
Packet Sniffing & AnalysisEncryption/Decryption ToolsIoT SecurityVulnerability AnalysisReverse EngineeringNetwork SecurityWireless SecurityHardware & IoT SecurityFirmware Analysis
GitHubsoftscheck/tplink-smartplug

tplink-smartplug

TP-Link WiFi 스마트 플러그 클라이언트 및 Wireshark 디섹터

1.2k2921년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

TP-Link WiFi 스마트플러그 클라이언트 및 Wireshark 디섹터

자세한 내용은 TP-Link HS110 리버스 엔지니어링을 참조하세요.

tplink_smartplug.py

TP-Link HS100, HS110 및 KP115 WiFi 스마트 플러그를 제어하기 위한 독점 TP-Link 스마트 홈 프로토콜의 파이썬 클라이언트입니다. 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 스마트 홈 프로토콜 패킷(TCP 포트 9999)을 복호화하는 Wireshark 디섹터입니다.

스크린샷

[!NOTE]
Wireshark 3.5.0 이상이 있는 경우 내장 디섹터를 사용할 수 있습니다.

설치

tplink-smarthome.lua 파일을 다음 위치에 복사하세요:

운영 체제설치 경로
Windows%APPDATA%\Wireshark\plugins
Linux/MacOS$HOME/.local/lib/wireshark/plugins

tddp-client.py

**TP-Link 장치 디버그 프로토콜(TDDP)**을 사용하여 TP-Link 장치와 통신하는 개념 증명 파이썬 클라이언트입니다.

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

-t를 사용하여 대상 IP를 제공합니다. 사용자 이름과 비밀번호를 제공할 수 있으며, 그렇지 않으면 기본적으로 admin/admin이 사용됩니다. 이는 반환된 데이터를 복호화하는 데 필요합니다.

명령은 두 문자 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
도구 다운로드
명령설명
antitheft구성된 도난 방지 규칙을 나열합니다
cloudinfo클라우드 연결 정보를 반환합니다
countdown구성된 카운트다운 규칙을 나열합니다
energy실시간 전압/전류/전력을 반환합니다
energy_reset에너지 측정값을 초기화합니다
info장치 정보를 반환합니다
ledoffLED 표시등을 끕니다
ledonLED 표시등을 켭니다
off플러그를 끕니다
on플러그를 켭니다
reboot장치를 재부팅합니다
reset장치를 공장 설정으로 초기화합니다
runtime_reset런타임 통계를 지웁니다
schedule구성된 스케줄 규칙을 나열합니다
time시스템 시간을 반환합니다
wlanscan주변 액세스 포인트를 검색합니다