User:Vincentule/现代隐私保护指南 (简体中文)

From ArchWiki
警告: 本文转载于 现代隐私保护指南-Arch Linux Studio ,遵循 CC-BY-NC-ND 4.0 协议

本指南为民运人士、对威权/独裁当局持异议者、工会人士、以及任何意识到隐私对于个人的价值的人群提供一套较为完整的隐私保护方案。本项目大量参考了 Digital-Privacy编程随想的博客、以及iyouport的各项报告。

注意: 本书的内容不明确针对任何一个国家。需要如何防范,这是要根据你的所在位置,以及所在位置的国家的成分,以及对言论处理的形式所决定的。生成敏感数据的环境需要禁用一切威权/独裁政府治下的公司或机构的应用或网站,而需要选用其他国家的,和威权/独裁政府没有紧密联系或者合作的应用,这样可以保障即使你的隐私和敏感信息被他们收集,也不会对你的人身安全产生严重威胁。例外的一点是,如果你有足够的影响力,那么使用任何中心化或者非完全匿名的方式都是危险的,因为各国政府间完全有可能以"人质交换"的方式以及各种"灵活外交"的手段互换所需要抓捕的人的各项数据。

精简的建议

注意: 这样的行为是不被提倡的,对于隐私领域,花费大量的时间研究并实践是值得的

1.隐私侵犯与监视最严重的设备是手机,其中的各个专有软件如微信、腾讯QQ、支付宝、淘宝、搜狗输入法、国家反诈中心APP 等皆是此类行为的主力军,如有,我们建议你使用同类的自由软件进行替代。鉴于绝大多数人无法摆脱上述专有软件的控制,你可以准备两个以上的手机设备,在装有专有软件的设备上仅进行无敏感内容的通讯。在个人电脑上同理。

2.对于各个社交、视频、资讯等平台使用不同昵称、头像,消除关联性。尤其是对于民主国家的平台,一定要与威权/独裁国家的平台彻底分离。

3.多平台不要使用统一、相似的密码。可以使用密码管理器,但是这样则需要对密码管理器本身的安全性进行持续高度的关注。实际上,使用优质的物理密码本也是不错的选择。

4.对于各个公司被曝光恶行后的澄清以及声明始终持不信任的态度。不要相信哪个公司不作恶。

5.管住自己在各个平台的炫耀欲。在网络上留下的痕迹越少,被追踪时相对就越安全。

6.尽量不使用浏览器 "记住密码" 的功能, 针对浏览器的取证工具并不少, 很容易就可以提取出 Cookie、浏览记录、保存的密码等。对于威权/独裁国家中的浏览器的"记住密码"功能则一定不要使用。

7.不要以为开虚拟机、挂 vpn 就很安全。webRTC 泄露 IP、浏览器和 canvas 指纹、DNS 泄露、系统时间、浏览器 0day 等等,都可以追踪到一定信息。

8.对于堆积的信息如邮件、短信、通话记录、回收站等定期或不定期进行清理。

你不应该使用专有软件或服务

关于专有软件前文已经给出详细的链接解释,绝大多数场景下,你也可以将其简单理解为不发布源代码的软件。如手机中的众多软件如微信、支付宝等,PC 电脑中的众多软件如 360 卫士、微软 Office 等。它们是个人隐私和安全的最大威胁。

有很多使用者认为不赋予这些专有软件所申请的各个权限,即可安全使用,这种想法是非常幼稚的。只要这些专有软件可以联网,那么他们就可以记录并上报各种用户使用软件产生的数据以及元数据。同时,个人手机本身就是一个漏洞百出的设备,有非常多的手段可以获取到个人隐私的各类信息。

关于元数据,这里进行更详细的解释。对比与普通的数据,如聊天记录,本机存储的文件等等,元数据没有具体的数据内容,而是记录这些数据相关的其他信息,如通讯在什么时间进行,设备的开关机时间是何时,手机用户在哪个时间段与何人进行通讯,用户何时打开了微信,在微信中使用了什么样的功能等等。这些元数据相较于实际数据看似价值更低,但是它们依然威力无穷,可以使威权政府的监控机构轻松获取一个自然人的相关信息。

我们建议读者使用相关专有软件的开源替代产品,如果你使用安卓手机,则可以安装 F-Droid 开源应用商店 ,并在其中寻找并安装各种开源软件。如果因为现实原因必须使用这些专有软件(如在中国,不使用微信或支付宝提供的健康码功能将寸步难行),那么使用一个单独的设备安装这些专有软件也许是目前的最佳选择。

