公民实验室2020年5月7日发布报告指出,中国最流行的社交媒体软件微信是对平台上的文档和图像内容实施监控,并使用监控所得的数据训练其审查系统。本文是对该报告的概述,以及与研究团队的一些常见问答。

研究摘要

微信监控非中国大陆区注册账号,并利用非中国大陆区账号之间的聊天记录训练微信针对中国大陆账号的审查系统。

此前我们的研究发现微信针对使用中国大陆手机号码注册的账号进行审查。不在中国大陆的用户可能会认为微信针对政治内容的审查和监控并不会影响到他们。然而,在最新的研究中,我们发现微信国际账号之间的通讯会被监控,通讯中的政治敏感内容会被用于训练和扩大微信针对中国大陆账号的审查。我们通过技术分析,发现此监控针对通讯中的文档和图像内容。目前我们无法得知文字信息是否受到同样的监控,我们提示用户存在这种可能性。

监控和审查均不会提示用户,缺乏透明。

本研究显示微信对中国大陆账号以及非中国大陆账号实施内容监控。非中国大陆区账号之间的内容监控几乎无法被察觉,除非用户自行进行审查测试,而大部分个人用户并不会主动测试。

微信对外公开的政策协议文件,个人信息请求,及微信的隐私专员均没有表明或解释微信会进行内容监控。

本报告对微信公开的政策协议文件进行了内容分析,发起了数据主体访问请求,并向腾讯数据保护专员提出了相关问题。我们试图通过这些研究方法,了解腾讯公司的政策文件是否明确授权了我们发现的监控行为,以及有关专员能否对这些行为作出解释。以上方法均无法为我们在技术测试中发现的监控行为提供合理充分的解释。

与研究团队的常见问答

微信如何进行审查?

此前我们的研究发现微信针对使用中国大陆手机号码注册的账号进行关键词和图片审查。

微信通过服务器端进行内容审查,审查机制存储在服务器上。信息从一方微信用户发送到另一方时,它会途径腾讯(微信的母公司)管理的服务器,服务器在把信息传递到接收方时会先检查该信息是否含有敏感词。

图一: 客户端审查示意图

含有敏感词的信息会被屏蔽,微信不会对信息发送方或接收方进行屏蔽提示。以下截屏显示的是两个中国大陆注册微信账号的聊天界面。一个账号试图发送关键词“法轮功”,该关键词被屏蔽,但没有任何信息提示发送者或接收者信息被屏蔽了。

图二: 一个账号试图发送关键词“法轮功”,该关键词被屏蔽,但没有任何信息提示发送者或接收者信息被屏蔽了。

中国大陆微信账号与非中国大陆微信大陆账号有什么区别?

中国大陆账号指的是最初注册时使用中国大陆手机号码注册的微信账号。非中国大陆账号指的是最初注册时使用任何除中国大陆以外的手机号码注册的微信账号(比如使用加拿大或者美国手机号码注册的微信号)。中国大陆注册账号适用的是中国大陆地区管辖区(主要是深圳市)的用户协议,并且会受到内容审查。非中国大陆账号适用的是除中国大陆以外的管辖区(主要是新加坡)的用户协议。此前研究指出,非中国大陆账号不受审查影响。不过我们最新的研究表明,非中国大陆账号之间的文档和图像传输会受到监控,含有政治敏感内容的文档和图像会被添加到针对中国大陆账号的审查列表中。

你是如何发现非中国大陆账号存在被监控行为的?

我们曾被问非中国大陆注册账号是否只要不与中国注册账号通讯就不存在针对政治内容的监控。根据我们的研究,非中国大陆注册账号之间的通讯不受审查,所以我们当时的回答是“我们认为非中国大陆注册账号之间的通讯也不受监控。”然后我们开始好奇,如何用科学的方法测试是否不存在监控?

