挖洞经验 | 从Instagram用户数据备份功能中恢复出已删除信息
字数 1535 2025-08-15 21:31:50

Instagram数据备份功能隐私泄露漏洞分析报告

漏洞概述

本报告详细分析了Instagram(Facebook旗下)数据备份功能中存在的一个严重隐私泄露漏洞,该漏洞允许用户通过"数据下载"功能恢复已删除多年的照片和聊天记录。漏洞类型属于应用逻辑型隐私泄露(Bug),最终被Facebook确认为有效漏洞并奖励$6000。

漏洞发现过程

初始发现

  • 在Instagram个人设置中发现了"资料下载"备份功能
  • 该功能位于:个人设置(Setting) > 账号(Accounts) > 隐私与安全(Privacy and Security) > 资料下载
  • 功能允许用户备份包括登录记录、粉丝和关注者、交流消息、照片、搜索支付记录等所有个人数据

操作步骤

  1. 进入"查看账户数据"(View Account Data)
  2. 执行"要求下载"操作
  3. 输入必要凭据信息
  4. 等待约2小时收到主题为"Your Instagram Data"的邮件
  5. 点击邮件链接跳转至Instagram登录页面
  6. 输入密码后下载zip格式备份包

异常发现

  • 解压备份包后发现2013年已删除的照片(6年前删除)
  • 在Message.json文件夹中发现已删除的聊天记录
  • 四五年前聊天记录中的图片/附件仍可通过网页链接访问

漏洞技术分析

核心问题

  • Instagram的"删除"功能并未真正从系统中移除用户数据
  • 已删除数据仍保留在备份系统中
  • 数据删除与备份系统之间存在逻辑不一致

Facebook的初步解释

  1. 内容分发网络(CDN)导致删除后仍可通过链接访问
  2. 官方数据存储策略声称完全删除需要90天时间
    • 参考链接:https://www.facebook.com/policy/

实际矛盾点

  • 用户能恢复5-6年前删除的照片,远超过90天期限
  • 删除操作在前端立即生效,但后端数据持久化存储

漏洞上报与处理过程

沟通时间线

  • 2019.10.13:漏洞初报给Facebook
  • 2019.10.15:被初评为一般的信息级问题
  • 2019.10.22:Facebook重新评估
  • 2019.11.4:完成Bug分类
  • 2020.2.7:获得$6000奖励
  • 2020.7.7:漏洞修复完成

关键沟通节点

  1. Facebook最初认为不属于隐私或安全问题
  2. 研究者解释漏洞对用户隐私和数据完整性的影响
  3. 提供额外证据(不同账号验证、具体时间点)
  4. Facebook承认评估错误并重新分类
  5. 最终确认为有效漏洞并给予奖励

漏洞影响评估

影响范围

  • 所有使用Instagram数据备份功能的用户
  • 影响数据类型:
    • 已删除照片(可追溯至多年前)
    • 已删除聊天记录及附件

严重程度

  • 高:违反数据最小化原则和用户隐私期望
  • 破坏用户对"删除"功能的信任
  • 可能导致敏感信息意外泄露

修复建议

技术层面

  1. 实现真正的数据删除机制,确保删除操作同步到备份系统
  2. 建立数据生命周期管理策略,确保过期数据被彻底清除
  3. 对备份系统进行定期清理,移除已删除数据

流程层面

  1. 明确数据保留政策并准确传达给用户
  2. 建立更严格的漏洞评估流程
  3. 加强前后端数据一致性验证

经验总结

  1. 功能测试要点:对于数据备份/恢复功能,必须测试已删除数据的处理方式
  2. 时间维度测试:验证不同时间跨度下删除数据的可恢复性
  3. 厂商沟通技巧:当厂商初步拒绝时,应提供更详细的影响分析和复现步骤
  4. 漏洞价值评估:涉及用户隐私的数据处理问题通常具有较高价值

附录

