【一把菜刀:360搜集隐私程序员级分析 供方舟子及大众参考】这几天方舟子vs360成了网上最热的话题,方舟子说:360你窃取用户隐私。360对于窃取隐私的回应是:你不懂IT,所以没资格指责。你人品还有问题。我懂it,但是我不指责,我来说说而已。那么360和用户隐私是什么关系?方舟子vs360和我又有什么关系?
我来卖菜刀的,菜刀可以是武器也可以是工具。
我希望方舟子买我的菜刀为用户砍出一片互联网晴天。
我也希望360买我的菜刀,砍掉自己的错误行为,还用户一个安全的互联网天空。
我还希望用户也买我的菜刀,做出自己的选择。
下面就是一把菜刀,各位怎么使用就看自己的了。
我抓包时发现360安全卫士频繁上传大量的信息到服务器,经过分析后发现它会将大量用户使用其他软件的信息上传到服务器,用户无法知道上传信息的详情,即使取消‘加入云安全计划’,仍然不能阻止这些信息的上传。这些信息将会暴露用户的生活习惯、作息时间、以及比较私密的软件操作。
360安全卫士的这个收集功能具有很好的实时控制性,可以在云端发布指令,很短时间令客户端停止或开启收集功能,同时收集过程中产生的文件都会被自动删除。这使得这一收集行为具有非常好的隐蔽性。
由于360安全卫士在不同时段发布的安装包收集策略不一致,并非所有版本都具有一致的行为。下面是我对此次分析的产品包的详细信息。
产品版本: 360安全卫士 7.3.0.2003l
安装包大小:17.9 MB
MD5: 8FB5774B68133D6CAAC3A2860187BE6F
下载地址: http://t.cn/zll3LVz
一、360安全卫士全面记录用户使用其他软件的行为信息
正常安装完360安全卫士后,进程防火墙会自动启动,并通过驱动层Hook所有运行程序所需的系统API,运行任意程序时拦截,然后通过appd.dll记录执行程序时间、身份ID、触发程序名、触发程序版本信息、执行程序名、执行程序版本信息等。
记录后通过ipcservice.dll将日志保存为C:Documents and Settings[当前用户名]ApplicationData360safeLogInfo360_tmp_xxxx.log.
以下是一条记录的示例:
二、用户信息日志被360上传到云端服务器,并自动删除不留痕迹
360安全卫士会将收集到的日志合并打包到用户临时目录,上传到360部署的服务器上。
以下是360安全卫士上传文件时的抓包分析截图:
360安全卫士将C:Documents and Settings[当前用户名]Application Data360safeLogInfo目录下的log记录合并后,立即删除相应log文件,并在用户临时目录(C:Documents and Settings[当前用户名]Local SettingsTemp)中创建一个文件压缩后进行上传。压缩文件被命名为随机字符,不易被发现。
上传的地址为:http://t.cn/zOpiRl2。
上传完成后该压缩包被立即删除,从上传到删除的间隔时间极短,如果没有专业的手段,很难看到被上传的文件是什么内容。
这些信息的上传非常频繁,平均约30分钟就上传一次。直到达到配置文件规定的收集次数才停止收集(默认收集100次),并等待下一次收集的新指令。
另外,用户不知情也不能取消这类收集行为,他们无法知道收集的大致内容,也没有任何手段取消这种频繁上传的行为。即使取消加入‘云安全计划’,仍然不能避免这些信息被上传。
三、360在云端远程控制收集行为,指令下达即实时又隐蔽,取证非常难
在分析中,我还发现了360具有很强的实时远程控制能力。通过更新云端的配置文件,修改几个参数就可以控制360安全卫士是否收集用户信息,以及精确到收集上报多少次后自动停止。
1. 360安全卫士通过配置文件控制是否收集用户信息以及收集的次数等
在360安全卫士的安装目录的ipc子目录下,有一个360hips.ini的配置文件。该文件结构如下:
[OTConfig]
Active= TRUE //TRUE应该是代表开启收集功能
MD5Enable = TRUE
LogFlushSeconds = 180
LogsKeepHours = 72
MaxLogsTotalSize = 20971520
MaxPEFileSizeCalcMD5 =104857600
MaxMD5CacheCount = 1000
MD5CacheClean = 300
LogRecheckSeconds = 14400
MinFreeSpace = 52428800
[FD]
JobTimer = 20
[REPROC]
INTERVAL=60
MAXCOUNT=3
[cpopt]
enable=1
ave=1
[PDU]
PDUCHECK=1
PDUTIMEOUT=2000
PDUTRY=2
PDUAUTO=1
[cplog]
logcount=100 //这里表示收集的次数,收集100次后停止
2.通过服务端更新配置文件,只需要修改两个参数就可以将是否收集以及收集次数的指令下达到客户端。如:
Active= FALSE
logcount=0
由于360安全卫士每过几分钟就会检查是否需要静默的自动更新,所以,一旦服务端更新文件,指令就可以在很短的时间内到达所有开机的用户。要完全重现收集的现场变得非常难以确定。
3.360近期对收集策略调整频繁
根据360服务端部署的配置文件更新包,可以看出最近的收集策略的变化过程。
示刀完毕,各位请自便,我还有一些唠叨。
关于菜刀的唠叨,曾经有一把菜刀,360和周总拿着它砍向了流氓软件,而如今这把菜刀砍向了我们。曾经有很多人面对“侵害”,有心杀贼,无刀杀敌,我希望更多的程序员都出来,为互联网的公平和正义提供更多的“菜刀”。曾经你们都是什么都不懂的小白,利益都要靠别人来争取,今天有人在拿刀砍向你们,选择莫言是能得到奖励么?怎么做值得思考。
此菜刀:永久免费。
via/一把菜刀