如何检测VMware系统

来源:互联网 发布:量化python 编辑:程序博客网 时间:2024/05/17 00:51
by ayaREI

       当AVer抓到你的病毒时,他们通常都是要分析它的。他们需要了解病毒如何在复杂的网络环境下传播。这时候很多人会选择在诸如VMware等一些虚拟机下执行病毒以观察病毒的行为。对Vxer来说自然不希望出现这种情况,那么我们如何来检测病毒的运行系统不是VMware呢?

       下面就有几种方法可以判定这个问题:

       1.利用VMware的后门。
       VMware系统存在后门,用于虚拟系统和真实系统的交互。这是一些函数,你可以在程序中执行以判断。当然了,最好你还要加上异常处理。
    mov    ecx, 0Ah      ; CX=function# (0Ah=get_version)
    mov    eax, 'VMXh'    ; EAX=magic
    mov    dx, 'VX'   ; DX=magic
    in      eax, dx       ; specially processed io cmd
                  ; output: EAX/EBX/ECX = data
    cmp    ebx, 'VMXh'    ; also eax/ecx modified (maybe vmw/os ver?)
    je      under_VMware

       2.注册表键值
       在真实系统中,VMware会注册HKLM/Software/VMware, Inc./VMware for Windows NT,而在虚拟系统中,VMware会注册HKLM/Software/VMWare, Inc./VMware Tools/,这也是一个比较好判断的方法。

       3.程序路径
       在真实或者虚拟系统中都是C:/Program Files/VMware。

       4.其他方法
       你可以判定系统的硬件信息等等,这些在VMware中会不同的东西都是我们判定VMware的工具。