浏览器技术揭秘:安全浏览器是否真的安全

2019-10-03 16:47:39于丽

你的安全浏览器挂了几个钩?
哪款浏览器能实现上述功能?我采用了一个工具进行分析,可通过查看它挂了什么"钩子"(Hook)来判断它在哪些地方做了安全监控,再通过代码逆向的方式查看它具体设计了哪些功能?
"钩子",程序设计中的一个专业名词。Windows系统中存在一些重要的系统关键点,在这些关键点上"挂钩子",如下图,就可以在Windows原生程序流程的基础上运行额外的程序,实现特定的功能。如果要做安全防护,同样可以在一些关键处挂上安全监控的钩子。
 

图注:钩子(Hook)可以在Windows原生程序流程上增加关键点,运行额外的程序功能。
一般来说,系统中最关键的位置往往是内核,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,是一个操作系统的核心。任何程序包括恶意程序从启动到关闭的整个过程,都离不开内核的管理。因此,几乎所有安全软件都会在内核上挂钩子--内核钩子

形象地来说,安全软件所挂的内核钩子,就像在机场内登机必经的路口设置安检处,验证为安全的人和包裹(程序)就放行,验证为风险的就拦截并及时处理掉。因为所有登机的人和包裹均是经过安全检查的,所以保证了飞机的飞行安全和乘客安全。如下图。
 
 

图注:安全软件所挂的内核钩子,就相当于在机场中的必经之处设置安检一样。
我使用圈里人爱用的一个Anti-Rootkit(简称ARK)工具XueTr.exe查看,Chrome和360浏览器都没有挂内核钩子,而猎豹浏览器则挂了2个内核钩子,如下图,挂钩位置均是其驱动文件KNBDrv.sys。这个文件也可在猎豹浏览器的安装目录中查看到,liebaoLBBrowserModulesecurity。

图注:猎豹浏览器在驱动文件KNBDrv.sys中挂了2个内核钩子,可进行系统安全检查。
相关文章 大家在看