|
本帖最后由 2010weist123 于 2024-12-3 20:28 编辑
让vm虚拟机里面运行软件认为是在真机运行的所谓“去虚拟化”【大量成品虚拟机下载】
搜索了一下好像需求很多了。
1、玩破解游戏的,需要外挂、多开的时候,想在虚拟机里面玩,但现在很多游戏尤其是tx的都有检测,发现虚拟环境就不让运行;
2、一些行业软件,捆绑了硬件ID,你在把他安装在虚拟机里面,达到在多台电脑运行的目的,但软件都有反虚拟机检测,发现虚拟环境就不让运行;
==============================================================
所谓检测虚拟环境,一般是检测硬件信息,检查注册表信息,检查服务,检查系统文件等等……
怎样检测虚拟机环境呢?
1.根据MAC地址,通常,MAC地址的前三个字节标识一个提供商。以00:05:69、00:0c:29和00:50:56开始的MAC地址与VMware相对应;以00:03:ff开始的MAC地址与virtualpc对应;以08:00:27开始的MAC地址与virtualbox对应。
2.基于主板序列号、主机型号、系统盘所在磁盘名称等其他硬件信息;
3.根据当前进程信息,通过进程快照读取当前进程信息,查找是否存在虚拟机中特有的进程,如VMware中的vmware.exe和VirtualBox中的VBoxService.exe。
4.根据特定的文件夹或文件信息,通过查找磁盘中是否存在特定的文件夹或文件,判断当前是否在虚拟机中。VMware虚拟机中通常会有路径C:\Program Files\VMware\VMware Tools\;VirtualBox虚拟机中通常会有路径C:\Program Files\Oracle\VirtualBox Guest Additions\。
5.根据特定注册表信息,通过读取主机具有虚拟机特性的注册表位置来判断是否处于虚拟机环境中。针对VMware可以判断注册表项HKEY_CLASSES_ROOT\Applications\VMwareHostOpen.exe;针对VirtualBox可以判断注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\VirtualBox Guest Additions。当然,注册表中能被检测出的位置很多,这里只是举个例子。
6.根据特定服务名,通过获取主机当前具有VMware特性的服务信息,判断当前主机是否为虚拟机。在VMware中通常会存在VMware物理磁盘助手服务和VMware Tools服务等;在VirtualBox中通常会存在VirtualBox Guest Additions Service服务等。
7.根据时间差,由于在虚拟机中,代码的运行速度通常不如真实主机。所以恶意代码通过运行一段特定的代码来比较这段代码在虚拟机和真实主机之中的相对运行时间,以此来判断是否处于虚拟机之中。
====================================================
目前的所谓“去虚拟化”,就是修改虚拟机的bios,和硬件信息,有关VMware有关特征的信息和字符串都要抹掉……
目前vm的版本,据说vm16以上去虚拟化较难,偏偏需求都是vm16的win10环境虚拟机吧。
正在寻找一个合适的。
或者一个vm12的win7,用来在win7主机下运行,测试一些老软件。
|
评分
-
查看全部评分
|