监控甚少无缘无故地发生,很多时候实施监控是为了其他目的,比如用来完善日后的审查机制等。基于此前的研究,我们知道微信如何通过监控图像和文件来自动过滤敏感内容。研究非中国大陆注册账号的困难在于非中国大陆注册账号之间不存在内容审查,所以要测试它们是否受监控我们必须使用两个不同的聊天环境:第一个是非中国大陆注册账号之间的聊天环境,用以触发监控;第二个是含中国大陆注册账号在内的聊天环境,用于监测审查变化。当我们在仅含有非中国大陆账号的聊天环境中发送政治敏感内容,我们观察到第二个聊天环境中审查内容有所增多,这表明第一个聊天环境中的内容是受到监控的,即使它并不含有任何中国大陆账号。

微信如何分析,标示,并存储敏感文件?

文件会被扫描是否存在敏感文字。图像也会被扫描是否含有敏感文字,此外,图像还会被与系统现有的敏感图库比对,分析目标图片是否与图库内的其他图片相似。如果文件被系统定义为政治敏感,文件的MD5值会被标示。微信会储存这个MD5值,以备下次更有效率地过滤这些文件。

微信通过消息摘要算法版本5 (MD5 hash)来迅速辨识并标志敏感内容。MD5值是什么?

MD5是一种数字指纹。MD5算法可以用来把体积大的文件缩小至一个“哈希值”。哈希值通常由一个短的随机字母和数字组成的字符串组成。按照MD5算法的不可逆性和唯一性设计,不同的文件应该拥有不同的MD5值,但实际上该算法在漏洞。由于微信使用MD5算法存储敏感文件的哈希值,我们利用了算法的漏洞来设计本研究。我们把两份内容不同的图像文件修改成一样的哈希值,其中一张图像含有政治敏感信息,另一张是普通的图像文件。我们的测试显示,敏感图像在非中国大陆注册账号中传输后,拥有一样哈希值但是不含有敏感信息的图像在中国大陆注册账号中被审查了。测试结果表明,非中国大陆注册账号间的通讯必然存在监控,因为非敏感图像的数字指纹不可能被微信系统标示成敏感信息。

下图展示了把文档或图像转换为MD5值的过程。在下图的例子中,两张不同的图像通过加密算法转换成两个唯一的MD5值。

图三:把文档适用MD5值标示的流程示意图

这项研究存在哪些不足之处?

其中一个不足指出是我们的技术分析只能表明图像和文件是否被监控。我们目前无法得知文字通讯信息是否被监控。在没有实质性证据前,我们提示用户有这个可能性。另一不足之处是我们的研究时间跨度数月。虽然我们持续稳定地观察到针对非中国大陆账号的监控行为,但我们无法判断这种监控行为是否恰好在我们研究进行的时期出现。这种监控行为也有可能已存在数年,或者一直存在。

对于微信非中国大陆注册账号的用户来说,这项研究的结论意味着什么?

在中国大陆以外的微信用户或许会以为微信的审查和监控机制并不影响他们。但是,我们的研究表明,用户不仅会因为政治敏感内容受到监控,用户所发的内容也会被用于训练微信针对中国大陆注册账号用户的审查系统。

这些研究结果是否意味着中国政府在监控微信的国际用户?

根据中国网络安全法,中国政府有权以国家安全和侦查犯罪为由要求互联网公司提供其接收到的或存储的信息。具体就微信而言,其中国用户适用的是中国大陆的用户协议以及隐私政策,而国际用户适用的是基于新加坡的用户协议和隐私政策。我们研究的初衷是希望了解这些签订基于新加坡的用户协议及隐私政策的微信国际用户之间的通讯时候会被分享和传输到微信位于中国的团队,或者腾讯其他位于中国的子公司。我们希望借此了解微信国际用户的通讯是否不受诸如微信针对中国大陆用户的监控。

我们的实验显示微信国际用户之间的交流通讯会被用于扩建微信针对中国大陆用户的审查系统。然而,我们的研究无法支持腾讯与中国政府分享微信国际用户通讯记录这样的说法。虽然我们的研究表明微信对国际用户实施内容监控,但我们没有其他确切证据明晰哪些内容被监控,监控的所有动机,以及微信与谁或哪些机构分享了这些监控数据。

