首页
社区
课程
招聘
[原创] [ScyllaHide] 00 简单介绍和使用
2019-1-26 19:58 19348

[原创] [ScyllaHide] 00 简单介绍和使用

2019-1-26 19:58
19348

[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支持带插件的各种调试器:
OllyDbg v1和v2
x64dbg
Hex-Rays IDA
TitanEnginev2 或http://www.reversinglabs.com/open-source/titanengine.html
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插件 -

测试一:反调试函数效果测试

  1. 正常运行测试程序
  2. OD调试后结果打印对比

测试二:ScyllaHide注入工具反调试

  1. 正常运行测试程序
  2. 无插件OD附加调试,发现IsDebuggerPresent检测到调试器。
  3. 执行命令行反调试命令:InjectorCLIx86.exe MyTestAntiDebuger.exe HookLibraryx86.dll。IsDebuggerPresent返回值变为0。
    ps: 如果进程名相同的程序很多,比如chrome.exe,通过下面的命令执行:
    InjectorCLIx86.exe pid:1024 HookLibraryx86.dll

测试三:OD插件形式反调试

  1. 将HookLibraryx86.dll、ScyllaHideOlly2Plugin.dll、scylla_hide.ini、NtApiCollection.ini(自行生成,没有的话会报错,忽略错误也可以正常运行)添加到OD插件目录中
  2. OD打开MyTestAntiDebuger.exe进程进行调试,发现IsDebuggerPresent未能检测到调试器。效果如下图所示:

结束语

本节对ScyllaHide插件进行了简单介绍,使用OD可以检测大量反调试,对源码进行修改,更是可以定制反反调试,实乃逆向利器。
下次对源码进行分析,看下ScyllaHide是如何反反调试IsDebuggerPresent函数的,敬请期待。

声明

本文章仅供用于技术研究用途,请勿利用文章内容操作用于违反法律的事情。

广而告之

欢迎各位关注公众号和QQ群进行技术交流,关注有福利喔。

 

微信公众号:

 

微信公众号

 

qq群:IT技术控/953949723

 

逐梦中原技术交流QQ群


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

最后于 2020-2-29 22:23 被kinghzking编辑 ,原因: 加文章列表
上传的附件:
收藏
点赞4
打赏
分享
打赏 + 2.00雪花
打赏次数 1 雪花 + 2.00
 
赞赏  junkboy   +2.00 2019/01/26
最新回复 (17)
雪    币: 2576
活跃值: (437)
能力值: ( LV2,RANK:85 )
在线值:
发帖
回帖
粉丝
wyfe 2019-1-26 21:39
2
0
不知效果如何
雪    币: 222
活跃值: (1851)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
lhglhg 1 2019-1-26 22:27
3
0
能过VMP3.X?
雪    币: 45
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
xbra 2019-1-26 22:45
4
0
好像没讲到什么
雪    币: 11716
活跃值: (133)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
junkboy 2019-1-26 22:50
5
0
支持
雪    币: 13650
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Mr Julius 2019-1-26 22:57
6
0
lhglhg 能过VMP3.X?
有针对VMP的配置文件
雪    币: 4128
活跃值: (819)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
kinghzking 2019-1-27 16:08
7
0
lhglhg 能过VMP3.X?
之前遇到几个加了VMP的,可以调试,不过没注意版本号,试过的可以留言说下。
雪    币: 4128
活跃值: (819)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
kinghzking 2019-1-27 16:10
8
0
xbra 好像没讲到什么[em_31]
这个算是入门教程,之后可能会有复杂点的
雪    币: 4128
活跃值: (819)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
kinghzking 2019-1-27 16:11
9
0
junkboy 支持
谢谢,共同进步。
雪    币: 4128
活跃值: (819)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
kinghzking 2019-1-27 16:15
10
0
wyfe 不知效果如何
目前来说,效果还不错,还不行的,只能分析打补丁了
雪    币: 45
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
xbra 2019-1-27 20:46
11
0
kinghzking 这个算是入门教程,之后可能会有复杂点的
非常期待
雪    币: 83
活跃值: (1037)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
killpy 2 2019-2-11 09:05
12
0
很强大的东西 收藏了
雪    币: 504
活跃值: (3061)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wem 2020-5-24 22:25
13
0
mark
雪    币: 310
活跃值: (1917)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
niuzuoquan 2020-11-23 10:28
14
0
mark
雪    币: 6013
活跃值: (2975)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
chinarenjf 2020-12-4 13:35
15
0
强大,收了....
雪    币: 4128
活跃值: (819)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
kinghzking 2020-12-7 21:43
16
0
chinarenjf 强大,收了....
雪    币: 11836
活跃值: (2863)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
马来 2020-12-7 23:02
17
0
qq群貌似搜不到
雪    币: 4128
活跃值: (819)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
kinghzking 2020-12-8 08:59
18
0
马来 qq群貌似搜不到
管理的QQ  3357427767   
游客
登录 | 注册 方可回帖
返回