首页
社区
课程
招聘
[原创]使用WinArk对抗r77Rootkit
2023-10-26 19:31 9777

[原创]使用WinArk对抗r77Rootkit

2023-10-26 19:31
9777

使用WinArk对抗r77Rootkit

0.背景

最近发现了一个Rootkit项目,Star星数在1.2K以上。Clone后仔细研究了一下,是一个纯r3的DLL注入 + inline hook隐藏。
WinArk作为一款反Rootkit工具,特此验证一下它的功能。

1.r77Rootkit功能简介

隐藏文件、注册表、服务、网络连接、命名管道和计划任务。

Install.exe 是安装器

Uninstall.exe 是卸载器

TestConsole.exe是测试控制台程序。

$77-Example.exe是运行安装器后会被隐藏的文件。

2.运行效果

2.1文件隐藏

可以看到$77-Example.exe在资源管理器中已经看不到了。

2.2进程隐藏

任务管理器中按照PID排序后也看不到6056进程。

2.3服务隐藏

服务按照pid排序后,也看不到svc64服务。

其他隐藏就不在此展示了。

3.WinArk运行测试

3.1绕过进程隐藏

在完成相关符号下载后,WinArk成功运行起来。点击Process ID排序后,都没有摘除inline hook的前提下,我们成功找到了dllhost.exe进程。

右键属性也能看到相应的启动参数

3.2绕过服务列表隐藏

按照名称排序后,未发现svc64,测试失败。

如此则进行inline hook扫描WinArk.exe自身。

此时等待2-3分钟,转圈就是没扫完。扫描结果显示被hook了相关服务遍历函数。

都右键逐个恢复后,关闭窗口。

刷新服务列表后还没有出现。

再右键重新扫描一次,钩子已经被摘除。这是为什么呢?

原来是这里我理解错误了,他是把要隐藏的项写入了注册表。通过恢复注册表的钩子,可以看到相应的注册表表项。

3.3绕过文件隐藏

可恢复文件钩子。

4.结束语

到此我们展示了WinArk修复r3层inline hook的功能,成功修复了r77-rootkit inline hook NTDLL的

NtQuerySystemInformation、NtResumeThread、NtQueryDirectoryFile、NtQueryDirectoryFileEx、NtEnumerateKey、NtEnumerateValueKey、EnumServiceGroupW、EnumServicesStatusExW、NtDeviceIoControlFile。

WinArk项目地址:
https://github.com/BeneficialCode/WinArk


[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞3
打赏
分享
最新回复 (7)
雪    币: 4709
活跃值: (1544)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
如斯咩咩咩 2023-10-26 21:05
2
0
路总+曾爷的组合
雪    币: 74
活跃值: (7195)
能力值: ( LV9,RANK:335 )
在线值:
发帖
回帖
粉丝
PlaneJun 6 2023-10-26 23:51
3
0
路总+曾爷的组合
雪    币: 19299
活跃值: (28938)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
秋狝 2023-10-27 11:36
4
1
感谢分享
雪    币: 220
活跃值: (626)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
dayang 2023-10-28 09:12
5
0
你好,你这个WINARK能否查EPROCESS?
雪    币: 1928
活跃值: (5874)
能力值: ( LV7,RANK:118 )
在线值:
发帖
回帖
粉丝
tutuj 2023-10-29 14:44
6
0
路总+曾爷的组合
雪    币: 61
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
wx_man_611 2023-10-30 10:18
7
0
nice
雪    币: 310
活跃值: (1917)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
niuzuoquan 2023-11-23 17:52
8
0
mark
游客
登录 | 注册 方可回帖
返回