关于Trawler
Trawler是一款功能强大的PowerShell脚本,可以帮助广大安全研究人员和事件应急响应人员在目标Windows主机上发现潜在的入侵威胁指标IoC,该工具主要针对的是攻击者所部署的持久化机制,其中包括计划任务、服务、注册表修改、启动项和二进制代码修改等。
当前版本的Trawler支持检测MITRE和Atomic红队提出的绝大多数持久化感染技术,后续将会添加更多的持久化技术检测方案。
功能介绍
1、支持扫描Windows操作系统中的各种持久性技术;
2、带有MITRE Technique和 Investigation Jumpstart Metadata数据的CSV输出;
3、提供了安全分析和缓解方案指导文档;
4、每一次检测都会引入动态风险分配机制;
5、适用于Windows 10/Server 2012 | 2016 | 2019 | 2022常见Windows配置的内置允许列表,以减少噪音;
6、支持从企业环境镜像(快照)中捕捉持久化元数据,以便在运行时用作动态允许列表;
7、通过驱动器重新定位分析装载的磁盘镜像;
工具下载
广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clone https://github.com/joeavanzato/Trawler.git
命令行接口CLI参数
-scanoptions:用Tab键浏览可能的检测,并使用逗号分隔的术语选择子集(例如.\travers.ps1-scanoptions Services,Processes); -quiet:将检测输出结果简化后打印到命令行终端; -snapshot:捕获当前系统的“持久性快照”,默认为“$PSScriptRoot\snapshot.csv”; -snapshotpath:定义存储快照的文件路径; -outpath:定义存储检测输出结果的自定义文件路径,默认为"$PSScriptRoot\detections.csv"; -loadsnapshot:定义要加载为allow-list引用的现有快照文件路径; -drivetarget:定义已安装目标驱动器的变量,例如.\trawler.ps1 -targetdrive "D:"
工具使用
广大研究人员可以直接以管理员权限运行PowerShell终端,并运行下列one-liner即可:
iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/joeavanzato/Trawler/main/trawler.ps1'))
工具运行截图
许可证协议
本项目的开发与发布遵循MIT开源许可证协议。
项目地址
Trawler:【GitHub传送门】
参考资料
https://github.com/last-byte/PersistenceSniper
https://attack.mitre.org/tactics/TA0003/
https://persistence-info.github.io/
https://www.hexacorn.com/blog/2017/01/28/beyond-good-ol-run-key-all-parts/
https://github.com/swisskyrepo/PayloadsAllTheThings
https://twitter.com/Laughing_Mantis/status/1645268114966470662
https://shellz.club/posts/a-novel-method-for-bypass-ETW/
https://pentestlab.blog/2023/03/20/persistence-service-control-manager/
https://ristbs.github.io/2023/02/15/hijack-explorer-context-menu-for-persistence-and-fun.html
https://pentestlab.blog/2022/02/14/persistence-notepad-plugins/