- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
反调试技巧总结
反调试技巧总结
标 题: 【原创】反调试技巧总结-原理和实现(1)(2)(3)(4)(5)(6)......
作 者: shellwolf
时 间: 2008-08-10,22:40
链 接: /showthread.php?t=70470
反调试技巧总结-原理和实现
-------------------------------------------------------------------------------------------------------
2008.8.7 shellwolf
一、 前言
前段学习反调试和vc,写了antidebug-tester,经常会收到message希望交流或索要实现代码,我都没有回复。其实代
码已经在编程版提供了1个版本,另其多是vc内嵌asm写的,对cracker而言,只要反下就知道了。我想代码其实意义
不是很大,重要的是理解和运用。
做个简单的总结,说明下实现原理和实现方法。也算回复了那些给我发Message的朋友。
部分代码和参考资料来源:
1、脱壳的艺术 hawking
2、windows anti-debugger reference Angeljyt
3、
4、软件加密技术内幕 看雪学院
5、ANTI-UNPACKER TRICKS Peter Ferrie
我将反调试技巧按行为分为两大类,一类为检测,另一类为攻击,每类中按操作对象又分了五个小类:
1、 通用调试器 包括所有调试器的通用检测方法
2、 特定调试器 包括OD、IDA等调试器,也包括相关插件,也包括虚拟环境
3、 断点 包括内存断点、普通断点、硬件断点检测
4、 单步和跟踪 主要针对单步跟踪调试
5、 补丁 包括文件补丁和内存补丁
反调试函数前缀
检测 攻击
通用调试器 FD_ AD_
特定调试器 FS_ AS_
断点 FB_ AB_
单步和跟踪 FT_ AT_
补丁 FP_ AP_
声明:
1、本文多数都是摘录和翻译,我只是重新组合并翻译,不会有人告侵权吧。里面多是按自己的理解来说明,可能有理
解错误,或有更好的实现方法,希望大家帮忙指出错误。
2、我并没有总结完全,上面的部分分类目前还只有很少的函数甚至空白,等待大家和我一起来完善和补充。我坚信如
果有扎实的基础知识,丰富的想像力,灵活的运用,就会创造出更多的属于自己的反调试。而最强的反调试,通常都是
自己创造的,而不是来自别人的代码。
二、 查找-通用调试器(FD_)
函数列表如下,后面会依次说明,需事先说明的是,这些反调试手段多数已家喻户晓,目前有效的不多,多数已可以通
过OD的插件顺利通过,如果你想验证它们的有效性,请关闭OD的所有反反调试插件:
bool FD_IsDebuggerPresent();
bool FD_PEB_BeingDebuggedFlag();
bool FD_PEB_NtGlobalFlags();
bool FD_Heap_HeapFlags();
bool FD_Heap_ForceFlags();
bool FD_Heap_Tail();
bool FD_CheckRemoteDebuggerPresent();
bool FD_NtQueryInfoProc_DbgPort();
bool FD_NtQueryInfoProc_DbgObjHandle();
bool FD_NtQueryInfoProc_DbgFlags();
bool FD_NtQueryInfoProc_SysKrlDbgInfo();
bool FD_SeDebugPrivilege();
bool FD_Parent_Process();
bool FD_DebugObject_NtQueryObject();
bool FD_Find_Debugger_Window();
bool FD_Find_Debugger_Process();
bool FD_Find_Device_Driver();
bool FD_Exception_Closehandle();
bool FD_Exception_Int3();
bool FD_Exception_Popf();
bool FD_OutputDebugString();
bool FD
您可能关注的文档
最近下载
- TZS 0680—2025《医疗机构实验室生物安全管理组织架构规范》(水印版).pdf VIP
- 2022浙ST19壁挂式轻便消防水龙及室内消火栓安装.pdf VIP
- 京东考试答案.pdf VIP
- 滴灌通收入分成协议合同.docx VIP
- 慢性肾小球肾炎ppt课件护理.pptx
- 《钢结构检测》课程标准.DOC VIP
- 智慧园区数字化运营平台方案汇报PPT.pptx VIP
- 高中数学三角函数的图像专项练习(含答案) (1).doc VIP
- YST273.12-2024 冰晶石化学分析方法和物理性能测定方法 第12部分:氧化钙含量的测定 火焰原子吸收光谱法-报批稿.pdf VIP
- 同课异构知识讲座.pptx VIP
文档评论(0)