Anuhyareddybaddam/Phishing-Investigation-Playbook
GitHub: Anuhyareddybaddam/Phishing-Investigation-Playbook
基于Microsoft Defender XDR的全面网络钓鱼调查剧本。
Stars: 0 | Forks: 0
## 概述:
本存储库包含使用 Microsoft Defender XDR 高级狩猎开发的具有结构化的网络钓鱼调查剧本。
本剧本的目标是指导安全运营中心(SOC)分析师通过以下步骤:
* 网络钓鱼电子邮件分析
* URL 和附件调查
* 用户交互验证
* 身份泄露评估
* 终端泄露验证
* 威胁狩猎机会
* 检测工程用例
* 事件响应建议
## 调查工作流程
1. 收到电子邮件
2. 电子邮件分析
3. 发件人信誉分析
4. URL 和附件分析
5. 用户点击验证
6. 身份调查
7. 终端调查
8. 威胁狩猎
9. 隔离与修复
## 使用的数据源
### 电子邮件安全
* EmailEvents
* EmailUrlInfo
* EmailAttachmentInfo
* EmailPostDeliveryEvents
* UrlClickEvents
### 身份
* SigninLogs
* AADNonInteractiveUserSignInLogs
* AADRiskyUsers
* AADUserRiskEvents
* AuditLogs
### 终端
* DeviceEvents
* DeviceProcessEvents
* DeviceNetworkEvents
* DeviceFileEvents
* DeviceRegistryEvents
* DeviceLogonEvents
### 云活动
* CloudAppEvents
* OfficeActivity
* AzureActivity
## MITRE ATT&CK 覆盖范围
| 技术 | 描述 |
| --------- | ---------------------------- |
| T1566 | 网络钓鱼 |
| T1078 | 有效账户 |
| T1114 | 电子邮件收集 |
| T1539 | 窃取 Web 会话 Cookie |
| T1098 | 账户操纵 |
| T1056 | 凭据访问 |
| T1027 | 隐藏文件 |
| T1041 | 通过 C2 通道的数据泄露 |
## 目标
* 识别网络钓鱼尝试
* 检测用户与恶意内容的交互
* 调查凭证盗窃指标
* 识别账户泄露
* 验证终端影响
* 支持隔离和修复活动
# 调查步骤:
## 第 1 阶段 – 电子邮件分析
目标:确定电子邮件是否为合法/垃圾邮件/促销/网络钓鱼/商业电子邮件欺诈(BEC)
### 主题行分析
审查:
* 紧迫性指标
* 凭证请求
* 付款请求
* 财务主题
* 高管模仿
* MFA 验证请求
示例:
* 立即行动
* 今日密码过期
* 验证您的账户
* 未付发票
* 薪资更新
### 电子邮件元数据分析
调查:
* 发件人地址
* 显示名称欺骗
* 发件人域名
* 发件人 IP
* 返回路径
* SPF
* DKIM
* DMARC
验证:
* 域名信誉
* 发件人 IP 信誉
* 认证结果
* SCL & BCL 评分
### 电子邮件内容分析
审查:
* 嵌入式 URL
* 附件
* 二维码
* HTML 内容
* 品牌模仿指标
#### KQL 查询:
```
EmailEvents
| where NetworkMessageId == ""
| project
TimeGenerated,
SenderFromAddress,
SenderDisplayName,
SenderFromDomain,
RecipientEmailAddress,
Subject,
UrlCount,
AttachmentCount,
DeliveryAction,
DeliveryLocation,
OrgLevelAction,
OrgLevelPolicy,
EmailAction,
EmailActionPolicy,
EmailDirection,
SenderIPv4,
SenderIPv6,
InternetMessageId,
NetworkMessageId,
AuthenticationDetails,
To,
Cc,
EmailSize
| order by TimeGenerated desc
```
## 第 2 阶段 – URL 和附件调查
### URLs -> URL
验证:
* URL 信誉
* 域名年龄
* 重定向链
* 凭证收集行为
* 恶意软件分发
调查:
* VirusTotal
* URLScan
* Any.Run/Sandbox
* Microsoft Defender
### 附件
验证:
* 文件扩展名
* SHA256
* 信誉
* 沙盒结果
常见恶意文件类型:ISO、IMG、HTA、ZIP、RAR、XLSM、DOCM、LNK、EXE、JS
#### KQL 查询:
```
union EmailUrlInfo, EmailAttachmentInfo, EmailPostDeliveryEvents
| where NetworkMessageId == ""
| project
Type,
TimeGenerated,
NetworkMessageId,
FileName,
FileSize,
FileType,
FileExtension,
SHA256,
SenderFromAddress,
RecipientEmailAddress,
Url,
UrlLocation,
UrlDomain,
Action,
ActionResult,
ActionTrigger,
ActionType,
DeliveryLocation,
InternetMessageId
| order by TimeGenerated desc
```
## 第 3 阶段 – 用户交互验证
验证:
* 电子邮件是否送达?
* 电子邮件是否隔离?
* 是否点击了 URL?
* 是否打开了附件?
如果没有交互:
风险 = 低
如果发生交互:
继续进行身份调查。
#### KQL 查询:
```
UrlClickEvents
| where AccountUpn == ""
| project
Timestamp,
AccountUpn,
Url,
ActionType,
IsClickedThrough,
IPAddress
| order by Timestamp desc
```
## 第 4 阶段 – 身份调查
调查:
* 成功登录
* 失败登录
* 不可能的旅行
* 新国家
* 新 IP
* 新设备
* 风险登录
审查:
* MFA 变更
* 密码重置
* 设备注册
* 同意授予
#### KQL 查询:
```
union SigninLogs, AADNonInteractiveUserSignInLogs
| where UserPrincipalName == ""
| project
TimeGenerated,
UserPrincipalName,
Location,
IPAddress,
ResultType,
ResultDescription,
AuthenticationRequirement,
DeviceDetail_dynamic,
DeviceDetail_string,
AppDisplayName,
AuthenticationDetails,
AuthenticationProtocol,
ConditionalAccessStatus,
ClientAppUsed, Identity,
ResourceDisplayName,
UserAgent,
UserId,
AuthenticationRequirementPolicies,
SessionID
| order by TimeGenerated desc
```
```
SigninLogs
| where UserPrincipalName == ""
| where TimeGenerated > ago(30d)
| summarize
Countries=make_set(Location),
IPs=make_set(IPAddress)
```
```
union AADRiskyUsers, AADUserRiskEvents
| where UserPrincipalName == ""
| project
Type,
TimeGenerated,
UserId,
UserDisplayName,
UserPrincipalName,
OperationName,
IpAddress,
Activity,
RiskDetail,
RiskLevel,
RiskState,
RiskLastUpdatedDateTime,
RiskEventType,
Location,
AdditionalInfo
| order by Type
```
```
AuditLogs
| where TargetResources contains ""
| project
TimeGenerated,
InitiatedBy,
TargetResources,
OperationName,
Category,
ActivityDisplayName,
Id,
Identity,
Result,
ResultDescription,
ResultReason,
AdditionalDetails
| order by TimeGenerated
```
## 第 5 阶段 – 终端调查
审查:
* 可疑进程
* 浏览器活动
* 网络连接
* 文件下载
* 持久机制
寻找:
* PowerShell
* CMD
* Rundll32
* Regsvr32
* MSHTA
## 第 6 阶段 – 威胁狩猎
狩猎:
* 类似的电子邮件
* 类似的 URL
* 相同的发件人域名
* 相同的附件哈希
* 相同的 IP
确定:
* 受影响的附加用户
* 活动传播
* 相关指标
#### KQL 查询:
```
EmailEvents
| where SenderFromDomain == "maliciousdomain.com"
| summarize Recipients=dcount(RecipientEmailAddress)
```
```
EmailUrlInfo
| where UrlDomain == "maliciousdomain.com"
```
```
EmailAttachmentInfo
| where SHA256 == "HASH"
```
```
UrlClickEvents
| join kind=inner (
SigninLogs
) on $left.AccountUpn == $right.UserPrincipalName
```
#### 检测逻辑:
* 用户点击 URL -> 30 分钟内成功登录 -> 不寻常的位置/IP
* 多个用户从同一发件人域名收到这些电子邮件
* 相同的附件(SHA256)已发送给多个用户 - 恶意附件活动
#### 检测规则的调整/改进:
URL 点击 + 登录关联,随后,
* 创建收件箱规则
* 新的 MFA 注册
* OAuth 同意授予
* URL 点击后的不可能旅行
## 第 7 阶段 – 隔离
电子邮件操作:
* 清除电子邮件
* 块域名
* 块 URL
* 块 IP
* 块哈希
如果确认泄露,
用户账户操作:
* 禁用账户
* 重置密码
* 撤销所有会话
* 强制 MFA 重新注册
* 启动终端扫描
* 调查持久性
* 删除恶意文件
### 经验教训
记录:
* 根本原因
* 受影响的用户
* 受害资产
* 检测差距
* 实施的改进
* 创建的新检测
标签:AI合规