专有软件的危害

专有软件自身的危害不仅在于它极大的威胁了个人的隐私和安全,更重要的,它为其他人施加了必须使用的压力,这是罪恶且不人道的。每个人应该有自由对自己所需要使用的软件进行选择的权利,而不是被迫要求必须要安装和使用某个软件。声称自己是"每个人必须要安装和使用"的软件和机构,往往蕴含着罪恶的目的。

专有服务

除了专有软件本身之外,另外一种我们定义为专有服务的事物也在近些年发展的越来越迅速。专有服务一般不以软件的形式安装在本地设备,而是通过云服务的方式进行使用的提供。如微软的浏览器端 Office、各类云协作,云计算服务、语音,面部,指纹识别服务等等。所有的专有服务,使用者都无法得知它们的服务到底是如何进行和运算的,这使得使用者无法确保这些专有服务获取到的个人数据仅用于正当用途。最可怕的部分是指纹、面部以及语音特征的泄露和被滥用,因为对于绝大多数人来说,密码是可以更改的,语音特征、面部特征以及指纹却几乎永远无法更改。

不要使用闭源的、威权政府治下的操作系统和设备

注意: 实际上,闭源操作系统也属于一种专有软件,但由于其特殊性,这里单独提出一节与设备一并进行讲述。仅仅保证运行在操作系统之上的软件的安全是远远不够的,因为很明显,操作系统本身就可能存在各类间谍行为。

个人手机操作系统

除了谷歌官方提供的安卓系统,各个手机厂家几乎均提供自身更改过的闭源安卓系统,以及它们系统中众多的内置软件。你只需要记住,它们都是不可信的,尤其是在威权国家中的手机厂商,它们几乎不可能不向威权当局提供各式各样的用户数据,以及不可能拒绝威权当局提出的监控以及审计用户的众多要求。如果你购买了一台威权国家治下手机厂商的安卓手机,第一件事需要做的就是将其自身的闭源操作系统移除,刷入开源的,可信的 ROM。在 ArchLinux 下,你可按照 Arch Linux 安装使用教程-安卓刷机进行操作。如果某个手机厂商拒绝提供刷入第三方 ROM 的方式,或者其与威权当局有紧密和合作,一定要拒绝使用它们的手机作为生产敏感数据的设备。

关于苹果移动设备,由于其与威权政府的合作,以及其自身的完全封闭,在隐私安全方面毫无任何安全性可言,不要使用。

除了上述描述的各类智能手机,实际上在 2000 年左右流行的功能机(非智能机)以及一次性刻录机电话都是不安全的,即使他们没有 GPS 功能,也会向附近的数据塔源源不断的发送数据,报告你的存在。只需要记住,如果你需要隐秘的行动,那就不要携带手机。

个人PC电脑操作系统

与上述描述手机的原因类似,微软以及苹果提供的个人电脑操作系统均是无法被信任的,你需要使用 Linux 来保障个人隐私安全。除此之外,和威权政府有紧密合作关系的 Linux 公司的操作系统产品也是不可信任和使用的,如华为以及统信 UOS 的操作系统产品。Linux 不是绝对安全的,但是它至少让你对于软件的使用有所选择,并且可以让你能够完全掌控自己的个人电脑,这是 Windows 和 MacOS 这种闭源操作系统无法做到的。Linux 存在众多发行版,如 Ubuntu、Debian、Whonix、Tails、Arch Linux 等等,我们推荐使用 Arch Linux 以及 Tails。关于 Arch Linux 的介绍以及安装等众多内容,请参考Arch Linux 安装使用教程

使用手机的建议

注意: 实际上,我们更建议读者的工作尽量在 Linux 个人主机上完成,因为相较于手机等其他设备,其有着更高的安全性。手机则只在实在无法获得 Linux 主机的情形下才会作为备用使用

1.拥有两部手机:被监管的手机用来安装必须要实名认证、以及具有间谍功能的软件。在这个手机上你可以从事威权政府认为合法的一切操作。另一部手机用来从事敏感活动。

2.不要为了方便在被监管的手机上混装威权政府认为合法与非法的软件,非法软件可以被轻易检测。

3.敏感的出行一定不能携带任何手机。

