首页
论坛
课程
招聘
[翻译]检测程序是否运行在VMware下(VMware has you)
2008-1-5 17:39 7766

[翻译]检测程序是否运行在VMware下(VMware has you)

2008-1-5 17:39
7766
当你找到一个新的病毒时,我们要分析它,我们需要知道它是如何在复杂的网络环境下扩散的。如何在网络中传播,如何感染其他文件,最好的解决办法就是使用虚拟机来解决,让我们在一台机器里,虚拟出多个操作平台。这也就不会使得病毒在你自己的机器中真实的传播起来。这样也带来了一个问题:病毒如何发现自己在虚拟的机器中?
    比如在虚拟机软件VMware中,他有一些后台端口来确定自己的虚拟设备和与真实的主机发送消息,当然有一些程序调用API提供给你来使用。
它是这样调用的:
        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

VMware下注册表会建立:

    HKLM\Software\VMware, Inc.\VMware for Windows NT     -- 真实主机(不在VM下但是机器安装了VM)
    HKLM\Software\VMWare, Inc.\VMware Tools\             -- 虚拟主机下

  VMware的目录是

    C:\Program Files\VMware     -- 这说明机器有VM但无法确定是否是虚拟机下

    当然还有许多其他的方法来确定,比如:incorrectly  emulated  ports,  predetermined hardware info,special drivers等等.

     About  actions  to  be performed under virtual OS, well, it depends on
your  wicked  souls  --  from  fucking up everything。

                                                             原作者:z0mbie/29A

[注意] 招人!base上海,课程运营、市场多个坑位等你投递!

收藏
点赞0
打赏
分享
最新回复 (3)
雪    币: 200
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
热爱破解 活跃值 2008-1-5 20:00
2
0
学习,不错。。
雪    币: 217
活跃值: 活跃值 (17)
能力值: ( LV13,RANK:530 )
在线值:
发帖
回帖
粉丝
foxabu 活跃值 13 2008-1-6 10:37
3
0
Anti - Anti VMWare.
雪    币: 202
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
隐逸者 活跃值 2008-1-6 12:18
4
0
当你找到一个新的病毒时,我们要分析它,我们需要知道它是如何在复杂的网络环境下扩散的。如何在网络中传播,如何感染其他文件,最好的解决办法就是使用虚拟机来解决,让我们在一台机器里,虚拟出多个操作平台。这也就不会使得病毒在你自己的机器中真实的传播起来。


最好的解决方法也可以反汇编深入病毒代码内部,细致地了解病毒是如何这么做的
游客
登录 | 注册 方可回帖
返回