根据Absolute Software官方网站的介绍,这款名为Absolute Computrace的防盗软件“拥有前所未有的强大功能”。它集资产管理、数据与设备安全、地理技术、计算机取证、失窃找回等功能于一身。Absolute Computrace公司曾针对频频发生的笔记本电脑盗窃案件,推出一款名为Computrace LoJack的防盗软件。笔记本装上Computrace LoJack软件之后,就相当于安装上了一个“定位追踪装置”。一旦该笔记本电脑被偷走后,上面的Computrace LoJack软件便能自动向Absolute Software公司的监听中心提供该笔记本的IP地址或者电话号码,这样便可协助警方找回笔记本。Computrace LoJack软件还可自动对硬盘的内容进行删除,这样即使笔记本被偷,用户也不用担心信息泄露。
这玩艺是一个被制造商安装于2004年之后很多笔记本电脑的BIOS中的防盗监视软件,虽然用途是合法的,但是其使用明文和服务器通信,而且能干的事情很多,随时可能被劫持。
BIOS在启动时,如果满足某个条件(如BIOS中开启了Computrace功能)等,就会启动Computrace的Option ROM,它会自动识别硬盘中的FAT/FAT32/NTFS文件系统,查找Windows的Autochk.exe,将其修改加入自己的安装程序;在Windows启动的时候,修改过的Autochk.exe会在Windows中安装Computrace的主服务rpcnetp.exe等。
rpcnetp.exe在系统中运行时,会将自己的副本rpcnetp.dll注入到IE的进程中,并试图与其开发商进行通信。但是这时候问题就来了:由于Computrace的本体位于BIOS中,它不是那么容易被升级的。因此其通信协议设计得比较复杂,而且可以进行像分配内存、GetProcAddress、LoadLibrary、甚至调用函数的操作,但却没有任何验证服务器合法性的流程。这样一旦黑客劫持了对Computrace服务器的访问,就完全可以利用它来执行任意代码。而且正因为其不能被升级,只要用户仍在有意或无意地使用Computrace,这个漏洞将永久存在于用户的机器上。
虽然其开发者明确提出这个东西不会默认开启,但确实有一些机器默认开启了它,而且用户误将其开启后,就非常难以关闭甚至不可能关闭。很多情况下,它位于BIOS中不会被刷写工具刷写的偏移处,因此就算是刷新BIOS,也不能将其移除。
国内似乎有一些笔记本论坛上早已有人注意到此话题,但没有人能提出能根本解决此问题的方案。
相关资料:
https://www.blackhat.com/presentations/bh-usa-09/ORTEGA/BHUSA09-Ortega-DeactivateRootkit-PAPER.pdf
http://corelabs.coresecurity.com/index.php?module=Wiki&action=attachment&type=publication&page=Deactivate_the_Rootkit_%28ekoparty_edition%29&file=Slides-Deactivate-the-rootkit-Sacco-Aortega-Ekoparty.pdf
http://securityaffairs.co/wordpress/22201/security/faq-absolute-computrace-case-security-vulnerability-claims.html
http://securelist.com/analysis/publications/58278/absolute-computrace-revisited/
解决办法:
一、排查
开机后,请进入BIOS->“Security”菜单,查找是否有“Anti-Theft”子项,即如下图所示。
如有“Anti-Theft”子项,进入后可发现Absolute的防盗追踪软件Computrace,即说明存在该软件。
不同品牌BIOS菜单中名称可能不一样,请逐一筛查。
二、处置
方法1:更换主板或升级BIOS
升级方法请联系计算机生产商咨询。
方法2:禁止该软件运行
第一步:打开注册表编辑器(regedit.exe或regedt32.exe),请定位到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
将右边的 Bootexecute 键值(系统默认为autocheck autochk *)备份后删除掉,阻止该程序自动再启动后续进程。
第二步:在任务管理器中结束相关进程,删除System32目录下的文件rpcnet.exe、rpcnetp.exe、rpcnet.dll、rpcnetp.dll,此时切勿重新启动Windows。
第三步:在System32目录下分别新建以上四个文件,文件内容为空,为每个文件执行如下操作:右键单击,打开属性页,切换到“安全”选项卡,为列出的每个用户或组(包括SYSTEM)设置为拒绝“完全控制”。
方法3:禁止该软件访问网络
修改host文件,将相关域名设置为禁止访问:记事本打开C:\Windows\System32\drivers\etc\hosts文件,末行输入以下信息后保存。
127.0.0.1 search.namequery.com
127.0.0.1 search.namequery.com
127.0.0.1 search2.namequery.com
127.0.0.1 search64.namequery.com
127.0.0.1 search.us.namequery.com
127.0.0.1 bh.namequery.com
127.0.0.1 namequery.nettrace.co.za
127.0.0.1 m229.absolute.com
并在防火墙软件中设置将rpcnet.exe、rpcnetp.exe 禁止访问网络。
(DVOL本文转自:中国DV传媒 http://www.dvol.cn)