Haris Shield 如何工作
应用从你的手机读取什么、如何判断什么是威胁、它建立的每一个连接——以及如何不必轻信我们的话,亲自检查这一切。
本页描述的是当前版本 1.0.13。
应用通过数据线读取什么
你的手机通过 USB 数据线连接到电脑。Haris Shield 使用 libimobiledevice(iPhone)和 Android 的 adb 读取手机——这些正是取证研究人员使用的开源工具。手机上不会安装任何东西,扫描也只做读取:不会删除、移动或更改手机上的任何内容。它复制的所有东西都保存在你电脑上的应用文件夹里。
iPhone
设备信息
机型、iOS 版本和内部版本号、序列号、是否设置了密码、激活状态、设备名称和时区。
崩溃报告
复制到你的电脑上并在那里读取。原件仍留在手机上——应用只复制,从不移动或删除它们。
配置描述文件
已安装的描述文件、MDM 注册、监管状态和 VPN 描述文件——这些都是手机可能被管理或流量被重定向的途径。
预置描述文件
手机上的开发者应用和企业应用由谁签名,并与已知间谍软件厂商的名称进行比对。
安全状态
锁定模式、开发者模式,以及当前 iOS 版本是否已知被利用过漏洞。
你导入的 sysdiagnose(可选)
如果你在手机上生成 sysdiagnose 并导入该归档文件,应用还会读取其中的网络使用数据库、进程执行历史、应用使用和权限数据库,以及网络和进程日志。
Android
设备信息
机型、品牌、Android 版本、安全补丁级别和序列号。
已安装的应用
将软件包名称与已知跟踪软件进行比对,找出在启动器中隐藏的应用,以及每个应用的安装来源(Play 商店或侧载)。
权限
哪些应用拥有监控类权限——短信、通话记录、位置、摄像头、麦克风——以及这些权限的危险组合,还有被允许安装其他应用的应用。
无障碍、设备管理器、通知监听器
跟踪软件通常需要这三种机制来读取屏幕、阻止被卸载和复制通知。
进程和网络
正在运行的进程、当前打开的连接和 DNS 解析缓存,并与已知的间谍软件服务器和 IP 地址进行比对。
证书
用户安装的根证书(可被用来读取加密流量),以及使用调试或测试证书签名的应用。
电池、数据和传感器使用
在夜间唤醒、在后台传输大量数据,或在不显示于屏幕时使用摄像头和麦克风的应用。
设置和系统日志
USB 调试和无线调试、未知来源、Play 保护机制,以及少数与已知间谍软件相关的特定系统日志条目。
全面扫描还会进行隐私检查、硬件诊断,在 iPhone 上还会进行组件验证。加密 iPhone 备份的分析和 Android 应用文件的指纹比对正在开发中,目前版本尚不包含。
如何判断发现的问题
每次扫描都会以三种结果之一结束。它们之间的区别很重要,下面具体说明每种结果需要什么条件。
检测到间谍软件
只有存在具体痕迹时才会给出:执行历史中出现已知的间谍软件进程、连接或 DNS 查询指向已知的间谍软件服务器、已获得访问权限的已知跟踪软件,或来自已知间谍软件厂商的描述文件。
可疑活动
值得进一步查看、但并非证据的情况。这包括暴露风险:旧版 iOS 或缺失的安全补丁会让手机更容易受到攻击,所以会在这里报告——但绝不会当作感染。在 1.0.11 版本之前,旧版 iOS 曾被错误地报告为已感染;这个问题已经修复。
未发现威胁
没有发现应用已知的任何痕迹。这并不意味着手机一定是干净的——请看下文“任何工具都无法承诺的事”。
应用用什么来比对
应用自带一份内置列表,包含间谍软件进程名、服务器、IP 地址和跟踪软件应用。此外,它还使用来自 MVT 项目的指标,这些指标由 Amnesty International、Citizen Lab 以及其他调查 Pegasus、Predator 和类似工具的研究人员发布。
只有当某个名称作为完整名称出现在日志中时才算数。像“bh”这样很短的 Pegasus 进程名,过去会匹配到“github”之类的词;现在不会了。同时也是正常 iOS 系统进程的名称不会被纳入,因为发现它们证明不了任何事。
为什么指标列表无法被篡改
- 1. 我们的服务器每晚根据 MVT 指标索引构建一个指标包。
- 2. 它使用一把只存在于服务器上的 Ed25519 私钥为指标包签名。
- 3. 应用用内置的公钥校验签名,只有匹配时才会使用该指标包。如果不匹配,就继续使用上一份校验通过的指标。
因此,伪造的指标包——无论来自被入侵的网络还是其他任何人——都无法添加或删除指标。发现的问题也从不上传到共享列表:来自用户的未经核实的报告,正是威胁列表被污染的途径。
哪些内容会离开你的电脑
应用可能建立的每一个连接,均取自应用的代码。如果你监视它的流量(见下文“亲自验证我们”),应该能逐项对照这份列表。
只要应用联网
许可证和余额检查
harisshield.com
你的许可证密钥和一个电脑 ID——由电脑名称、用户名、处理器、架构和内存大小生成的简短哈希值。返回的是由我们服务器签名的余额凭证,使应用可以离线继续扫描 14 天。
每次扫描后的扫描计数
harisshield.com
许可证密钥、电脑 ID、iOS 还是 Android、发现的数量、一个随机扫描 ID 和时间。扫描次数就是这样从你的余额中扣除的。不包括发现了什么,也不包括手机上的任何内容。没有网络时,这份报告会等待,之后再发送。
已签名的指标包
harisshield.com
下载最新的间谍软件指标(见上文)。下载时不会发送任何关于你或你手机的信息。
检查更新
harisshield.com
激活许可证密钥后,应用会在启动时以及每四小时检查一次更新并下载新版本,同时发送许可证密钥,以便服务器放行文件。
将电脑关联到你的许可证
harisshield.com
当你关联一台新电脑时:电脑 ID 和电脑名称,这样确认邮件就能告诉你是哪台电脑在请求。
仅在你使用某项功能时
组件验证(iPhone 全面扫描的一部分)
checkcoverage.apple.com, support-sp.apple.com
iPhone 的序列号,用于向 Apple 查询机型和保修状态。
Android 扫描期间的证书检查
Android 手机正在通信的服务器
应用会从你的电脑向手机已建立 HTTPS 连接的部分公共服务器发起简短的 TLS 握手(每次扫描最多 18 次握手),以检查它们的证书。这些服务器会看到你电脑的 IP 地址。在网络监控工具中,这会显示为 openssl 进程。
实时网络监控
ipinfo.io
监控运行期间你手机所连接的 IP 地址——是服务器的地址,不是你的——用于显示它们所在的国家和所有者。如果你输入了自己的 ipinfo 令牌,它也会被发送。
数据泄露检查
haveibeenpwned.com
你输入的邮箱地址。该检查需要你自己的 Have I Been Pwned API 密钥;没有密钥时请求仍会发出,但不会返回结果。
错误报告——除非你勾选,否则关闭
harisshield.com
只包含固定列表中的字段:应用版本、操作系统、架构、哪一步失败、错误类型和代码、函数名、iOS 还是 Android,以及许可证密钥的 8 位字符哈希值。绝不包括错误信息、文件路径、手机详情、发现的问题、你的许可证密钥或你的邮箱。
仅限旧版许可证密钥
api.lemonsqueezy.com
不以 HRS- 开头的密钥是通过 Lemon Squeezy 售出的,会连同电脑 ID 一起在那里激活和校验。
多次激活失败之后
harisshield.com
电脑 ID 以及失败的次数,以防密钥被暴力猜出。
绝不发送
- 短信、照片、联系人、通话记录或邮件
- 手机上的应用列表
- 崩溃报告或你的 sysdiagnose
- 扫描发现了什么,或扫描报告本身
扫描结果和报告保存在你电脑上的应用文件夹里,直到你删除它们,或选择分享一份 PDF。
离线模式,以及它不涵盖的内容
应用设置中的离线模式会停止指标下载、网络监控中的 IP 查询以及数据泄露检查。它不会停止许可证和余额检查、更新检查、序列号查询或 Android 证书检查。
如果要在完全不联网的情况下扫描,请断开电脑的网络连接。应用联网过一次之后,会凭最近一次签名的余额凭证、使用已有的指标继续扫描最多 14 天。扫描计数会在你重新联网时发送。
任何工具都无法承诺的事
没有任何工具能证明手机是干净的
Haris Shield 能发现的是已知的痕迹。MVT 项目对自己的工具也是这么说的:仅凭公开指标不足以断定一台设备是干净的。
最先进的间谍软件可能一直隐藏
Pegasus 级别的工具就是为了尽量少留痕迹而设计的,而且新版本往往在任何人发布相关指标之前就已投入使用。它们可能躲过这次扫描,也可能躲过任何其他扫描。
“未发现威胁”不等于“安全”
它的意思是没有发现任何已知痕迹。如果你的处境让你面临真实的风险,无论我们的结果如何,都请向下面列出的专家寻求第二意见。
我们目前的进展
有些事情还没有完成。你应该知道是哪些。
尚未通过 Apple 公证
这就是 macOS 提示无法验证开发者、第一次打开时你必须选择“仍要打开”的原因。Apple Developer ID 签名和公证正在设置中。
尚未进行 Windows 代码签名
这就是 Windows 显示“Windows 已保护你的电脑”的原因。代码签名正在设置中。在两者都就绪之前,操作系统无法确认文件来自我们——但下面的校验值可以。
版本
Mac 版本仅支持 Apple Silicon,Linux 版本仅支持 x86-64。请参阅下载页面。
亲自验证我们
安全工具需要你给予很多信任。下面这些是真实、独立的方法,可以检查 Haris Shield 是否如本页所说那样工作——也可以请我们以外的人检查你的手机。
1. 检查安装程序
上传到 VirusTotal。把你下载的文件拖到 virustotal.com,大约 70 个杀毒引擎会扫描它。请看是哪些引擎标记了什么、它们把它叫作什么,而不只是看数量。
比对 SHA-512 校验值。如果你文件的校验值与下面的一致,它就和我们发布的文件完全相同。这些也正是应用的更新程序所校验的值。
版本 1.0.13:
macOS · Haris Shield-1.0.13-arm64.dmg
128 MB
4fe86b6fddb00fe3292be6dcb5facba1c18fc325e3a794005c083b01453593f4a92cf6e7531e3e2bf35e60fa5108f9ed7b5cb2422a3655741ca0043bf7c889e9
Windows · Haris Shield Setup 1.0.13.exe
110 MB
8108d8091be32424877d796e99ac522a3ce7cf0599b6bb5d87ef175630ee811ee3d4921ea00ddad6b93fbf73bb064cdffc414fca9c4df310493b9e391e0278c1
Linux · Haris Shield-1.0.13.AppImage
124 MB
2072f0f85bf1a9a013e9dbbced8b3184d6050fe86963808a831fa6f43e656ae1d29026f78ca2a9186eddad5ecf9d6ffc744b571ea576fa83db2ffc8666e51b7c
Linux · phoneguard_1.0.13_amd64.deb
98 MB
e5e344a628c9e47ca6204c6493d05763eefff336c679675c9800646f7ba699edab9548d7fb7089c83983d3c1e9673f25d07ce9462391a547516767acdb7ab3cf
Mac(终端)
shasum -a 512 <文件名>
Linux(终端)
sha512sum <文件名>
Windows(PowerShell)
Get-FileHash -Algorithm SHA512 <文件名>
比对时不区分大小写。
2. 监视应用的网络流量
在扫描时运行下面其中一个工具。你应该会看到 Haris Shield 与 harisshield.com 通信,并且只有在你使用相关功能时,才会与上面列表中的服务通信。与手机本身的连接走的是 USB,不会显示为互联网流量。
Mac
- LuLu
免费开源,来自 Objective-See。在任何应用建立新的出站连接之前询问你,并显示连接的去向。
- Little Snitch
付费软件,来自 Objective Development。按应用实时显示每一个连接,并可在地图上查看。
Windows
- TCPView
免费,来自 Microsoft Sysinternals。列出每一个打开的连接及其所属进程。
- GlassWire
有免费版本。显示每个应用连接了哪些主机。
- Windows Defender Firewall
系统自带。如果你想确认没有网络时扫描仍然可以进行,可以完全阻止 Haris Shield 联网。
Linux
- OpenSnitch
免费开源。像 LuLu 一样,按应用询问是否允许出站连接。
3. 为你的手机寻求第二意见
以下机构都与我们没有任何关联。如果你是记者、社会活动人士或其他可能成为目标的人,请直接联系这些求助热线——他们每天都在做这项工作。
- Mobile Verification Toolkit (MVT)
Amnesty International Security Lab
适用于 iPhone 和 Android 的免费开源取证工具,诞生于 Pegasus 项目期间。它通过命令行运行,面向技术人员和调查人员,并不适合快速自查。Haris Shield 使用相同的公开指标。
- iVerify Basic
iVerify
一家独立移动安全公司推出的 iPhone 和 Android 应用。它从手机本身检查是否有 Pegasus 类间谍软件的迹象——从不同角度提供有用的第二视角。
- Digital Security Helpline
Access Now
全天候免费提供多语言帮助,面向认为自己成为攻击目标的记者、社会活动人士、人权捍卫者和公民社会团体。
- Security Lab — Get help
Amnesty International
为面临 Pegasus 等定向数字攻击风险的记者、社会活动人士和公民社会组织提供支持。
- Coalition Against Stalkerware
stopstalkerware.org
按国家列出的求助热线和援助机构名录,面向担心伴侣或身边的人正在监控自己手机的人。请在那个人从未接触过的设备上查询。
发现本页有与应用实际行为不符的地方?请通过 support@harisshield.com 告诉我们。另请参阅我们的隐私政策。