难道不是所有的社交媒体平台都或多或少存在监控吗?微信和其他社交媒体平台的行为有什么不同吗?

本报告之所以特别指出微信存在的监控行为,是因为监控的内容的特殊性,监控针对的是在中国被视为政治敏感的内容。这当中包括批评政府以及呼吁人权关注的内容。微信的内容监控之所以独特,是因为所监控的内容对象不同,而且微信的监控系统也是有所选择地对用户实施。我们的研究显示非中国大陆微信账号之间传输的内容会受到监控,其中政治敏感的内容会被用于训练和扩大微信针对中国大陆账号的审查。据我们所知,目前社交媒体平台所采用的监控系统中,只有微信是利用对一类用户实施监控所获得的数据来增强其对另一类用户的监控和审查。

这些研究结果如何帮助我们理解中国的数字审查?

就我们所知,本研究是目前为止第一个提供实质技术证据证明微信(一款用户数量遍布全球的软件)对国际用户进行内容监控,并且通过这些监控来训练针对中国大陆注册用户的审查系统的研究。此前针对中国的数字审查的研究大多集中在中国以内审查如何进行或者哪些内容会被审查。近年来,中国公司日益全球化,這些公司在满足国际用户的需求的同时,需要在中国国内遵守内容管控相关的法律。我们的研究结果在这个大环境下显得尤其重要。

中国的内容管控范围有多广?

中国有一套针对互联网,应用程序,和媒体的内容管控系统。所有在中国境内运营的互联网平台都必须遵守当地针对内容管理的法律法规。互联网公司须对平台上的内容负责,如果内容不当,公司会面临被罚款或者运营牌照被吊销的后果。

这个系统的复杂之处在于当地与内容管理相关的法律法规界定模糊。比如,“扰乱社会秩序,破坏社会稳定”的内容是不被允许的,但对于什么内容“扰乱社会秩序,破坏社会稳定”没有明确定义。互联网公司可能会在重大事件期间收到政府指令,但我们的研究显示中国目前并没有一份集中下发到公司的统一的关键词表。

公司需要自行审读有关条例和政府指令,自行鉴定如何过滤内容以及具体哪些内容需要被过滤。我们过去的研究显示,微信会在敏感时期重大事件期间会广泛地审查内容,比如最近针对新冠疫情的讨论。

研究结果指出哪些可能的法律问题?隐私协议难道不是应该告知用户相关的监控行为吗?

包括苹果和谷歌在内的应用软件平台服务商会要求应用软件提供隐私条例。许多国家也有相关法律要求公司阐明它们如何收集,处理,和存储用户数据。我们的研究显示微信国际版本的隐私条例和用户协议并没有充分告知用户他们的数据会被如何使用。

针对这种情况,部分地区的隐私专员可以以误导用户为理由给公司开出罚单。不同地区有不同的罚款规定,罚款可从数百,到数千,乃至数百万元。在某些国家,比如加拿大,居民可能向联邦隐私专员提出申诉,隐私专员可以向公司提出如何改进服务的建议。

平台服务商,如苹果和谷歌, 可以基于误导消费者和不准确提供隐私条例的理由从平台上移除相关应用。

最后,政府机构可能会调查微信如何在程序中植入内容监控。调查结果可能会导致某些政府机构禁用微信,甚至基于国家安全的理由强制平台移除软件。

这项研究与此前针对新冠病毒的审查研究有相关之处吗?

我们上一份报告指出微信广泛审查与新冠病毒有关的内容。因为微信采取“一APP两制”的审查系统,审查影响所有使用中国大陆手机号码注册的用户。

这一份报告指出的是,微信的内容管控并不限于中国大陆注册账号。微信针对非中国大陆注册账号进行了内容监控。我们并没有测试与新冠病毒相关的内容是否被监控和增加到针对中国大陆账号的审查列表中,但我们的研究结果表明微信有能力这样做。

