SkyOD驱动反反调试插件,一个驱动级的反调试插件程序,专注CPU,伪装,调试,生成操作,可以根据需求进行进程管理操作。本次带来SkyOD反反调试插件程序工具,DLL文件,安装方便,菜单全部为中文,需要进行相关配置反调试操作的朋友们可以下载使用。
插件功能
隐藏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文件实现