jericjan/v380-audio-player
GitHub: jericjan/v380-audio-player
通过逆向 V380 摄像头的通信协议,实现向摄像头推送并播放自定义音频文件的工具。
Stars: 8 | Forks: 4
# V380 音频播放器
在你的 V380 摄像头上播放音频,为什么不呢
# 构建
确保你已安装 Python 3.9 和 [uv](https://github.com/astral-sh/uv)
1. 克隆此仓库
2. `cd` 进入你存放该项目的目录
3. 运行 `uv run main.py` 来安装依赖(如果缺失)并运行程序
# 使用说明
- 将你的音频文件放在名为 `audio` 的子文件夹中。它应为 16-bit 8khz 单声道 WAV 格式。如果你有 ffmpeg,可以使用 `ffmpeg -i in.mp3 -ac 1 -ar 8000 -sample_fmt s16 out.wav` 进行转换。
- 创建一个 `data.yaml` 文件并填入你的摄像头数据。你可以参考 `data.EXAMPLE.yaml` 来了解格式。
- 运行程序。你可以选择多个摄像头,并选择要播放的音频文件。
# 获取凭据
运行 `uv run extract_creds.py` 来查找用于你摄像头的特定凭据。它实际上与你用来登录应用程序本身的凭据不同,特别是在版本 32 上。一种简单的方法是在 Android 手机上安装 PCAPdroid 和 V380。
1. 在 PCAPdroid 中将 V380 设置为目标应用
2. 点击 "Ready" 开始追踪
3. 打开 V380,然后打开你想要的摄像头
4. 返回 PCAPdroid 并停止追踪
5. 在 connections 标签页中找到该请求。它位于 TCP 端口 8800 上,并确保你也是以 LAN 模式连接到摄像头。在 payload 标签页中,查看第一个请求,看看它是否以 `8f 04` 开头。如果是,那就是正确的文件。点击下载图标并选择 `Raw bytes`。
6. 在你的 PC 上,运行 `uv run extract_creds.py` 并粘贴该文件的位置。
7. 它应该会打印出用户名和密码。你可以将它们添加到 `data.yaml` 中。
# 鸣谢
本程序的实现得益于以下工具和资源。如果你想深入了解 Android 应用的逆向工程,请务必查看它们。
- [jadx](https://github.com/skylot/jadx/)
- [GDA](https://github.com/charles2gan/GDA-android-reversing-Tool/)
- [Ghidra](https://github.com/NationalSecurityAgency/ghidra)
- [Frida](https://frida.re/)
- [apktool](https://apktool.org/)
- https://cyberlinksecurity.ie/vulnerabilities-to-exploit-a-chinese-ip-camera/
- [frida-dexdump](https://github.com/hluwa/frida-dexdump)
标签:Python, StruQ, 云资产清单, 摄像头, 无后门, 物联网, 网络抓包, 逆向工具, 逆向工程, 音频播放