亲探微软LNK漏洞

7月16日境外黑客论坛发布了利用不久前微软曝出的LNK(快捷方式)漏洞(详见http://www.microsoft.com/technet/security/advisory/2286198.mspx)的消息,很快国内就有人利用此LNK漏洞制造出了“假面”木马,即使在Windows下组策略里设置对移动存储不“自动播放”,只要打开(即使是安全打开)移动存储设备(如U盘),就会中毒。这让我联想到了最近看的有关希腊神话的两部电影:《波西·杰克逊与神火之盗》与《诸神之战》,里面都出现了美杜莎,任何人只要看一眼美杜莎就中招,变成石头,因此我戏称此病毒为“美杜莎”病毒,只需看一眼快捷方式,就立即中毒。

image

此漏洞影响的操作系统包括个人电脑常用的WinXP、Win7等(详见http://www.microsoft.com/technet/security/advisory/2286198.mspx),然而微软至今仍未发布有效补丁,21日发布了临时的解决方案(详见http://support.microsoft.com/kb/2286198),虽然此解决方案会让Windows的功能不受影响,但会变得很难看,所有的图标都会变成白色(详见:http://pcedu.pconline.com.cn/softnews/bingdu/1007/2176217.html),如下图:

2176217_2_thumb但是我亲自在XP上试验了一把,确实可以防止此漏洞攻击,但是并没有微软所说的,所有图标都变成白色,不知在Win7下是否会变白色。20日360发布了更好的应急补丁(详见http://bbs.360.cn/3451604/37744558.html?recommend=1),此补丁打了后,不但可以修补此漏洞,还不会影响系统的美观。推荐此方法,只需下载最新360安全卫士,即可防住攻击,如下图:

WinXP BJTU VPN-2010-07-23-15-12-52

以前一直认为,只需设置Windows中组策略,禁止自动播放功能,再加上使用安全方法打开任何移动存储设备(如在地址栏中输入“g:”回车,假设G盘是U盘),即使U盘中病毒再怎么五花八门,都不会引发恶意代码的执行。但是这种木马的行为让我很好奇,究竟是什么原理,使得看一眼就中招?

于是,我在网上找到这篇文章:http://www.exploit-db.com/exploits/14403/,里面有利用此LNK漏洞实现执行dll.dll中的代码,但是为了看出结果,需要使用虚拟机、WinDBG等调试工具,比较麻烦,就继续寻找相关文章,后来找到这篇:http://community.websense.com/blogs/securitylabs/archive/2010/07/20/microsoft-lnk-vulnerability-brief-technical-analysis-cve-2010-2568.aspx,相应的中文版在这里:http://www.7747.net/Article/201007/53723.html,我就明白大概原理,Windows要显示快捷方式对应的文件图标,但是由于这个快捷方式经过特殊处理,而Windows加载图标的算法有着致命的漏洞,经过一系列的系统调用,最终加载了快捷方式中指定的“dll.dll”,导致Windows执行了DLL中的代码。

讲到这里,不少人可以利用此漏洞做一番文章了,比如:木马可以执行DLL中的恶意代码,传播其它的病毒、木马,或者从网上下载更恶毒的木马,监控键盘、鼠标的行为,当用户在不知道已中木马的情况下,输入银行、网游账号密码,黑客们就可以得逞了。这漏洞号称2010年以来最有危害性的漏洞。所以大家尽快打补丁吧~

我根据原理也小实验了一把,可以在这里下载DEMO和源代码:

点击下载

有关说明:

此压缩包是利用LNK漏洞实现执行任意代码的例子,不会对系统有伤害。

实现了执行dll.dll中的代码,将会生成一个文本文件,内容是:“已执行dll中的代码”。因此对系统无伤害,但行为属于木马行为。

为了防止杀毒软件删除此压缩包(杀软会报毒:LNK/Exploit.CVE-2010-2568 特洛伊木马),所以将此压缩包加密,解压密码是:123456

效果如下图:

WinXP BJTU VPN-2010-07-23-15-05-38

后来发现网上已经有人把原理剖析得更底层,详见:http://bbs.pediy.com/showthread.php?p=838548

posted @ 2010-07-23 15:16  cxun  阅读(1602)  评论(2编辑  收藏  举报