如何查看一个app链接到的外部网站
我手机里装了一百多个App,何查但真正每天打开的部网不到二十个。有一次清理存储空间,何查发现某个天气软件居然占了我2个G的部网流量,后台数据里显示它每天凌晨都在向十几个不同的何查域名发送请求。这让我起了疑心——它到底在跟谁说话?部网
查App链接外部网站这件事,说难也难,何查说简单也简单。部网最简单的何查办法,是部网看它的隐私政策。但没几个人会去读那玩意儿,何查而且很多App的部网隐私政策写得比法律条文还绕。我翻了几个,何查发现有些App在隐私政策里老老实实列了第三方SDK清单,部网有些则含糊其辞,何查只写“可能向合作伙伴共享信息”。这种时候,就得靠技术手段了。
安卓手机用户最方便。把App装进一个叫“抓包”的工具环境里,比如Charles或者Fiddler,设置好代理,然后打开App随便点几下。所有进出的HTTP/HTTPS请求都会被记录下来。你会在列表里看到一堆域名,比如`api.example.com`、`analytics.tracker.net`、`ads.doubleclick.net`。大部分是广告和统计服务,这很正常。但如果你发现一个天气App在请求`upload.userdata.cn`这种域名,那就得留个心眼了。
iPhone要麻烦一些。iOS系统不允许用户随便装证书抓包,除非你越狱,或者用Mac上的Apple Configurator 2给手机装个描述文件。我试过一次,折腾了半小时,最后放弃了。后来发现有个更省事的办法——用“网络调试”类App,比如Stream或Surge,它们能在本地虚拟一个VPN,把所有流量导出来看。不需要越狱,但得付费买完整版。
还有一种野路子,适合不想装任何工具的人。把手机热点打开,用电脑连上热点,然后在电脑上开Wireshark监听。手机关闭Wi-Fi用流量,但把流量代理到电脑上。这个办法比较糙,但能看到TCP/IP层的数据。有一次我就是这么发现某个输入法App在后台悄悄连接一个位于俄罗斯的IP的——虽然它可能只是做云同步,但那个IP段后来被证实是某个数据交易平台的服务器。
看域名只是第一步。真正要判断一个链接是否可疑,得看请求的内容。比如一个手电筒App,它发出去的POST数据里带着你的设备型号和地理位置,这就属于越界。正常的手电筒只需要调用闪光灯,根本不需要联网。但很多App把联网权限当作家常便饭,你关掉它的网络权限,它直接闪退或者罢工——这种App基本可以确认在搞小动作。
我个人的经验是,把那些不认识的域名拿去Whois查一下注册者。如果注册者是个人邮箱,或者注册时间只有几个月,那就很可疑。正规公司的域名通常注册了好几年,联系信息也完整。另外,看域名后缀也有点用,`.xyz`、`.top`、`.club`这些廉价后缀经常被灰色产业使用,虽然不代表一定有问题,但至少值得多看一眼。
最后提醒一句,抓包本身并不违法,但别用这招去破解付费功能或者窃取他人数据。我写这些只是希望大家能搞清楚自己手机里那些App到底在背后做了什么。毕竟,你的手机就是你的数字生活,它跟谁说话,你总得知道个大概吧。
