虚拟机假装有风扇骗过检测让虚拟机假装自己有风扇
让虚拟机假装自己有CPU风扇,结果骗过了某些狡猾软件的检测。[doge]
有些“狡猾”软件会检查自己是不是运行在虚拟机里,一种方法就是查系统里有没有硬件风扇这个部件。
这个部件正常PC都有,而虚拟机通常没有。狡猾软件一查到没有风扇,就退出了,避免被分析。
虚拟机当然不会真的安个风扇,但可以“让狡猾软件以为有”。
方法也不难,就是往系统的底层信息(SMBIOS)里写一段“我有风扇”的描述。
一开始作者兴致勃勃加了风扇的描述,启动后发现系统还是说没有风扇。
他困惑半天,最后发现系统还要风扇的“配套传感器”,就是能读取温度的那个探针(也就是Type 28)。
补上之后,再次启动,成功查到风扇信息,狡猾软件也被骗到了。
从技术角度来说:
- 系统查询硬件用的是WMI里的`Win32_Fan`这个类;
- 这个类是从SMBIOS里的Type 27读取信息;
- Type 27表示有个冷却设备,但它还依赖Type 28里的温度探针才能成立;
- 所以要将风扇+探针,一起伪造进去。
这个小实验的意义在于:
- 模拟真实硬件环境,能让测试更贴近实战;
- 帮助研究人员对抗狡猾软件的“环境侦察”;
- 同类方法还能扩展到电压、缓存等其他硬件检测项目。
感兴趣的小伙伴可以阅读原文:wbenny.github.io/2025/06/29/i-made-my-vm-think-it-has-a-cpu-fan.html