freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

如何使用Phant0m在红队活动中关闭Windows事件日志工具
Alpha_h4ck 2022-03-31 22:19:56 270204
所属地 广西

关于Phant0m

Phant0m是一款针对红队研究人员设计的安全测试工具,在该工具的帮助下,广大红队研究人员可以在渗透测试活动中轻松关闭Windows事件日志工具。

Svchost在所谓的共享服务进程的实现中至关重要,在共享服务进程中,许多服务可以共享一个进程以减少资源消耗。将多个服务组合到一个进程中可以节省计算资源,这一点对于NT设计人员来说尤为重要,因为创建Windows进程比其他操作系统(例如Unix系统)需要更多的时间,而且还会消耗更多的内存。

简而言之,这意味着,在Windows操作系统上,svchost.exe负责管理服务,而这些服务实际上是在svchost.exe之下的线程中运行的。Phant0m主要针对的是事件日志服务,并且能够找到事件日志服务所对应的进程,然后检测并终止负责事件日志服务的线程。因此,虽然事件日志服务似乎在系统中运行(因为Phant0m没有终止进程),但它实际上并不运行(因为Phant0m终止了线程),此时的系统也不会再收集日志了。

工具下载

广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/hlldz/Phant0m.git

工具机制

检测和终止线程

Phant0m使用了两种技术来检测和终止事件日志服务的线程。

技术1

在运行Windows Vista或更高版本的计算机上注册每个服务时,服务控制管理器(SCM)会为该服务分配一个唯一的数字标记(升序)。然后,在服务创建时,将标记分配给主服务线程的TEB。接下来,该标记将被发送到主服务线程创建的每个线程。例如,如果Foo服务线程创建了一个RPC工作线程(注意:RPC工作线程稍后不再使用线程池机制),那么该线程将具有Foo服务的服务标签。

因此,在这种技术中,Phant0m将使用NtQueryInformationThread API检测事件日志服务的线程,以获取线程的TEB地址,并从TEB读取子进程标记。然后,它会终止与事件日志服务相关的线程。

技术2

在技术2中,Phant0m将检测与线程关联的DLL名称。Windows事件日志服务会使用wevtsvc.dll,其完整路径为“%WinDir%\System32\wevtsvc.dll”。如果线程正在使用该DLL,那么它就是Windows事件日志服务的线程,然后Phant0m会终止该线程。

检测事件日志服务

Phant0m使用两个不同的选项来检测事件日志服务的进程ID。第一种是通过SCM(服务控制管理器)进行检测,第二种是通过WMI(Windows Management Instrumentation)进行检测。如需选择哪种方法来检测事件日志服务的进程ID,可以修改main.cpp文件中的对应内容。

比如说,如果希望通过SCM检测进程ID,则应按照下列样例进行编辑(一次只能使用一种技术,不可同时使用两种):

// PID检测和配置

#define PID_FROM_SCM 1 // 如果设置为1,将通过SCM获取事件日志服务的PID

#define PID_FROM_WMI 0 // 如果设置为1,将通过WMI获取事件日志服务的PID

或者,如果你想终止线程,可以参照下列配置方式(一次只能使用一种技术,不可同时使用两种):

// TID检测和配置

#define KILL_WITH_T1 1 // 如果设置为1,则使用上述的技术1

#define KILL_WITH_T2 0 // 如果设置为1,则使用上述的技术2

工具使用

我们可以将Phant0m以单独的exe可执行程序或反射型DLL来使用。在Microsoft Visual Studio中打开该项目,进行设置(选择对应的工具技术)并编译。除此之外,我们还可以将反射型DLL与Cobalt Stikei一起使用,具体可参考phant0m.cna脚本文件。

当然了,我们甚至还可以使用Donut将相关脚本代码转换为DLL和Shellcode。

项目地址

Phant0m:GitHub传送门

参考资料

https://azure.microsoft.com/tr-tr/blog/detecting-in-memory-attacks-with-sysmon-and-azure-security-center/

http://www.insomniacsecurity.com/2017/08/27/phant0m.html

https://medium.com/@7a616368/event-log-tampering-part-1-disrupting-the-eventlog-service-8d4b7d67335c

https://www.exploit-db.com/docs/english/45898-flying-under-the-radar.pdf?rss

https://gallery.technet.microsoft.com/Denetim-ve-Loglamann-Elli-cbed0000

https://www.ired.team/offensive-security/defense-evasion/disabling-windows-event-logs-by-suspending-eventlog-service-threads

https://blog.cybercastle.io/event-log-service-between-offensive-and-defensive/

https://malwarenailed.blogspot.com/2017/10/update-to-hunting-mimikatz-using-sysmon.html

https://hacker.observer/defense-evasion-windows-event-logging-t1562-002/

https://labs.jumpsec.com/pwning-windows-event-logging-with-yara-rules/

https://hannahsuarez.github.io/2019/IncidentResponseNotes-Attackers-EventLog/

# 事件日志 # 红队攻防 # 红队实战 # 红队工具 # Windows安全分析
本文为 Alpha_h4ck 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
攻防渗透宝典
渗透实战优质工具
Alpha_h4ck LV.10
好好学习,天天向上
  • 2359 文章数
  • 1023 关注者
Tetragon:一款基于eBPF的运行时环境安全监控工具
2025-01-21
DroneXtract:一款针对无人机的网络安全数字取证工具
2025-01-21
CNAPPgoat:一款针对云环境的安全实践靶场
2025-01-21
文章目录