标签:插件 OD 00 ScyllaHide dll 简单 调试 调试器
[ScyllaHide] 文章列表-CSDN:
ScyllaHide简介和使用
2019-1-26, by khz
ScyllaHide是最近才半年开始用的,当时想写一个反调试的功能,经过一番搜索,发现这款开源神器,不敢独享,特将之分享出来,真的很好用。
这篇文章准备从ScyllaHide的使用开始介绍,之后通过一些反调试的例子,分析ScyllaHide源码,了解反调试和反反调试相关的功能。
ScyllaHide介绍
源码地址:
https://github.com/x64dbg/ScyllaHide
文档参考:
https://github.com/x64dbg/ScyllaHide/blob/vs13/ConfigCollection/ScyllaHide.pdf
ScyllaHide是一个高级的开源x64/x86用户模式Anti-Anti-Debug库。 它hook用户模式(ring3)中的各种函数以隐藏调试。 此工具旨在保留在用户模式(ring3)中。 如果您需要内核模式(ring0)Anti-Anti-Debug,请参阅TitanHide。 ScyllaHide在用户模式中尽可能隐蔽,目标是不干扰任何其他功能。
ScyllaHide支持带插件的各种调试器:
PE x64调试完全支持x64dbg和IDA的插件。 请注意:ScyllaHide不仅限于这些调试器。
您可以使用ScyllaHide的 独立命令行版本 。
您可以在任何调试器调试的任何进程中注入ScyllaHide。
ScyllaHide使用
基础支持
OD的简单使用
准备工作
准备项目 | 描述 | 备注 |
---|---|---|
测试程序MyTestAntiDebuger.exe | github地址 | 每隔1秒打印IsDebuggerPresent函数值 |
OD ver2 | 调试器 | - |
PDBReaderx86.exe | ScyllaHide生成NtApiCollection.ini工具 | 根据pdb生成的,所以不同机器结果不一样,请自己生成 |
scylla_hide.ini | ScyllaHide配置文件 | - |
InjectorCLIx86.exe | ScyllaHide注入工具 | - |
HookLibraryx86.dll | 反反调试部分功能实现dll | - |
ScyllaHideOlly2Plugin.dll | OD插件 | - |
测试一:反调试函数效果测试
- 正常运行测试程序
- OD调试后结果打印对比
测试二:ScyllaHide注入工具反调试
- 正常运行测试程序
- 无插件OD附加调试,发现IsDebuggerPresent检测到调试器。
- 执行命令行反调试命令:InjectorCLIx86.exe MyTestAntiDebuger.exe HookLibraryx86.dll。IsDebuggerPresent返回值变为0。
ps: 如果进程名相同的程序很多,比如chrome.exe,通过下面的命令执行:
InjectorCLIx86.exe pid:1024 HookLibraryx86.dll
测试三:OD插件形式反调试
- 将HookLibraryx86.dll、ScyllaHideOlly2Plugin.dll、scylla_hide.ini、NtApiCollection.ini(自行生成,没有的话会报错,忽略错误也可以正常运行)添加到OD插件目录中
- OD打开MyTestAntiDebuger.exe进程进行调试,发现IsDebuggerPresent未能检测到调试器。效果如下图所示:
结束语
本节对ScyllaHide插件进行了简单介绍,使用OD可以检测大量反调试,对源码进行修改,更是可以定制反反调试,实乃逆向利器。
下次对源码进行分析,看下ScyllaHide是如何反反调试IsDebuggerPresent函数的,敬请期待。
广而告之
夜猫出品,欢迎吐槽。更多精彩,可以前往博客地址。
标签:插件,OD,00,ScyllaHide,dll,简单,调试,调试器 来源: https://blog.csdn.net/kinghzking/article/details/122070991
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。