4.两个手机上应用的使用尽可能区分开时间点,这样可以避免在"时间"这个元数据维度上两个手机的重合。

5.从事敏感活动的手机使用代理隐藏真实 IP,不插入电话卡,以及始终禁用 GPS 功能。

6.用胶布粘贴住摄像头,以及移除或屏蔽麦克风。

路由器的安全

除了直接接触的终端设备,路由器的安全也是不容忽视的。如果你拥有的路由器使用闭源固件,尤其是威权政府管制下厂商的路由器,那么你需要考虑刷入开源的固件,如openWrtDD-WRTasuswrt-merlin.ng等。如果你的路由器使用闭源固件、并且不支持刷入任何开源固件,则你需要更换一个可以使用开源固件的路由器

光猫

1.将其设置为桥接模式,用链接到光猫的路由器来做拨号,以达到网络隔离的目的。 2.关闭光猫 wifi 功能(如有)。 3.如果你能登陆光猫管理后台,可以尝试更改默认光猫密码。 4.如果你所在地区 ISP 支持自行更换光猫,你可以更换一个可信的光猫设备。

硬件

威权政府治下的硬件厂商实际上完全有可能以及有能力在硬件层面上植入具有监控以及审计功能的硬件组件,在这一点上,我们无能为力。如果你在中国,那么可以选择使用其他国家如谷歌的手机、戴尔,惠普的笔记本来一定程度上规避这种风险。

敏感信息自查

隐私数据查询

本节列出一些免费使用的服务来帮助你查询自身敏感数据在互联网中的分布。如果你使用网络的时间足够长,并且在刚刚接触网络时并没有保护隐私的意识(实际上绝大多数人那时都没有),那么完全消除以往的痕迹几乎是不可能的。页面缓存,web archive, 更换邮箱,各个网站或应用过于变态繁琐的注销流程等等,都会造成无法解决的阻碍。用这些服务尽量去除较为敏感的数据,如果想要完全隐匿,重新建立一个新的、和以往没有任何关联的身份是更好的选择。

instant user name 搜索 100 多个社交媒体或技术网站的用户名。

check user names 测某账号是否在全球 500 多个社交媒体中是否有注册。

whats my name 搜索许多网站上存在的用户名。

namecheckup

knowem

namechk

sherlock 命令行应用,在不同的社交网络上通过用户名搜寻账户。

usersearch 找到用户名、电子邮件地址或电话号码背后的人。

除了用上述服务消除痕迹,尽可能注销使用时间很久,且可能存在大量潜在数据的账户。有非常多邪恶的中国公司在删除,或注销时采取软删除,即仅置位字段,并不删除数据。作为个人对这种现象没有太好的手段,一个可能有效的方式是注销后,再用同样的实名信息注册一个新帐号。注销微信 qq 等均需要有长达几个月的等待期,请提前规划好时间。

还存在一系列的网站用来查询账户的密码是否泄露,我们认为这类查询意义不大,即使这些网站告诉你没有泄露,也不代表真正没有泄露。不论查询结果如何,读者都应该不定期更换高强度的密码。除此之外,除了必要使用的网站,尽量减少帐号的注册和数据的产生。

尝试自我追踪

在上一小节尝试清除敏感信息、重新生成身份的描述后,本节以一个开发者身份尝试模拟一个新的防追踪的身份使用过程。身份假想在中国。

你可以购买谷歌虚拟号,但是对于绝大多数人来说,他们仅持有国内实名的支付方式,不论在淘宝、或是任何平台购买,都会在支付时留下痕迹。我们考虑最坏的情况,威权部门可以通过支付单号查到出售虚拟号的商家,随即商家供出你购买时的支付宝帐号、预留的邮箱,以及购买的谷歌虚拟号和邮箱,这样在身份上就可以对应了。在这种情况下,后续如果使用这个谷歌虚拟号,只能在保证绝对不会暴露此号码的前提下使用,如在 telegram 中注册账号,并隐匿手机号。在一些国内网站,如 bilibili、抖音等威权治下的应用,则绝对不要使用此虚拟号。因为即使你使用了虚拟号注册,还是可以根据上述流程定位到你的真实身份。所以总结下来,除非你可以在美国或其他可以自行申请谷歌虚拟号的国家,或者可以通过各种匿名货币的手段购买谷歌虚拟号,那么你则需要严格遵守上述使用方式。

