DoodleCloud ☁️
将 Instagram 变成你的个人无限云存储。
DoodleCloud 是一个概念验证 (PoC) 工具,它利用 Instagram 的内部 API 免费存储无限文件。通过将文件转换为“视觉噪点”图像并以 DM 涂鸦形式上传,我们可以绕过文件类型限制,将 Instagram 的服务器用作后端。

🚀 工作原理
- 漏洞原理: Instagram 允许用户在私信 (DM) 中发送“涂鸦”。这些涂鸦本质上是托管在 Facebook CDN 上的 PNG 图像。
- 编码: DoodleCloud 将任意文件(MP3、APK、ZIP 等)的二进制数据转换为像素,生成“视觉噪点”PNG 图像。
- 分块: 大文件被分割成 20MB 的块,以确保高可靠性并绕过分辨率限制。
- 存储: 这些图像被上传到私密的 DM 线程中。文件元数据(文件名、块 ID)存储在 PostgreSQL 数据库中。
- 检索: 当你下载文件时,工具会获取图像,将像素重新读取为字节,并将它们拼接起来,完美还原原始文件。
📦 功能特性
- 无限存储: 只要 Instagram 不修补该 API,就没有容量上限。
- 任意文件类型: 可存储
.exe、.apk、.mp4、.zip 等。
- 数据库索引: 使用 PostgreSQL(推荐 NeonDB)远程跟踪你的文件。
- 加密: 通过图像转换实现基础混淆。
- 双界面:
- CLI: 快速的终端管理方式。
- GUI: 现代 Web 仪表盘。
🛠️ 安装
-
克隆仓库:
git clone https://github.com/depreciating/DoodleCloud.git
cd DoodleCloud
-
安装依赖:
pip install -r requirements.txt
-
配置环境:
在根目录下创建名为 config.env 的文件,并填入你的凭据:
# Instagram 凭据
INSTA_USER=your_username
INSTA_PASS=your_password
# PostgreSQL 数据库(Neon.tech 免费且推荐)
DB_HOST=your-db-host.neon.tech
DB_NAME=neondb
DB_USER=your_db_user
DB_PASS=your_db_password
DB_PORT=5432
🖥️ 使用方法
选项 A:图形界面 (GUI)
推荐使用 DoodleCloud 的方式。
- 启动 Web 服务器:
- 在浏览器中打开:
http://127.0.0.1:5000
- 首次运行: 点击用户名旁边的 齿轮图标 ⚙️,选择一个目标 DM 线程(与自己的小号或创建一个群组)。
- 上传: 将文件拖放到仪表盘中。
- 下载: 选择文件并点击下载。
选项 B:命令行 (CLI)
适用于高级用户或无头服务器。
- 运行 CLI 工具:
- 按照交互式菜单进行上传、检索或删除文件。
- 注意:要上传的文件必须放在
upload/ 文件夹中。
- 注意:下载的文件会出现在
download/ 文件夹中。
⚠️ 免责声明与警告
本项目是一个概念验证 (PoC) 隐写实验,仅用于教育目的。
- 服务条款: 使用此工具违反了 Instagram/Meta 的服务条款。自动使用涂鸦 API 并非官方支持的行为,可能导致账户立即被暂停或永久封禁。
- 请使用小号: 切勿使用你的主 Instagram 账户。请在测试或使用过程中使用专用的小号。
- 数据可靠性: 这是一种实验性存储方法,不能替代专业云服务。Instagram 随时可能修补此漏洞、清除 DM 缓存或删除“涂鸦”,且不另行通知。切勿上传你无法承受丢失风险的数据。
- 隐私与加密: 虽然文件被转换为视觉像素,但默认情况下并未加密。Meta 的自动化系统仍可能分析这些图像。如需真正保护隐私,你必须在将文件上传到系统之前先在本地进行加密。
- 不承担任何责任: 作者不对因使用本软件而导致的账户被封、数据丢失或任何法律后果负责。
🤝 贡献
欢迎贡献!如果你发现了 bug、想要添加新功能或改进文档,欢迎提交 issue 或 pull request。
如果你有任何问题或想讨论本项目的相关话题,请通过以下平台与我联系。
👨💻 致谢
作者:Depreciating