SkyOD驱动反反调试插件
本帖最后由 赤小瞳 于 2021-8-21 00:06 编辑SkyOD是一款驱动级的反反调试插件'
隐藏PEB(R3)
[*]peb.BeingDebugged & peb64.BeingDebugged
[*]peb.NtGlobalFlag & peb64.NtGlobalFlag
[*]peb.processHeap.HeapFlags & peb64.processHeap.HeapFlags
[*]peb.processHeap.ForceFlags & peb64.processHeap.ForceFlags
隐藏进程
现象:隐藏调试器进程,在任务管理器里面枚举不到进程
场合:枚举进程,然后对这个进程进行一大堆检测
注释:隐藏进程和伪装进程二者开一即可
保护进程
现象:保护调试器进程,允许OB权限过滤,
场合:通过查询调试器特征信息来反调试就可以使用这个功能 (比如搜索调试器特征码、线程调试句柄等等)
伪装调试器
现象:伪装调试器进程的(路径、名称、父进程ID)伪装成explorer进程
场合:通过枚举进程当前目录下的文件来检测是否有调试器运行
注释:隐藏进程和伪装进程二者开一即可
伪装父进程
现象:被调试进程的父进程ID,改为explorer.exe,如果没有此进程则改成4(内核进程)
场合:通过判断自身进程的父进程ID是否为explorer.exe,是否是其他进程创建的来反调试
隐藏句柄表
注释:防止通过枚举句柄查询或者其他操作进行反调试
保护调试寄存器
[*]NtQueryInformationThread
[*]ThreadWow64Context(获取Wow64线程环境)
[*]NtSetInformationThread
[*]ThreadWow64Context(设置Wow64线程环境)
[*]NtGetContextThread(获取64线程环境)
[*]NtSetContextThread(设置64线程环境)
现象:只要是非调试器进程向被调试的进程发起修改获取调试寄存器的操作一律被伪装(偷天换日)
场合:当下不了硬件断点,硬件断点莫名其妙被清除的时候就可以使用
反反调试
[*]NtSetInformationThread
[*]ThreadHideFromDebugger(隐藏调试端口,脱离调试器)
[*]NtClose
[*]检测是否错误句柄,防止关闭错误句柄触发异常
[*]检测是否保护句柄,防止关闭保护句柄触发异常
[*]NtDuplicateObject
[*]防止拷贝句柄时触发保护句柄异常
[*]NtSystemDebugControl
[*]除了SysDbgGetTriageDump(查询内核调试器)
[*]NtQueryInformationProcess
[*]ProcessDebugFlags(调试标志)
[*]ProcessDebugPort(调试端口)
[*]ProcessDebugObjectHandle(调试对象)
[*]NtQuerySystemInformation
[*]SystemKernelDebuggerInformation(是否开启内核调试)
[*]NtQueryObject
[*]ObjectTypeInformation(指定对象-DebugObject)
[*]ObjectTypesInformation(所有对象-DebugObject)
注释:反反调试是针对于系统全局,除了调试器,其他进程没有办法获取被调试进程的真实状态
显示驱动回显
注释:显示驱动拦截动作信息
过数字签名校验
场合:插件驱动不带签名,请勾选此功能
注释:无需数字签名即可加载驱动程序,会被PG检测
过虚拟机检测
注释:缓解一些检测虚拟机方法
过PatchGuard
场合:开启隐藏进程、反反调试等一些功能
注释:过系统PatchGuard校验,非百分百,蓝屏也是正常的0.0
A:插件没有办法正确加载怎么办?
B:插件使用了DX界面,请在网上下载修复工具修复DX组件
A:插件里面的字体显示有问题怎么办?
B:请安装“微软雅黑”字体文件,msyh.ttc
A:程序检测虚拟机怎么办
B:务必把虚拟机自带的VmTool工具关闭,可以通过配置虚拟机vmx文件实现
A:程序检测调试怎么办
B:开启驱动功能前务必把过驱动签名给开启,插件不带驱动数字签名
liangcha0 发表于 2021-8-22 00:20
为什么火绒直接检测出出内核后门 是什么意思
意思就是这个插件是个驱动文件,并且带后门病毒 小白白请教下怎么使用呀 非常感谢楼梯提供 学习了,感谢分享 有源码吗?想学习一下各个功能的原理。 感谢分享,收藏一份 打开之后会闪退 学习一下 OD好像没几个驱动级隐藏插件吧 好像无效了 直接蓝屏了,玩呢???