“จากกล้องดูหมา สู่การแฮก Tapo — เมื่อความอยากรู้กลายเป็นการเจาะระบบ TP-Link แบบเต็มขั้น”

Joshua Kennedy เจ้าของบล็อกสายเทคนิค ได้เล่าประสบการณ์ที่เริ่มต้นจากความตั้งใจง่าย ๆ คือ “อยากรู้ว่าหมาตัวเองทำอะไรตอนเขาไม่อยู่บ้าน” ด้วยการซื้อกล้อง Tapo ราคาประหยัดจาก TP-Link แต่สิ่งที่ตามมาคือการเจาะระบบแบบเต็มรูปแบบ ตั้งแต่การดักฟังการเชื่อมต่อ ไปจนถึงการถอดรหัส API และเขียนสคริปต์ควบคุมกล้องเอง

กล้อง Tapo รุ่นนี้มีปัญหาในการตั้งค่าผ่านระบบ Frigate และไม่รองรับเสียงสองทางผ่านโปรโตคอลมาตรฐาน RTSP ต้องใช้ API เฉพาะของ TP-Link เท่านั้น ซึ่งไม่มีเอกสารเผยแพร่ ทำให้ Kennedy ต้องเริ่มแกะรอยการทำงานของแอป Tapo ด้วยการใช้เทคนิค Man-in-the-Middle (MITM) ดักฟังการสื่อสารระหว่างแอปกับกล้อง

เขาใช้เครื่องมือ frida เพื่อหลบเลี่ยงการป้องกัน certificate pinning และดักจับข้อมูล TLS ที่ถูกเข้ารหัส จากนั้นจึงพบว่า กล้องมีการล็อกอินด้วยรหัสผ่านเริ่มต้นที่ไม่เกี่ยวข้องกับบัญชีคลาวด์ และยังมีช่องทาง API ที่ใช้ securePassthrough เพื่อซ่อนข้อมูลจากผู้ใช้ทั่วไป

เมื่อถอดรหัส APK ของแอป Tapo เขาพบรหัสผ่านเริ่มต้นคือ TPL075526460603 ซึ่งสามารถใช้ล็อกอินและควบคุมกล้องได้ทันที โดยไม่ต้องผ่านระบบคลาวด์ของ TP-Link เขาจึงเขียนสคริปต์ tapo_onboard.sh เพื่อควบคุมกล้องโดยตรง เช่น เปลี่ยนรหัสผ่าน, ปิดโลโก้ OSD, เปิด RTSP/ONVIF และเชื่อมต่อ Wi-Fi

การวิเคราะห์เพิ่มเติมพบว่า TP-Link ใช้ระบบเข้ารหัสแบบผสม ทั้ง SHA-256 และ MD5 และมีการใช้ public key สองชุดที่ไม่สอดคล้องกัน ซึ่งสะท้อนถึงการออกแบบระบบที่ไม่เป็นระเบียบ และอาจมีช่องโหว่ด้านความปลอดภัย

https://kennedn.com/blog/posts/tapo/
📷 “จากกล้องดูหมา สู่การแฮก Tapo — เมื่อความอยากรู้กลายเป็นการเจาะระบบ TP-Link แบบเต็มขั้น” Joshua Kennedy เจ้าของบล็อกสายเทคนิค ได้เล่าประสบการณ์ที่เริ่มต้นจากความตั้งใจง่าย ๆ คือ “อยากรู้ว่าหมาตัวเองทำอะไรตอนเขาไม่อยู่บ้าน” ด้วยการซื้อกล้อง Tapo ราคาประหยัดจาก TP-Link แต่สิ่งที่ตามมาคือการเจาะระบบแบบเต็มรูปแบบ ตั้งแต่การดักฟังการเชื่อมต่อ ไปจนถึงการถอดรหัส API และเขียนสคริปต์ควบคุมกล้องเอง กล้อง Tapo รุ่นนี้มีปัญหาในการตั้งค่าผ่านระบบ Frigate และไม่รองรับเสียงสองทางผ่านโปรโตคอลมาตรฐาน RTSP ต้องใช้ API เฉพาะของ TP-Link เท่านั้น ซึ่งไม่มีเอกสารเผยแพร่ ทำให้ Kennedy ต้องเริ่มแกะรอยการทำงานของแอป Tapo ด้วยการใช้เทคนิค Man-in-the-Middle (MITM) ดักฟังการสื่อสารระหว่างแอปกับกล้อง เขาใช้เครื่องมือ frida เพื่อหลบเลี่ยงการป้องกัน certificate pinning และดักจับข้อมูล TLS ที่ถูกเข้ารหัส จากนั้นจึงพบว่า กล้องมีการล็อกอินด้วยรหัสผ่านเริ่มต้นที่ไม่เกี่ยวข้องกับบัญชีคลาวด์ และยังมีช่องทาง API ที่ใช้ securePassthrough เพื่อซ่อนข้อมูลจากผู้ใช้ทั่วไป เมื่อถอดรหัส APK ของแอป Tapo เขาพบรหัสผ่านเริ่มต้นคือ TPL075526460603 ซึ่งสามารถใช้ล็อกอินและควบคุมกล้องได้ทันที โดยไม่ต้องผ่านระบบคลาวด์ของ TP-Link เขาจึงเขียนสคริปต์ tapo_onboard.sh เพื่อควบคุมกล้องโดยตรง เช่น เปลี่ยนรหัสผ่าน, ปิดโลโก้ OSD, เปิด RTSP/ONVIF และเชื่อมต่อ Wi-Fi การวิเคราะห์เพิ่มเติมพบว่า TP-Link ใช้ระบบเข้ารหัสแบบผสม ทั้ง SHA-256 และ MD5 และมีการใช้ public key สองชุดที่ไม่สอดคล้องกัน ซึ่งสะท้อนถึงการออกแบบระบบที่ไม่เป็นระเบียบ และอาจมีช่องโหว่ด้านความปลอดภัย https://kennedn.com/blog/posts/tapo/
0 Comments 0 Shares 23 Views 0 Reviews