对于常用的网站如 github 的使用,则需要使用无需实名的加密邮箱服务。推荐使用 tutamail。

浏览器指纹

一般来说,浏览器指纹被作为服务器可以通过浏览器收集到的一切特征的统称,传统的如 UA 等一系列可以从 header 中获取到的信息,以及可以通过 javascript 获取到的一切信息。这些数据的获取已经有相当多的文章进行描述,其中需要着重注意的几个数据为 canvas 指纹、webGL 指纹、WebGL 参数、Navigator 属性个数、以及音频指纹等。尤其是这些指纹,它们的可辨识度非常强,几乎可以完全正确的识别出一个个体用户。目前也存在一些手段来生成假的、随机的指纹来欺骗跟踪者,但是也有对应的策略可以识别出生成的指纹是否是用来欺骗跟踪者的,而这种欺骗行为本身就是一种更具体的特征。

除了这些常见的手段,也有一些不常见但依旧可以用于追踪的手段,比如通过访问过的网站 icon 来标识用户,通过 Etag 来追踪用户等,随着时间的演进,也会有更多手段出现。各类防追踪的手段只是可以做到尽可能不被追踪,并尽可能被跟踪者收集到更少的数据。但是当某些恶意网站部署了非常全面且严格的跟踪手段时,这些防跟踪方法可能均会失效,刻意的修改某些数据可能更会露出马脚。

所以抵御追踪这件事情如果从技术的角度来看,即使有各种手段如更改 header 以及 javascript 可获得的各个参数,生成随机指纹来规避跟踪,依旧有对应的方法可以进行检测。所以在日常使用网络的过程中,还是建议读者在使用的方式上做更佳的区分。比如在访问一系列有恶意行为的网站时,如日常使用淘宝,微信,京东等网站时,使用固定的、就是"献给"这些恶意网站追踪的设备。而在使用敏感网站时,使用其他设备。换句话说,只要你在生成敏感数据的网站所使用的设备指纹没有被威权机构的监视者掌握,你就是安全的。但是做到这点其实并不容易,举一个例子:在生成敏感数据的应用中,有钓鱼执法者发布了一条网址,而这个网址是威权政府控制下的网址。如果你用一台已经被收集各种特征的设备的浏览器打开这条链接,那么就可以把你之前的身份和刚刚点击这条链接的人的身份从时间上做一定程度上的验证。这种情况也验证了本书之前一直提到的,使用被监视的应用和敏感应用需要在不同设备上进行的观点。

Am I unique? - 显示了你的操作系统、浏览器、浏览器版本以及你的时区和语言。

Unique Machine - 这是一个浏览器指纹技术的项目,它不仅可以在一个浏览器内跟踪用户,还可以在同一台机器上的不同浏览器间跟踪用户。

overyourtracks - EFF 分析你的浏览器和附加组件对在线追踪技术的保护程度。

Detect Canvas Fingerprint - 这个页面使用不同的技术来识别是否安装了浏览器扩展来欺骗 canvas 指纹结果

Sploit.io - 这个网页可以测试你在浏览网页的时候到底会暴露出哪些信息出去;从漏洞,到地理位置,到浏览器指纹,用没用代理等等。

Supercookie - 这个网站可以通过浏览器访问过的图标来识别用户指纹。

浏览器指纹

2.5 代指纹追踪技术—跨浏览器指纹识别

Cookieless cookies - 一种不使用 cookies 甚至是 Javascript 的方式来追踪用户,它们使用 Etag。网站解释了它是如何工作的,以及如何保护自己。

对于日常浏览器的使用,推荐使用brave-dev-binAUR。它是目前主流浏览器中默认唯一通过 EFF 随机化指纹验证的浏览器。

DNS 泄露

实际上 DNS 泄露在不同场景下有着不同的含义,本节分场景进行描述 DNS 泄露的几种情况。

1.假设你是一个"遵纪守法的好公民",不上任何被威权当局禁止的外国网站。但是你在乎在访问"合法"网站的历史不要被当局记录(威权国家的 ISP 是被政府完全控制的)。如果你没有设置你认为安全的 DNS 地址,而是使用默认的,ISP 提供的 DNS 地址,那么你的访问历史大概率会被记录。

