吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 5068|回复: 9

[原创逆向图文] XAntiDebug反调试分析!

[复制链接]
狐白小刺客 发表于 2018-1-28 22:42 | 显示全部楼层 |阅读模式

本帖最后由 魔弑神 于 2018-1-29 09:57 编辑

一切的一切都是从那时开始
废话不多说
测试环境:
WIN7 X64
准备工具:
WINGDBG
ollydbg(未经过修改的原版)
测试程序:
Demo.exe
EAntiDebug.dll


在准备做完前 我总结出大致的函数
两个地方检测NTClose 和NtQueryInformationProcess 重点DebugPort清零
由于百度我没有找到NTclose 大致的源码和内容 所以只能自己手动过掉这个函数
NtQueryInformationProcess中有很多参数 而且也是没公开  我们只能上hook 吧这个地址给hook 让他的端口值保持不变
转至博客
NtQueryInformationProcess函数是一个未公开的API,它的第二个参数可以用来查询进程的调试端口。如果进程被调试,那么返回的端口值会是-1,否则就是其他的值。由于这个函数是一个未公开的函数,因此需要使用LoadLibrary和GetProceAddress的方法获取调用地址,示例代码如下:

// 声明一个函数指针。
typedef NTSTATUS (WINAPI *NtQueryInformationProcessPtr)(
       HANDLE processHandle,
       PROCESSINFOCLASS processInformationClass,
       PVOID processInformation,
       ULONG processInformationLength,
       PULONG returnLength);

bool NtQueryInformationProcessApproach()
{
       int debugPort = 0;
       HMODULE hModule = LoadLibrary(TEXT("Ntdll.dll "));
       NtQueryInformationProcessPtr NtQueryInformationProcess = (NtQueryInformationProcessPtr)GetProcAddress(hModule, "NtQueryInformationProcess");
       if ( NtQueryInformationProcess(GetCurrentProcess(), (PROCESSINFOCLASS)7, &debugPort, sizeof(debugPort), NULL) )
              printf("[ERROR NtQueryInformationProcessApproach] NtQueryInformationProcess failed\n");
       else
              return debugPort == -1;

       return false;
}







而且XJUN的插件已经干掉了这个函数 (不过呢也是过不了的 因为还是有函数)
NtQueryInformationProcess
  • ProcessBasicInformation
  • ProcessDebugPort
  • ProcessDebugObjectHandle
  • ProcessDebugFlags




当然也可以自己手动过 不过很麻烦



我们只要在意的是NTclose
不管NTQ因为我们上X64驱动 来hook 这个函数


1.png
我们吧程序载入WINDBG 并且输入命令 找到函数的地址


2.png
78ea1400 这个地址


4.png
将原本的C 改成A



6.png




至于NtQueryInformationProcess函数我也没研究太透 至于能不能手动过掉还是需要分析 !

最后发个全方面检测OD 的










al-khaser_x86.zip

89.92 KB, 下载次数: 141, 下载积分: HB -3

评分

参与人数 6HB +3 THX +5 收起 理由
一路走来不容易 + 1
消逝的过去 + 1
叶落花开 + 2
liugu0hai + 1 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
zxjzzh + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
lies + 1

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
影风 发表于 2018-1-29 14:20 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
麋鹿麋鹿 发表于 2018-1-29 14:30 | 显示全部楼层

确实没有看明白!!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
头像被屏蔽
dong51dong 发表于 2018-1-29 15:17 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
这不航郡么~ 发表于 2018-4-13 14:20 | 显示全部楼层

测试环境写错了,x64下DebugPort清零会蓝屏的,而且64位下进行SSDT HOOK麻烦又啰嗦,执行效率还低,有时候几百个SSDT hook不如一个回调好用
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
头像被屏蔽
小生帝王 发表于 2018-8-16 04:28 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
君王传世 发表于 2018-8-18 12:19 | 显示全部楼层

感谢分享 特别是OD
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
头像被屏蔽
别管我了行 发表于 2022-4-27 04:56 | 显示全部楼层

提示: 作者被禁止或删除 内容自动屏蔽
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
曾经沧海 发表于 2023-1-12 13:04 | 显示全部楼层

牛啊,感谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
一生逍遥 发表于 2023-1-26 00:48 | 显示全部楼层

纯支持一下下,,,
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表