文章插图
这里针对PEB , 还是之前的方法
针对tls , 把exit换成nop
文章插图
针对OutputDebugStringA,也是用nop填充add.
文章插图
但是不知道为啥我这里的密码得到是bzrr,书上是byrr.
文章插图
Lab16-3
运行 , 会直接退出 。跟之前分析过的一个样本是一样的
文章插图
用od动态调试,我这边直接就出了最后的答案 。
找到比较名字的地方 。
文章插图
但还是跟着步骤走一遍 , 找到4011E0
文章插图
进入查看 , 可以看到QueryPerformanceCounter,通过两次时间差 , 判断有无调试 。
通过设置2来作为有调试的标准 , 因此这里设置为nop
文章插图
查看其中的异常处理
文章插图
因为前面的xor语句 , 这里ecx被设置为0 , 所以这里会产生异常 。
文章插图
接着看下面 , 这里通过GetTickCount , 对时间进行判断 。
文章插图
这里的401000也是异常处理 。
文章插图
继续往下看 , 可以看到rdstc,也是通过异常处理 。
文章插图
Lab17:反虚拟化
当镜像安装了vmware Tools,进程中就会出现VMwareService.exe、VMwareTray.exe和VMware.exe
通过搜索注册表中安装的服务
或者.NET stat | findstr Vmware
“航天课堂”第一课内容非常精彩 。接下来我们会以更简单明了的方式向小朋友讲解相关知识 。敬请期待第二节航天课堂 。
以00:0C:29开始的MAC地址与VMware相对应
Red Pill反虚拟机技术
通过运行sidt指令获取IDTR寄存器的值 。虚拟机监视器必须重新定位Guest系统的IDTR,来避免与host系统的IDTR冲突 。因为在虚拟机中运行sidt指令时 , 虚拟机监视器不会得到通知 , 所以会返回虚拟机的IDTR , Red Pill通过测试这种差异来探测VMware的使用
查询I/O通信端口
VMware使用虚拟化I/O端口完成宿主系统与虚拟机之间的通信 , 以便支持诸如复制和粘贴功能 。这个端口可以被查询
这种技术成功的关键在于x86体系结构中的in指令 , 它从一个源操作数指定的端口复制数据到目的操作数指导的内存地址
推荐阅读
- 当大厂程序员已开始用AI写代码 人类会被AIGC淘汰吗?
- C/C++的8种时间度量方式以及代码片段
- |车珠子有瘾?高端大气和田玉手串!让您一次看过瘾!
- 端午节有什么活动
- 高考|职校老师自掏腰包发红包引导学生学习兴趣,家长批评老师恶意诱导
- 中国网络经纪人登录58?房产中介经纪人怎么在网上开58端口?
- 端午节的寓意和意义~~端午节的寓意和内涵?
- 招聘|在为年终复盘抓狂吗?华为笔记本超级终端打造智慧化“职场利器”
- 前端开发和UI有什么区别 前端ui库
- 大学生|大学毕业去当高端家政,住豪宅、开飞机,到头来被说是高学历丫鬟