导致DLL劫持漏洞产生的原因一点不复杂,就是部分程序在加载DLL文件时,只给出了文件名,而没有给出完整路径,系统不得不按照默认搜索顺序找出DLL文件。黑客就想,如果制造一个与程序同名的DLL文件,采取技术手段确保它先于正常DLL文件被加载,不就可以激活病毒了吗?
打一个比喻:如果一封信件上指明了收信人的房门号,邮递员就会直接投递过去;反之邮递员就会挨家挨户敲门去询问,如果有不怀好意的人知道了邮递员敲门的顺序和收信人的姓名,就可以假冒收信人抢先一步接触邮递员并得到信件,再伪造信件命令程序运行病毒。
看到这里,有的读者朋友可能会问:不对呀,这个原理很早就被人发现了,此前还有利用该原理的病毒呢!这不是在忽悠我们吗?不错,很早以前就有人发现了该漏洞的原理,微软还曾经给出了警告,不过一直被忽视了。
忽视的理由很简单,以前该漏洞的利用只能在本地,所以要触发漏洞,得先搞一个DLL文件到电脑里,过程野蛮容易引起杀毒软件的警觉,导致病毒激活的成功率不高,当真是食之无味弃之可惜。
不过,现在发现了远程利用该漏洞的方法,不用想办法把DLL文件塞进用户的电脑,只要诱使用户访问特定的东东,就可以激活漏洞,这样一来该漏洞的价值体现出来-具备了大规模传播病毒的能力,这才引起安全厂商和微软的高度关注,才会推出应对方法。
用补丁封住漏洞
打一个比喻:如果一封信件上指明了收信人的房门号,邮递员就会直接投递过去;反之邮递员就会挨家挨户敲门去询问,如果有不怀好意的人知道了邮递员敲门的顺序和收信人的姓名,就可以假冒收信人抢先一步接触邮递员并得到信件,再伪造信件命令程序运行病毒。
看到这里,有的读者朋友可能会问:不对呀,这个原理很早就被人发现了,此前还有利用该原理的病毒呢!这不是在忽悠我们吗?不错,很早以前就有人发现了该漏洞的原理,微软还曾经给出了警告,不过一直被忽视了。
忽视的理由很简单,以前该漏洞的利用只能在本地,所以要触发漏洞,得先搞一个DLL文件到电脑里,过程野蛮容易引起杀毒软件的警觉,导致病毒激活的成功率不高,当真是食之无味弃之可惜。
不过,现在发现了远程利用该漏洞的方法,不用想办法把DLL文件塞进用户的电脑,只要诱使用户访问特定的东东,就可以激活漏洞,这样一来该漏洞的价值体现出来-具备了大规模传播病毒的能力,这才引起安全厂商和微软的高度关注,才会推出应对方法。
用补丁封住漏洞