0x0 概述
2018.9.10,网络曝光趋势科技做的 Mac 解压缩软件会上传用户浏览器历史记录,相关资料参考:
Additional Mac App Store apps caught stealing and uploading browser history
Get rid of Open Any Files: RAR Support
A Deceitful ‘Doctor’ in the Mac App Store
趋势全家桶所有app信息如下:
事件曝光之后,相关产品已经从appstore下架,只剩两个wifi相关app:
好在此前已经安装过部分相关应用,故借此对其分析验证
0x1 隐私&隐私政策
0x11 情况汇总
最终分析结果汇总如下:0x12 部分隐私获取方式
趋势全家桶系列app在初次运行时都会显示相关隐私政策,并要求申请相关资源访问权限,当用户允许后即可通过sandbox相关接口来访问相关隐私数据,获取方式如下:
隐私 | 获取方式&路径 |
---|---|
Safari历史记录 | Library/Safari/History.db |
Chrome历史记录 | Library/Application Support/Google/Chrome |
Firefox历史记录 | Library/Application Support/Firefox/Profiles/%@/places.sqlite |
AppStore历史记录 | Library/Containers/com.apple.appstore/Data/Library/Caches/com.apple.appstore/WebKitCache/Version 11/Blobs |
装机列表 | /usr/sbin/system_profiler -xml SPApplicationsDataType |
0x13 趋势产品隐私策略
以下为趋势的产品隐私策略
Privacy Policy for Trend Micro Products and Services (Effective March 2018)
激活产品时会获取的信息,都是比较常规数据
部分服务所需的数据,其实比较敏感的有访问过的URL、域名、IP等信息,和可疑邮件的收发件人及附件等,当然具体都需要看实际产品功能来判断
0x2 详细分析
0x21 Dr.Unarchiver
Dr.Unarchiver产品信息如下:
通过抓包分析实际并未发现上传隐私:
然而程序代码中却明确出现Firefox、Chrome、Safari等浏览器记录数据库文件目录字符串:
通过字符串跳入代码,即读取浏览器隐私的部分代码,以下为读取chrome记录:
读取Safari历史记录:
Dr.Unarchiver里读取隐私部分主要位于-[DACollector *]模块中,从模块命名可以发现,除了3个浏览器记录,同时还读取了AppStore历史记录、设备装机列表、用户信息等。
获取设备装机列表方式通过执行“/usr/sbin/system_profiler -xml SPApplicationsDataType“指令来完成:
该指令执行后获取数据如下,包含了app的安装时间、路径、证书等信息:
另外比较有意思的地方为,程序中还有照片库的字符串及相关代码
获取隐私后上传地址如下:
趋势官网Dr. Unarchiver产品说明里明确说明会读取浏览器记录:
Dr. Unarchiver for Mac Data Collection Notice
0x22 Dr. Antivirus
下图为Dr. Antivirus界面:
Dr. Antivirus中获取信息模块与Dr. Unarchiver完全一样:
但相对的,多出了post回传模块,不过Dr. Antivirus作为反病毒软件,回传装机列表也属于正常行为:
通过动态抓包,可以确定Dr. Antivirus会回传设备装机列表:
另外会上传一个“file.zip“包,回传路径与Dr. Unarchiver分析一致:
从上传的数据包中提取出“file.zip”文件,发现已经加密:
分析该部分代码,发现使用密钥为“novirus”
解密后可以看见都是获取的浏览器记录和app列表等信息:
如下图为chrome浏览器记录:
其实甚至还单独筛出了google搜索记录:
下图为趋势官网Dr. Antivirus产品说明,里面明确申明会读取app安装历史记录、当前装机列表、浏览器记录等隐私,作为反病毒软件读取app列表能理解,但回传浏览器记录、搜索记录等隐私就过了。
Dr. Antivirus Data Collection NoticeA
0x23 DrCleaner
DrCleaner界面如下:
DrCleaner获取隐私信息模块名与之前二者有所不同,但获取的隐私、方法名、代码基本一样:
DrCleaner同样使用“novirus”作为zip包加密密钥:
下图为趋势官网Dr. Cleaner产品说明,里面明确申明会读取浏览器记录等隐私
[Dr. Cleaner Data Collection Disclosure]https://esupport.trendmicro.com/en-us/home/pages/technical-support/1119854.aspx
0x24 DrBattery
DrBattery初次运行会要求访问用户主目录(其他程序初次运行也都会申请相关访问权限):
DrBattery中有着与DrCleaner完全一样命名方式的隐私获取模块:
下图为趋势官网DrBattery产品说明,里面明确申明会读取浏览器记录等隐私
Dr. Battery Data Collection Notice
0x25 AppManager
AppManager即App Uninstall初次运行要求申请相关访问权限,该应用中未发现相关隐私获取代码:
下图为趋势官网App Uninstall产品说明,里面未申明会读取浏览器等相关隐私
App Uninstall Data Collection Notice
0x26 测网速大师Dr. WiFi
测网速大师Dr. WiFi运行界面,该app中未发现相关隐私获取代码:
下图为趋势官网Dr. WiFi产品说明,里面未申明会读取浏览器等相关隐私
Dr. WiFi Data Collection Disclosure
0x27 家庭网络卫士Network Scanner
家庭网络卫士Network Scanner初次运行显示的隐私政策及要求申请相关访问权限,该应用中未发现相关隐私获取代码:
下图为趋势官网Network Scanner产品说明,里面未申明会读取浏览器等相关隐私
HouseCall for Home Networks (for Windows & Mac) v1.1.7 Data Collection Notice
0x3 小结
趋势全家桶还有少数几个app并未获取到,但从以上内容基本可以确定其确实有窃取用户浏览器记录、搜索记录、装机列表等隐私的行为,虽然其在隐私政策申明了相关信息(但真有用户会去仔细阅读么)
而在A Deceitful ‘Doctor’ in the Mac App Store一文中,分析的应用为“Adware Doctor”,与本文趋势全家桶并非同一证书:
但二者却有诸多相同点,如获取隐私的方法名及相关代码:
通过sandbox接口访问数据部分模块,其类名、方法名、相关代码也基本一致,故推断二者可能为同一开发者(趋势的临时工?)
在溯源过程中通常会参考绝对路径里的username,但这些app中均只有“autobuild”和“jenkinsbuld”两个id,开发者对自我有一定的隐藏意识:
而Jenkins更有可能为开发者使用下图中集成工具时起的id