Megarya27/Automated-Cloud-SOC-Threat-Detection-Incident-Response-Pipeline
GitHub: Megarya27/Automated-Cloud-SOC-Threat-Detection-Incident-Response-Pipeline
一个在 Azure 上构建的自动化云端 SOC 家庭实验室项目,通过蜜罐引流、Sentinel 检测和 Logic Apps 自动封禁实现端到端的威胁检测与事件响应流水线。
Stars: 0 | Forks: 0
# 自动化云端 SOC:威胁检测与事件响应流水线
## 项目目标
我希望亲自动手在 Microsoft Azure 中构建并自动化一个基于云的安全运营中心(SOC)。在这个项目中,我搭建了一个临时(短暂)的基础设施流水线,故意将一个存在漏洞的 Linux 蜜罐暴露在公共互联网上。随后,我将遥测数据汇集到集中的 SIEM 中,并利用 SOAR 原则设置了自动化的网络层响应。
我没有将这些服务器视为永久性设施,而是将它们视为一次性资产。我构建、测试并系统地拆除了整个环境。这是一种练习真实世界威胁缓解的绝佳方式,同时还能密切关注云成本(因为成本优化是关键!)。
## 架构图
![正在上传 3616042815537316202.jpg…]()
## 技术栈与核心概念
* **云提供商:** Microsoft Azure
* **基础设施:** Ubuntu Server(蜜罐 VM)、虚拟网络(VNet)、网络安全组(NSG)
* **遥测与摄取:** Azure Monitor Agent (AMA)、数据收集规则 (DCR)、Linux Syslog
* **SIEM 平台:** Microsoft Sentinel、Log Analytics Workspace (LAW)
* **SOAR 自动化:** Azure Logic Apps、Azure Resource Manager (ARM) API
* **检测工程:** Kusto 查询语言 (KQL)
* **访问控制:** 系统分配的托管标识、基于角色的访问控制 (RBAC)
## 阶段 1:基础设施与遥测摄取
首先,我启动了一台 Ubuntu Linux VM,并配置了一条高度宽松的网络安全组 (NSG) 规则,以允许来自任意位置的入站 SSH 流量(端口 22)。目的是故意吸引自动扫描器和暴力破解尝试。
为了将所有这些网络遥测数据集中到一个地方,我将 Azure Monitor Agent 部署到了该 VM 上。使用数据收集规则,我过滤了日志,仅抓取身份验证事件(`auth` 和 `authpriv` Syslog 设施)以降低存储成本。随后,这些事件被直接流式传输到连接了 Microsoft Sentinel 的 Log Analytics Workspace 中。
## 阶段 2:通过 KQL 进行检测工程
随着身份验证日志成功解析到 SIEM 中,是时候使用 Kusto 查询语言 (KQL) 编写一些自定义检测逻辑了。此处的目的是过滤掉常规扫描的背景噪音,并精准定位激进的暴力破解攻击。
我在 Sentinel 中设置了一个计划分析规则,如果单个 IP 地址在短时间内累计出现超过 10 次失败的登录尝试,则触发安全事件。
```
Syslog
| where Facility == "auth" or Facility == "authpriv"
| where SyslogMessage contains "Failed password"
| extract @"from ([\d\.]+)", 1, SyslogMessage
| summarize FailedAttempts = count() by AttackerIP = extract1
| where FailedAttempts > 10
```
## 阶段 3:自动化事件响应 (SOAR)
为了尽快阻止攻击,我使用 Azure Logic Apps 构建了一个 SOAR playbook。
每当 Sentinel 规则捕获到暴力破解攻击并生成事件时,Logic App 就会自动启动。它会解析事件数据,分离出攻击者的 IP 地址,并使用系统分配的托管标识(仅具备足够的网络权限)直接与 Azure Resource Manager API 通信。
该 Logic App 实质上是向 VM 的网络安全组中注入了一个动态的 JSON payload,瞬间创建了一条高优先级的“拒绝”规则,直接在入口处拦截恶意 IP。
```
{
"properties": {
"protocol": "*",
"sourcePortRange": "*",
"destinationPortRange": "*",
"sourceAddressPrefix": "@{items('For_each')}",
"destinationAddressPrefix": "*",
"access": "Deny",
"priority": 100,
"direction": "Inbound"
}
}
```
## 项目心得与工程成果
* **理论与实践的结合:** 这个项目是将基础安全概念应用到实时云环境中的绝佳方式。它不仅超越了对理论的理解,还实实在在地在 Azure 中架构、部署和监控了一个功能完备的威胁缓解流水线。
* **现代企业自动化 (SOAR):** 我亲身实践了安全编排、自动化与响应。通过将 Logic Apps 与 Azure Resource Manager API 连接,我用实时的、可编程的网络防御取代了手动事件响应——这正是成熟的 SOC 中的运作方式。
* **检测工程:** 我没有依赖通用的开箱即用警报,而是使用 KQL 编写了自定义的解析和检测逻辑。这是将嘈杂的原始日志数据转化为可操作的安全情报的绝佳练习。
* **云成本优化与生命周期管理:** 秉持“临时基础设施”的理念,意味着我能够构建、测试并拆除整个企业级设置,同时将云开销保持在接近于零的水平。这是一堂关于有成本意识的资源管理的扎实课程。
标签:AMSI绕过, Azure云, 威胁检测, 安全运营, 底层分析, 扫描框架, 自动化响应, 蜜罐, 证书利用