测试验证方法

  1. 删除特定数据(照片/消息)并记录时间点
  2. 等待不同时长后请求数据备份
  3. 检查备份中是否包含已删除数据
  4. 尝试通过备份中的链接访问已删除内容

相关策略参考

Facebook数据存储政策:https://www.facebook.com/policy/

Instagram数据备份功能隐私泄露漏洞分析报告 漏洞概述 本报告详细分析了Instagram(Facebook旗下)数据备份功能中存在的一个严重隐私泄露漏洞,该漏洞允许用户通过"数据下载"功能恢复已删除多年的照片和聊天记录。漏洞类型属于应用逻辑型隐私泄露(Bug),最终被Facebook确认为有效漏洞并奖励$6000。 漏洞发现过程 初始发现 在Instagram个人设置中发现了"资料下载"备份功能 该功能位于:个人设置(Setting) > 账号(Accounts) > 隐私与安全(Privacy and Security) > 资料下载 功能允许用户备份包括登录记录、粉丝和关注者、交流消息、照片、搜索支付记录等所有个人数据 操作步骤 进入"查看账户数据"(View Account Data) 执行"要求下载"操作 输入必要凭据信息 等待约2小时收到主题为"Your Instagram Data"的邮件 点击邮件链接跳转至Instagram登录页面 输入密码后下载zip格式备份包 异常发现 解压备份包后发现2013年已删除的照片(6年前删除) 在Message.json文件夹中发现已删除的聊天记录 四五年前聊天记录中的图片/附件仍可通过网页链接访问 漏洞技术分析 核心问题 Instagram的"删除"功能并未真正从系统中移除用户数据 已删除数据仍保留在备份系统中 数据删除与备份系统之间存在逻辑不一致 Facebook的初步解释 内容分发网络(CDN)导致删除后仍可通过链接访问 官方数据存储策略声称完全删除需要90天时间 参考链接:https://www.facebook.com/policy/ 实际矛盾点 用户能恢复5-6年前删除的照片,远超过90天期限 删除操作在前端立即生效,但后端数据持久化存储 漏洞上报与处理过程 沟通时间线 2019.10.13 :漏洞初报给Facebook 2019.10.15 :被初评为一般的信息级问题 2019.10.22 :Facebook重新评估 2019.11.4 :完成Bug分类 2020.2.7 :获得$6000奖励 2020.7.7 :漏洞修复完成 关键沟通节点 Facebook最初认为不属于隐私或安全问题 研究者解释漏洞对用户隐私和数据完整性的影响 提供额外证据(不同账号验证、具体时间点) Facebook承认评估错误并重新分类 最终确认为有效漏洞并给予奖励 漏洞影响评估 影响范围 所有使用Instagram数据备份功能的用户 影响数据类型: 已删除照片(可追溯至多年前) 已删除聊天记录及附件 严重程度 高:违反数据最小化原则和用户隐私期望 破坏用户对"删除"功能的信任 可能导致敏感信息意外泄露 修复建议 技术层面 实现真正的数据删除机制,确保删除操作同步到备份系统 建立数据生命周期管理策略,确保过期数据被彻底清除 对备份系统进行定期清理,移除已删除数据 流程层面 明确数据保留政策并准确传达给用户 建立更严格的漏洞评估流程 加强前后端数据一致性验证 经验总结 功能测试要点 :对于数据备份/恢复功能,必须测试已删除数据的处理方式 时间维度测试 :验证不同时间跨度下删除数据的可恢复性 厂商沟通技巧 :当厂商初步拒绝时,应提供更详细的影响分析和复现步骤 漏洞价值评估 :涉及用户隐私的数据处理问题通常具有较高价值 附录 测试验证方法 删除特定数据(照片/消息)并记录时间点 等待不同时长后请求数据备份 检查备份中是否包含已删除数据 尝试通过备份中的链接访问已删除内容 相关策略参考 Facebook数据存储政策:https://www.facebook.com/policy/