抖音与TikTok的安全性和隐私分析 - citizenlab


从我们在TikTok和抖音之间发现的异同来看,字节跳动的策略似乎是拥有一个通用的代码库,然后对其进行自定义以适应不同的市场需求。从经济角度看,这种策略是有意义的。TikTok的两种变体的区别(一种是针对东亚和东南亚,另一种是针对世界其他地区的)表明,字节跳动重用了这一策略,进一步划分了不同地区的需求。Trill(针对东亚和东南亚)与Musically(针对其他地方)的区别也进一步表明字节跳动对东亚和东南亚的重视。
在整个研究过程中,我们观察到了该策略的使用。我们发现的这些示例还显示了应用于通用代码库的各种定制级别。诸如选择不同的日志服务器之类的定制是通过通用代码库中的内部配置值实现的。某些自定义由服务器返回的值决定,例如“ Share to Facebook Story(共享到Facebook Story)”功能。可能会引起审查的功能模块已被完全删除,例如,动态代码加载支持模块仅在都印中存在,而在TikTok中不存在。另一类自定义项可以完全在服务器端实现,例如搜索检查。即使TikTok和抖音中的搜索检查模块预定义了可以应用的同一组限制,
从我们发现的案例来看,这些定制似乎被适当地应用了。在TikTok中,自定义通用代码库的最终结果似乎是创建了一种基本上遵循国际行业规范的产品,因为我们没有发现像抖音那样的任何不良功能,也没有发现隐私,安全性和检查做法的与TikTok的竞争对手例如Facebook明显差异。
但是,TikTok也并非完全没有隐私,安全和审查方面的问题。。如我们所示,ByteDance依赖于通用代码库的这些不同程度的自定义,以适应不同的市场需求。无论有意还是无意,这些定制都可能以不同的难度恢复。另一方面,我们已经证明TikTok确实包含一些最初为抖音编写的休眠代码,并且TikTok的服务器返回的配置值确实指示了它的某些行为。我们担心TikTok的服务器返回的配置值可能会启用那些为抖音编写的休眠代码。
 
流量拦截和分析工具设置
我们的流量拦截和分析设置包括以下组件:

  • 植根于Magisk的系统
  • 使用的Magisk模块:
    • giacomoferretti的叉子始终信任用户证书v0.4
    • 马吉斯克·弗里达(MagiskFrida)12.8.17-1
    • Riru –核心v19.7
    • Riru – EdXposed v0.4.5.1_beta(4463)(YAHFA)
  • 使用的EdXposed模块:
    • TrustMeAlready(com.virb3.trustmealready)1.11
    • XPrivacyLua(eu.faircode.xlua)1.27
  • 在测试电话上安装了拦截服务器的SSL根CA
  • 测试电话与拦截服务器共享WiFi局域网,将测试电话配置为使用拦截服务器作为系统范围的代理
  • 拦截服务器:Burp Suite社区版v2020.1

测试环境
  • Android 9(LineageOS 16)
  • 系统区域设置为繁体中文

 
开放技术基金通过信息控制奖学金项目资助了这项研究。Mari Zhou的图形设计。特别感谢Jeffrey Knockel,Miles Kenyon,Nishihata Masashi,Lotus Ruan和Adam Senft。该项目由市民实验室主任Ron Deibert监督。
 
更详细的测试细节点击标题进入。