
字节笔记本
2026年11月6日 · 约 2 分钟读完
不 root 也能审安卓:NOIR 给每个应用出隐私体检报告
主力安卓机上装着几十个有网络权限的应用,但「哪个应用在往哪发什么」一直是黑箱。开源的 NOIR(2,489 星、MIT)把这件事做成了标准流程:插线、扫一遍、出报告、附回滚命令,全程不需要 root、不改系统分区、工具本身不联网。

做法上有几个巧思。端点提取在设备端完成:用 unzip 加 strings 从每个 APK 的 dex 里抽取 URL,只回传几 KB 的结果,不把整包拉回电脑。识别层面按包名与域名对出厂商(小米、Google、腾讯、高德等)与类别(遥测、广告、定位、输入法),再把权限翻译成「能拿到什么数据」(位置、通讯录、短信、麦克风等),与上报域名配对,得出「哪类数据可能流向哪里」的风险分。连共享 UID 这种细节都照顾到了:android.uid.system 下的包会被识别为共享同一套权限并集。
处置建议分三级:可安全自动执行、需人工确认、不建议动,每条动作都生成回滚命令;noir auto --apply 只执行安全的 appops 动作,卸载必须显式加 --aggressive。深挖模式能把单个 APK 拉到本地用 jadx 反编译,检索 Runtime.exec、DexClassLoader、MediaProjection 这些高风险调用。输出物齐全:report.json、report.md、三份域名清单(trackers 可整份导入拦截、other 需逐条判断、functional 拦了会掉功能)加回滚清单。
要说清的是证据性质:NOIR 给的是静态证据,即「这个应用具备这个能力、代码里有这个端点」,不能证明某次具体传输真的发生过,真要定罪还得配合网络层抓包。它也不实时防护,只做一次性体检。和 root 刷机那类教程互补:不想动系统分区的人,这条「插线自查」的路线今天就能走一遍。仅限 Android,iOS 用户暂无缘。



