tapo-c210/README.md

23 lines
1.6 KiB
Markdown
Raw Normal View History

2023-08-23 16:27:42 +02:00
# Tapo camera
2023-08-24 10:41:42 +02:00
IP Cameras are a nightmare for our privacy. For this reason I am reverse engineering a Tp-Link Tapo C210's firmware and its relative app in order to prevent them from sending any data to untrusted servers.
2023-08-28 09:45:05 +02:00
There are better resources than mine: see https://github.com/nervous-inhuman/tplink-tapo-c200-re and https://drmnsamoliu.github.io/.
In particular, I will focus on
* the reverse engineering of the app in order to be able to use the camera without a Tp-Link account;
* the reverse engineering of the firmware to strip off the portions of code sending the video stream to their servers.
2023-08-23 16:27:42 +02:00
## How these cameras were designed to work
2023-08-24 10:41:42 +02:00
1. You download a proprietary app (Tp-Link Tapo) and create an account without which the camera can not work;
2023-08-23 16:27:42 +02:00
2. You use said app to instruct the camera to use a specified Wi-Fi AP;
2023-08-24 10:41:42 +02:00
3. The camera sends the video stream not end-to-end encrypted to servers we have no control over;
4. You have the possibility to update the camera's firmware through its app. This expands the attack surface for a hacker or from the company itself to push a malicious update.
2023-08-23 16:27:42 +02:00
## What we can do
2023-08-27 22:23:21 +02:00
As of today, we have:
2023-08-28 09:45:05 +02:00
* Libre NVR solutions (iSpy, ZoneMinder, ...);
2023-08-28 17:54:06 +02:00
* A collection of open source software to control these cameras through [undocumented APIs](https://github.com/xfarrow/tapo-camera/tree/main/secret-apis), see [my collection](https://github.com/stars/xfarrow/lists/tapo-cameras).
2023-08-27 22:23:21 +02:00
2023-08-28 17:54:06 +02:00
Nonethless, you still need the proprietary app and a Tp-Link account the first time you boot the camera up and NVRs will not stop the camera from sending the video stream to their servers without using a firewall.
2023-08-23 16:27:42 +02:00
This repository aims to resolve these issues.