文章摘要
各位站友好,我是站长。前几天后台有人留言问我:手机装了几百个应用,总觉得卡、耗电,还时不时怀疑哪个 App 在偷偷上传东西,但又没证据——有没有工具能把自己手机到底泄了多少数据,一把说清楚?这问题问得太好了。这两天 GitHub 上还真冒出来一个神器,4 天就涨了 1800 多个 star,叫 NOIR,一句话概括:把你的安卓手机连上电脑,一键扫描,哪个 App 拿了什么权限、数据往哪几个域名传,全部给你摊成一份报告,还附带可回滚的处置建议。
它能做什么
NOIR 是一个跑在电脑上的审计工具(支持 macOS、Windows、Linux),通过安卓官方的 adb 协议读取已连接设备的应用清单、权限和每个 APK 包里藏着的网络端点。注意它的定位作者写得很清楚:只用于审计你自己的设备,工具本身不联网、不上传任何数据、不用 root。
第一步:盘点。列出所有「有网络权限 + 敏感权限」的应用,每个应用到底拿到了什么权限,一目了然。
第二步:抽取端点。在设备端用 unzip + strings 直接从每个 App 的代码包里提取出里面写死的网址,整个过程只回传几 KB 的结果,不把几百兆的安装包拉回电脑,扫起来很快。
第三步:分类与打分。按包名和域名识别出厂商(小米、谷歌、腾讯、高德等等)和类别(遥测统计、广告、定位、输入法……),再结合权限和上报端点算出每个应用的风险分,界面上一张热力图就看出来了。
第四步:数据关联。把抽象的权限翻译成人话——位置、通讯录、短信、麦克风、相机、应用列表……然后跟上报域名配对,直接告诉你「哪类数据可能流向哪里」。
第五步:给出处置建议。建议是分级的:19 条「可安全自动执行」的(只改应用权限开关)、「需要人工确认」的(比如 DNS 拦截名单),卸载操作则默认不做,除非你显式加参数。每条自动执行的动作都会同时生成回滚命令,后悔了能一键还原。
进阶玩法:deep 模式。对某个可疑应用单独执行 deep,它会把 APK 拉到本地、用 jadx 反编译,检索 Runtime.exec、setApplicationEnabledSetting、MediaProjection 这类高风险调用,给安全研究员和折腾党准备的。
使用方法(分步)
1. 去 GitHub 的 Releases 页面下载你电脑对应平台的便携包(文件名类似 noir-v0.1.1-macOS-portable.zip),解压后双击启动器就行,包内自带 Java 运行环境,不用再单独装。
2. 手机打开「开发者选项」里的 USB 调试(小米/澎湃 OS:设置 → 我的设备 → 全部参数 → 连点 MIUI 版本 7 次),数据线连电脑,手机上点「允许 USB 调试」。
3. 在电脑上直接运行 noir,不带参数会进向导模式:先自检 adb、再等你插设备,最后问一句「开始扫描?」,扫完直接弹出仪表盘。
4. 看完报告,它会问你「执行这 19 条安全处置?」,确认前先看清楚每条的作用,输入 y 就执行并生成回滚文件。
5. 想深挖某个具体应用:noir deep 包名。
6. 想先体检环境:noir doctor,会列出 JDK、adb、设备的状态,缺什么它会告诉你。
没装过 adb 的也不用慌,第一次运行时它会问你要不要自动下载安装,全程就两三个 y/n 确认,剩下的都是自动的。
注意事项
1. 只审计自己的设备。作者和我都强调一遍:这是自我防护工具,不要拿去扫别人的手机。
2. 报告里出现的是静态证据(”这个应用有这个能力,代码里有这个上报地址”),不能证明某次具体的数据传输发生过,看到风险分高的应用先结合实际情况判断,别一看到红的就全删。
3. 卸载操作默认不执行:系统应用即使 --user 0 卸载,OTA 升级或恢复出厂设置后也会回来,所以作者只建议改权限开关或 DNS 层拦截,这点我非常认同——不动系统才是真安全。
4. DNS 拦截清单作者只导出不自动执行,因为改错 DNS 真能把设备网断掉(作者自己都踩过坑)。导出后的 domains-trackers.txt 可以整份导入你的广告拦截器,domains-functional.txt 是推送/登录/支付类域名,拦了会掉功能,千万别碰。
5. 报告里会包含你手机上的包名和端点信息,分享给别人之前自己检查一下有没有敏感内容。
下载地址
GitHub 仓库:https://github.com/Verlintas/NOIR
电脑端直接用的便携包在仓库的 Releases 页面拿最新版,旁边还有 SHA256 校验文件。README 有完整的中文版,英文不好的朋友也能直接看。
站长点评
说实话,手机安全类工具这些年我见了不少,但 NOIR 有两个点做得特别实在。第一,端点抽取在设备端完成,不把几百个 APK 拉回电脑,这个工程取舍很见功底,扫 500 个应用也就几分钟;第二,建议分级 + 回滚文件,默认只读不写,每条动作都告诉你能不能撤回来,这种谨慎的态度在折腾类工具里很少见。4 天 1800 星也说明大家对”我的手机到底在传什么”这件事是真焦虑。当然它也不是杀毒软件替代品,更像一份体检报告——体检查出问题,处置还得你自己点头。这就是它和那些吹”一键优化”的流氓软件最大的区别。