2.假设你的设备上有一定的分流规则,同时域名策略是 IPIfNonMatch。当访问了一个被禁止的网站,但没有 domain 匹配结果,此时就会进行 DNS 查询。如果此时使用的是 ISP 默认 DNS,则会发生泄露。

3.假想有一个钓鱼的境外网站,内嵌了许多无缓存的国内的图片网址。那么在访问这个网站时,根据分流规则,访问图片将会进行默认的 DNS 查询。如果此时使用的是 ISP 默认 DNS,则会发生泄露。

为了最大限度的安全,我们推荐在 Linux 工作站上始终开启全局代理

dnsleaktest ipleak.net

定位及 IP 泄露

IP 泄露和定位泄露往往是成对的。近些年高精度 ip 定位的出现使 ip 暴露更加危险。数据的起始点依然是手机,假设你正在家中用手机链接家庭 wifi,同时手机的某些恶意应用拥有 GPS 权限,那这些恶意应用即可上传你的 ip 和 GPS 定位数据对到服务器进行汇总,以备后用。此类恶意应用在中国的各大互联网公司是非常普遍的存在。除了这种方法,可以肯定的是还有更多高精度 ip 定位手段。所以保护真实 IP 是非常重要的,可以考虑使用全局代理隐藏 ip。

如果不使用全局代理,而使用分流的方式,则需要更加小心,一些意想不到的点会暴露你的真实 ip。如在查看邮箱邮件时,如果选择显示其中的图片,则可能暴露真实 ip,详见此报告。除此之外,在一些成对通讯的软件中,也有可能暴露 ip,如 qq 视频暴露 ip 的报告

除去 GPS 和 ip 定位,通过移动蜂窝数据塔和 IMSI 捕捉器也可以轻松进行手机定位,除此之外还可以实现中断电话,短信拦截、呼叫重定向等功能,总之,手机是一个非常不安全的设备。

高精度 ip 定位 获取 ip 详情

数据加密与密码存储

对于单个文件的加密,可以尝试后文将介绍的 GnuPG,而如果有大量文件或整个磁盘分区加密的需求,则可以使用 VeraCrypt。VeraCrypt 是斯诺登使用的加密软件 TrueCrypt 的活跃继任者,其可以创造加密文件进行挂载,也可以创建整体的磁盘加密分区。除此之外,隐藏加密卷的功能可以更好的帮助你隐藏重要的文件。在 ArchLinux 上安装包veracrypt即可使用。关于 VeraCrypt 可以参考如下文档。

veracrypt 官方文档 如何使用 VeraCrypt 保护 PC 上的敏感文件 开源磁盘加密软件 VeraCrypt 教程 对于密码存储,目前较好的方式是使用 Bitwarden 的第三方开源实现vaultwarden,开源的实现以及自行部署的方式可以保证没有恶意后门的存在,但是你仍需自行确保部署的服务的安全和稳定。除此之外,在如今一个高质量的物理密码本也是一个值得考虑的、更安全的可选选择。

为什么机场不安全

除了使用 VPN 外,机场可能是使用最广泛的翻墙方式,但是实际上这种方式并不一定安全。历史上出现过多次机场主被迫接受威权机构的调查,提取日志以供审核的案例。对于处于威权政府管制区域中的机场,它们对于审问和审查是没有抵抗能力的,如果一定需要选用机场,则要选择机场主要负责人处于民主自由国家的机场。

除此之外,从技术角度来说,机场经营者是完全有能力获取使用者的 ip,访问记录,访问时间等等信息的,至于认为这些信息是否可以被机场主拥有,需要读者自行决定。所以结论是显而易见的,自建翻墙节点是最安全的方式,当然,构建节点的服务器需要使用民主自由国家的 VPS 服务商,独裁以及威权政府治下的服务商如阿里云、腾讯云等均存在对于翻墙节点的审查与封禁方式,而且可以肯定的是,未来的审核与封禁只会更加严格,如今尚且有效的方式,如将服务置入 docker 等容器、删除与禁用安骑士等监控服务,在未来也可能失效。自建节点的缺陷也是明显的,如果想达到和机场一样丰富的国家节点与可用性,则需要付出非常多的资金与精力。

学会使用 Linux Firejail

Firejail 可以防止恶意专有软件对本机的间谍行为。即使是开源软件,可能也存在某些未发现的漏洞侵害本机(1)。使用Linux Firejail运行特定程序,可以更好的进行防护。更多信息可查看上述官网,以及Firejail Arch wiki