mohaShire12/PowerShell-Abuse-Detection-Threat-Hunting
GitHub: mohaShire12/PowerShell-Abuse-Detection-Threat-Hunting
PowerShell滥用检测与威胁狩猎工具,用于检测和调查Windows环境中的恶意PowerShell活动。
Stars: 0 | Forks: 0
# POWERSHELL 滥用检测与威胁狩猎
## 目标
本项目旨在模拟和检测 Windows 环境中的恶意 PowerShell 活动。主要关注点是使用 Sysmon 和 Windows 事件日志生成 PowerShell 遥测数据,将数据导入 Splunk SIEM,并调查可疑行为,如编码命令、命令启动和脚本执行。
该项目旨在通过分析攻击者常用的执行、持久化和防御规避技术来加强威胁狩猎、端点监控和事件调查技能。
### 学到的技能
* PowerShell 威胁狩猎
* Windows 事件日志分析
* Sysmon 监控和检测
* 检测工程
* 安全调查方法
* SIEM 查询开发(Splunk SPL)
* 恶意软件执行分析
* 端点可见性和监控
* 威胁情报丰富
* 事件文档
### 使用工具
* Splunk Enterprise
* Sysmon
* Windows 10
* Windows 事件查看器
* PowerShell
* Sysmon 模块化配置
* n8n 自动化平台
* VirusTotal API
* VirtualBox 实验室环境
## 步骤
### 步骤 1:配置 Sysmon 遥测
Sysmon 被部署以提供增强的端点可见性并收集详细的进程创建、命令行执行和 PowerShell 活动。
**参考 1:Sysmon 配置**
截图显示 Sysmon 成功生成了 PowerShell 监控和威胁狩猎所需的遥测数据。
### 步骤 2:启用 PowerShell 脚本块日志记录
启用了 PowerShell 脚本块日志记录(事件 ID 4104)以捕获执行 PowerShell 脚本的正文。
**参考 2:事件 ID 4104 日志记录**
此事件提供了对执行 PowerShell 命令的可见性,包括模糊化和编码的脚本。
### 步骤 3:模拟编码 PowerShell 命令
执行了 Base64 编码的 PowerShell 命令以模拟常见的攻击者行为。
**参考 3:编码 PowerShell 命令**
攻击者经常使用编码命令来规避检测并隐藏恶意活动。
### 步骤 4:在 Splunk 中检测可疑 PowerShell 活动
使用 Splunk 搜索来识别 PowerShell 滥用模式和可疑命令行活动。
**参考 4:PowerShell 检测查询**
开发了检测逻辑来识别异常 PowerShell 执行行为。
### 步骤 5:调查额外的检测结果
执行了额外的威胁狩猎查询以识别恶意执行的指标。
**参考 5:检测调查**
截图演示了如何通过日志分析识别可疑 PowerShell 活动。
### 步骤 6:分析高级检测发现
进行了进一步的分析以验证发现并调查命令执行模式。
**参考 6:高级检测**
调查的重点是识别潜在的恶意 PowerShell 使用。
### 步骤 7:审查高风险活动
通过关联安全事件来确定可疑活动的范围和影响。
**参考 7:威胁狩猎结果**
此分析有助于区分合法的管理活动与可能恶意的行为。
### 步骤 8:监控命令启动行为
调查了 PowerShell 启动命令提示符进程作为恶意执行的常见指标。
**参考 8:命令启动**
攻击者经常使用 PowerShell 启动额外的进程以进行横向移动或有效载荷执行。
## 关键发现
* PowerShell 为攻击者提供了强大的本地执行和自动化能力。
* 通过命令行监控和脚本块日志记录可以检测到编码命令。
* Sysmon 显著提高了对 PowerShell 活动的可见性。
* 事件 ID 4104 对于检测模糊化脚本至关重要。
* Splunk 通过集中日志分析实现了有效的威胁狩猎。
* 进程创建遥测有助于识别可疑的父子进程关系。
## 结论
本项目成功演示了如何使用 Sysmon、Windows 事件日志和 Splunk SIEM 检测和调查 PowerShell 滥用。通过遥测分析、编码命令检测和威胁狩猎活动,获得了在识别攻击者技术和构建针对企业环境的有效检测策略方面的宝贵经验。
截图显示 Sysmon 成功生成了 PowerShell 监控和威胁狩猎所需的遥测数据。
### 步骤 2:启用 PowerShell 脚本块日志记录
启用了 PowerShell 脚本块日志记录(事件 ID 4104)以捕获执行 PowerShell 脚本的正文。
**参考 2:事件 ID 4104 日志记录**
此事件提供了对执行 PowerShell 命令的可见性,包括模糊化和编码的脚本。
### 步骤 3:模拟编码 PowerShell 命令
执行了 Base64 编码的 PowerShell 命令以模拟常见的攻击者行为。
**参考 3:编码 PowerShell 命令**
攻击者经常使用编码命令来规避检测并隐藏恶意活动。
### 步骤 4:在 Splunk 中检测可疑 PowerShell 活动
使用 Splunk 搜索来识别 PowerShell 滥用模式和可疑命令行活动。
**参考 4:PowerShell 检测查询**
开发了检测逻辑来识别异常 PowerShell 执行行为。
### 步骤 5:调查额外的检测结果
执行了额外的威胁狩猎查询以识别恶意执行的指标。
**参考 5:检测调查**
截图演示了如何通过日志分析识别可疑 PowerShell 活动。
### 步骤 6:分析高级检测发现
进行了进一步的分析以验证发现并调查命令执行模式。
**参考 6:高级检测**
调查的重点是识别潜在的恶意 PowerShell 使用。
### 步骤 7:审查高风险活动
通过关联安全事件来确定可疑活动的范围和影响。
**参考 7:威胁狩猎结果**
此分析有助于区分合法的管理活动与可能恶意的行为。
### 步骤 8:监控命令启动行为
调查了 PowerShell 启动命令提示符进程作为恶意执行的常见指标。
**参考 8:命令启动**
攻击者经常使用 PowerShell 启动额外的进程以进行横向移动或有效载荷执行。
## 关键发现
* PowerShell 为攻击者提供了强大的本地执行和自动化能力。
* 通过命令行监控和脚本块日志记录可以检测到编码命令。
* Sysmon 显著提高了对 PowerShell 活动的可见性。
* 事件 ID 4104 对于检测模糊化脚本至关重要。
* Splunk 通过集中日志分析实现了有效的威胁狩猎。
* 进程创建遥测有助于识别可疑的父子进程关系。
## 结论
本项目成功演示了如何使用 Sysmon、Windows 事件日志和 Splunk SIEM 检测和调查 PowerShell 滥用。通过遥测分析、编码命令检测和威胁狩猎活动,获得了在识别攻击者技术和构建针对企业环境的有效检测策略方面的宝贵经验。标签:AI合规