自从微软Lnk漏洞(快捷方式漏洞)被披露以来,近期各大媒体中都充斥着与之相关的新闻,连央视新闻频道都对此进行了详细报道。由于利用该漏洞的病毒具有“看一眼就中毒”的特性,使得目前凡是使用Windows操作系统的用户都有可能在瞬间中毒,影响范围之大,波及人群之广,实属罕见。由于微软的最终补丁还未发布,且有相当一部分用户因各种原因始终无法打上补丁,可以预见到在未来一段时间,利用该漏洞的病毒将有大规模地爆发的可能。
该漏洞的原理:
在我们平时启动电脑上的程序时,很多情况下是先双击程序的快捷方式,再由快捷方式启动相应的程序。快捷方式的扩展名为lnk,lnk文件多存在于桌面、开始菜单的各个程序组、任务栏的快速启动栏。
Windows操作系统为了将这些漂亮的图标显示在快捷方式上,会派发一个任务给Shell32.dll去完成快捷方式图标的解析工作。在Shell32.dll的解析过程中,会通过"快捷方式"的文件格式去逐个解析:首先找到快捷方式所指向的文件路径,接着找到快捷方式依赖的图标资源。这样,Windows桌面和开始菜单上就可以看到各种漂亮的图标,我们点击这些快捷方式时,就会执行相应的应用程序。
Windows Lnk漏洞就是利用了系统解析的机制,攻击者恶意构造一个特殊的Lnk(快捷方式)文件,精心构造一串程序代码来骗过操作系统。当Shell32.dll解析到这串编码的时候,会认为这个"快捷方式"依赖一个系统控件(dll文件),于是将这个"系统控件"加载到内存中执行。如果这个"系统控件"是病毒,那么Windows在解析这个lnk(快捷方式)文件时,就把病毒激活了。
这个漏洞触发的根本原因是特殊构造的快捷方式加载CPL图标的时候会直接通过“LoadLibraryW”函数加载dll文件(本来只是想加载文件的图标资源的,但是没有判断这个dll文件是否是特殊的CPL文件,结果直接把恶意的dll文件直接加载了)从而导致用户通过资源管理器浏览器的时候触发漏洞,实际上是一种微软设计上的缺陷,没有很好的检查文件的安全性。
大家从原理上就能看出,利用该漏洞进行传播的病毒基本上防不胜防的,以下是一些可能的传播方式:
1. USB设备感染.
这个漏洞可以不依赖autorun.inf就可以自动执行。因此可以很容易地通过USB设备(U盘,MP3,移动硬盘,数码存储卡等)进行传播。
2. 网络共享.
通过网络共享复制恶意的快捷方式文件的时候将触发这个漏洞,也可通过复制恶意快捷方式文件至别人的共享磁盘中发动攻击。
3. 恶意网站(可能的感染方式)
黑客将一个恶意的快捷方式文件上传到网站,这将促使IE浏览器去尝试检查正确的图标并显示。
4. Office文档(可能的感染方式)
Office productivity suites(包含但不限于微软 office)允许文档里面内嵌文件,如果一个恶意的快捷方式被打包到文档里面,软件会尝试显示快捷方式的图标从而可能触发漏洞执行恶意代码。通过邮件攻击可能是这种方式比较好的一种方式,因为很多邮件客户端会显示附件文件
5. 软件安装(可能的感染方式,也许是除了usb最可能被隐形利用的)
也就是在软件安装包中恶意插入lnk文件,当运行安装的时候执行漏洞。
6. 压缩文件
将恶意的快捷方式放到压缩包中,浏览或解压文件时将执行漏洞。
以下是一些预防措施,可以降低漏洞被执行的可能性,但不能从根本上解决问题:
1. 安装微软的临时补丁
下载地址:http://support.microsoft.com/kb/2286198
注意:该补丁将会取消快捷方式文件图标的显示
2. 安装有效的杀毒软件
如果你不喜欢桌面的图标变得白花花一片,那么在微软的正式补丁出来之前,建议喜欢“裸奔”的各9
7
3
1
2
4
8
: