毫无疑问,之前一段时间发生在腾讯QQ与奇虎360之间的纠纷是最吸引眼球的大众新闻事件。国产软件巨头之间的许多隐秘故事被翻腾出来,引起无数口舌。不过,议论有时会因为某些技术原因而“失焦”。比如关于“QQ软件扫描用户硬盘”的说法,就很值得详细推敲推敲。不过,面对这场“个人电脑中的战争”,每一个电脑用户或许确实需要做出“一个艰难的决定”了。
“3Q大战”搞得鸡飞狗跳,除了两款软件的互相打架,我们还知道了一个令人不安的传闻:“QQ趁用户不注意偷偷扫描硬盘”。下面,我们就讨论一下我们的硬盘是否已经被“偷窥”。
扫描硬盘其实很简单
360指控QQ在启动的时候扫描用户的硬盘并上传硬盘信息的数据包,对此腾讯只是用简单的“外交辞令”予以反驳。
其实,扫描用户的硬盘并非难事,因为Windows系统本身就提供了这方面的应用程序接口(API)。比如我们在安装一些软件时,安装程序可以扫描电脑里是不是已经安装了老版本。
如果用了一个会扫描用户硬盘的软件,可能会出现一个问题:电脑变慢。电脑硬盘容量不小,如果对全硬盘的文件进行扫描,电脑运行速度会很慢、硬盘灯长亮——想想你在“我的电脑”里查找文件的情形吧!但是,也可以不扫描整个硬盘,而是扫描其中的一部分,比如软件的安装情况、几个特定目录的文件信息,这样可能会造成一小段时间,比如10秒的机器变慢。
QQ究竟有没有扫描我们电脑硬盘上的特定区域呢?这个可以通过安装一些检测软件来寻找证据。微软的ProcessMonitor、金山和360开发的相关软件都可以对软件的扫描行为进行跟踪。实际上,如果权威部门想要针对这个事件进行调查,可以说易如反掌。
那么,作为一款即时聊天软件,QQ是否有必要扫描用户的硬盘呢?笔者认为,即时聊天软件扫描“软件注册信息”或许有防木马的作用,假如扫描图片文档和视频就难以理解了,至少笔者在检测MSN和飞信等IM软件的时候未发现它们会对这些硬盘区域感兴趣。
笔者认为,如果一个应用软件扫描用户的个人信息并上传,这些信息可以用于商业目的。软件公司可以搞清楚几亿台电脑在用什么软件、看什么电影、听什么音乐,这些信息的价值无可估量。
QQ发现360也非难事
QQ“做出了一个艰难的决定”——让装有360软件的用户不能用QQ。有人就说了,既然你没扫描人家的硬盘,又如何知道人家装着360呢?“你不掀开人家的裙子,又如何知道人家穿着360牌的内裤”?那么,QQ是如何知道360的存在呢?
一般来说,一个软件要想扫描另一个软件是否存在,主要有两种方法:
第一是扫描注册表信息。我们自己可以在电脑上按Win+R,输入regedit,然后查找关键字“360”,如果电脑上安装了360软件,你马上就能发现。这个操作可以做成QQ上自动运行的程序,采用这个办法来检测360,那么即使关闭360软件,但只要不彻底卸载,QQ仍然会拒绝启动。
第二是获取当前正在运行的进程列表。当前正在运行的进程我们自己也可以手动看到,同时按下Ctrl+Alt+Del就可以了。如果QQ采用这种方法来检测360,那么只要在启动QQ之前退出所有360程序即可,不必彻底卸载360软件。从QQ和360在笔者机器上的冲突看,QQ更可能是用了这一种方法。
不过,笔者认为第二种方法,也很容易绕过。要让QQ发现不了自己,360可以想办法让进程列表中自己那个进程“消失”,比如把“360Tray.exe”改头换面,就可以骗过QQ的扫描。
从现在的“战况”看,360没有选择和QQ玩猫捉老鼠的游戏,而是选择了和谈。对于用户来说,这是个好消息,否则的话,我们就会发现自己电脑上的QQ和360软件在不停地交替更新,360打一个“改头换面”的补丁,QQ就紧接着更新“通缉犯”360的“新面貌”……太折腾了。
蓝云(前杀毒软件程序员)