各界安全研究人员正在强化他们的虚拟机,以避免恶意软件样本发现出他们隐匿的监测行为。海外安全团队MalewareHunterTeam,在3月15日的推文提到,钓渔网站开发者也正进行相反的研究,检查他们的浏览器是否在模拟出的环境中执行,进而回避检测。
而从推文中,所列的程序代码画面,我们可以看到为何能在检测出网站是否于虚拟环境中执行,其中有两大关键之处,第一点是借由JavaScript编写的WebGL API的功能取得虚拟机的信息。第二点则是通过检查显示器的尺寸还有色深,判别浏览器是否可能在无显示器设备上运行。
这段程序代码中,上半部(蓝色)的声明,是利用WebGL API的功能性,读取虚拟设备的信息。特别是第二个console.log(红色),会打印出renderer的规格,能够得到虚拟环境中的设备及显示器回传的信息。
而下半部(橘色)则是判断显示器状态,利用渲染组件设置出标准值的宽、高,以及色深的参数范围,去比对设备是否为常见的规格,并记录资料状态。
由此,我们能够推测,当黑客用这个检测方式,就能够知道他们的诈骗网站并非于一般浏览器的环境执行,且没有正常的显示网页画面,此时,他们可以根据这个状态让网站不会依照原有的方式呈现。而且,在那样异常状况下,安全人员可能就发现不出这是钓渔网站,更需要强化虚拟环境的拟真程度。若在无显示器设备下浏览网页,也需设法维持网页呈现的流程,才能让钓渔网站依照原本方式显现。如此一来,检测的方式也才不会因此打草惊蛇。