以下截屏展示了我们在上一份报告中观察到的微信针对新冠肺炎的内容审查。一名用户试图发送同时含有“美国疾控中心” 和 “冠状病毒” 的信息,但由于“美国疾控中心”和“冠状病毒”这两个词组成了敏感词组,中国大陆微信账号并没有收到这些信息。

图四:针对新冠病毒关键词的审查,图片截取2020年1月1日至2月15日之间。

你们未来的研究计划是什么?

本次报告我们发现了微信如何在国际用户中监控文件和图像传输,我们会持续本项研究,并关注类似的监控行为是否发生在文字传输中。

微信研究背景

微信是中国目前最流行的社交软件之一。截至2019年末,微信拥有超过11亿海内外月活跃用户。2011年成立,是一款母公司腾讯运营的即时通讯软件,腾讯是中国其中一家规模最大的科技公司。

微信有多种功能,比如包括一对一和群组聊天在内的即时聊天功能,提供用户上传文字和图片等状态更新的微信朋友圈,以及类似博客的微信公众平台。

此前公民实验室的研究指出,微信针对使用中国大陆手机号码注册的账号实行内容审查。内容审查并不是静态的,而是随着事件发生发展而变化。

 “一APP两制” :微信如何区别审查中国及海外用户

关键词过滤仅仅针对那些用中国大陆手机号码注册微信号的用户,即便这些用户之后更改绑定的手机号,用海外手机号码绑定原有微信号,审查机制也依然存在。

中国社交媒体如何管控新型冠状病毒讨论

针对直播软件YY和聊天软件微信的研究显示,两款软件均对该话题采取了广泛的审查。不仅内容敏感的词汇被过滤,甚至一些对病毒的中性的讨论和提及被审查。这样广泛的审查有可能导致公众无法获得能帮助其保护自身安全的信息。

 “未阅先焚” :微信朋友圈图片过滤功能分析

微信采用了两种不同的算法过滤朋友圈中的敏感图片:一种是基于光学字符识别(Optical Character Recognition)的文字检测方法,该方法用以过滤包含敏感词的图片;另一种是基于图像相似度的对比,该算法用以过滤与微信不良图片数据库中的图片相似或吻合的图片。

 “未阅先焚” (二):微信实时过滤图片功能分析

我们发现微信实时自动过滤用户聊天中给传输的图片,微信分析图片中的文字以及比对图片是否与不良图片数据库中的现存图片相似。微信通过保存和更新敏感图片的MD5哈希值实现实时图片过滤。

微信过滤了哪些“十九大”关键词?

微信从与十九大开始一年多前就开始屏蔽有关的关键词,随着十九大日期逼近,该关键词库也在不断更新。关键词涵盖内容非常广泛,不仅包括了批评党代会,领导人以及党内斗争的言论,许多对中央政策和党意识形态的中性指称也被过滤。

勿忘晓波:微信和微博针对刘晓波逝世的信息审查之分

对微信和微博针对刘晓波逝世的信息审查的初步分析显示,在刘晓波去世後审查力度大幅增加,以至于任何对刘晓波的讨论乃至简单提及也不被允许。在微信上,刘晓波去世后,任何提及刘晓波名字的内容——不管是简体中文、繁体中文还是英文拼音——都会被过滤。我们在之前的研究曾发现,微信在群组聊天和朋友圈功能内会进行图片审查,而在刘晓波去世的这事件上,我们首次发现:微信在一对一聊天功能中也进行图片审查。在新浪微博上,刘晓波去世前,任何由刘晓波全名为关键词的搜索——包括简体中文、繁体中文及英文拼音——早以被屏蔽。在他去世后,单单是刘的名字“晓波”就足以触发审查。

不能说的秘密:新浪微博和微信上被过滤的“709追捕”

本研究记录了在微信和微博平台上针对“709事件”的审查。通过一系列测试,研究者发现了在这两个平台上被审查过滤的与“709追捕”相关的关键词。研究者在微信平台上发现了与“709事件”相关的图片审查。这是第一次针对微信平台的图片审查的系统记录。