92UKRHUYCOEV/AI-Assisted-Detection-Response-Pipeline

GitHub: 92UKRHUYCOEV/AI-Assisted-Detection-Response-Pipeline

基于 Microsoft Sentinel 和 Python 构建的 AI 辅助检测与响应管道,通过 KQL 检测暴力破解模式并自动分诊告警,提升安全运营效率。

Stars: 0 | Forks: 0

# AI 辅助检测与响应管道 (Microsoft Sentinel) ## 🔎 概述 设计了一个云安全工作流,用于检测可疑的身份验证活动、自动化调查,并应用 AI 辅助分诊来推荐响应操作。 ## 🧱 架构 (高级) ### 日志 → Log Analytics → KQL 检测 → Sentinel 事件 → Logic App → AI 分诊 (Python) → 响应 ## ⚙️ 核心功能 - 检测工程 (KQL) – 暴力破解模式检测 - SIEM/SOAR 自动化 – Sentinel + Logic Apps - AI 辅助分诊 – 总结、分类严重性、推荐操作 - 事件响应 – 标记、通知、修复指南 ## 🧰 技术栈 Microsoft Sentinel • Log Analytics • KQL • Azure Logic Apps • Python ## 🧭 MITRE ATT&CK 映射 |MITRE ID | 描述 | |:-----|:-------------------| |T1110 | 暴力破解 | |T1078 | 有效账户 | |TA0001 | 初始访问 | |TA0006 | 凭证访问 | ## 🔁 工作流 (逐步) 1. KQL 规则检测到多次失败登录后成功的情况 2. Sentinel 创建事件 3. Logic App 自动触发 4. 提取用户/IP/尝试数据 5. Python 分诊总结 + 分类严重性 6. 应用响应 (标记、通知、推荐操作) ## 📥 示例输入 { "UserPrincipalName": "[user@company.com](mailto:user@company.com)", "IPAddress": "192.168.1.10", "FailedAttempts": 7 } ## 📤 AI 分诊输出 { "severity": "Medium", "summary": "同一 IP 发生多次登录失败后成功的情况。", "recommendation": "监控账户活动并强制执行 MFA。" } ## 🧪 验证与测试 - 模拟身份验证事件以验证检测逻辑 - 验证了严重性阈值 (低/中/高) - 确认了响应建议的一致性 ## 🛡️ 预防性控制 - 强制执行 MFA 和 Conditional Access - 应用账户锁定策略 - 监控高风险登录 (Entra ID Protection) ## ⚠️ 局限性 - 基于阈值的检测可能需要调优 - AI 分诊基于规则 (非完整的机器学习) - 尚未在生产租户中部署 ## 🚀 未来增强 - 集成 Azure OpenAI 以实现高级总结 - 将 Python 部署为 Azure Function - 扩展检测范围并添加 Sentinel 仪表板 ## 📝 部署说明 在实验室环境中设计和验证。完整部署有待租户批准。 ## 🔗 代码库 https://github.com/92UKRHUYCOEV/AI-Assisted-Detection-Response-Pipeline 使用 Microsoft Sentinel 和 KQL 构建了一个 AI 辅助的检测和响应管道,用于识别暴力破解登录模式。自动化工作流触发警报分诊,基于 Python 的层总结事件、分类严重性并推荐操作,从而提高警报清晰度和响应效率。

AI-Assisted-Detection- -Responce-Pipeline_ChatGPT Image May 4, 2026, 01_52_35 PM

## 🎨 工作流摘要

AI-Asst-Detectio-Project_Work-Flow_ChatGPT Image May 4, 2026, 02_05_43 PM

## 🚨 Sentinel 事件

image

## 🚨 Sentinel 分析

image

🧠 KQL 检测规则 (暴力破解模式) ``` SigninLogs | where ResultType != 0 // failed logins | summarize FailedAttempts = count() by IPAddress, UserPrincipalName, bin(TimeGenerated, 5m) | where FailedAttempts >= 5 | join kind=inner ( SigninLogs | where ResultType == 0 // successful login ) on IPAddress, UserPrincipalName | project TimeGenerated, UserPrincipalName, IPAddress, FailedAttempts | order by TimeGenerated desc ```

image

## ⚓ 警报分析与分诊模块 (Python Logic App) 实现了一个 Azure Logic App 触发器,用于根据 Microsoft Sentinel 警报自动化事件响应工作流。 当 Sentinel 事件创建时,Logic App 会自动触发。它充当编排层,提取事件数据,将其传递给基于 Python 的分诊功能,然后执行标记或通知等响应操作。 ``` import json def analyze_alert(alert): failed_attempts = alert.get("FailedAttempts", 0) if failed_attempts >= 10: severity = "High" recommendation = "Block IP, reset user password, investigate account activity." elif failed_attempts >= 5: severity = "Medium" recommendation = "Monitor account, consider MFA enforcement." else: severity = "Low" recommendation = "Log and monitor." summary = f""" Suspicious login pattern detected. User: {alert.get("UserPrincipalName")} IP: {alert.get("IPAddress")} Failed Attempts: {failed_attempts} Severity: {severity} Recommended Action: {recommendation} """ return { "summary": summary.strip(), "severity": severity, "recommendation": recommendation } # 示例告警输入(模拟 Sentinel 输出) sample_alert = { "UserPrincipalName": "user@company.com", "IPAddress": "192.168.1.10", "FailedAttempts": 7 } result = analyze_alert(sample_alert) print(json.dumps(result, indent=2)) ``` ## 🚧 构建使用 - 基于 JSON 的工作流定义 - Azure Logic App 连接器 (预构建的 API 集成) ## 🔍 示例输入与输出 ### 示例警报:输入 { "UserPrincipalName": "[user@company.com](mailto:user@company.com)", "IPAddress": "192.168.1.10", "FailedAttempts": 7 } ### AI 分诊:输出 { "severity": "Medium", "summary": "同一 IP 发生多次登录失败后成功的情况。", "recommendation": "监控账户活动并强制执行 MFA。" } ## 📌 验证与测试 检测和分诊逻辑使用模拟的身份验证数据进行了验证,以确保: - 准确检测暴力破解模式 - 正确的严重性分类阈值 - 有意义的响应建议 此测试确认了工作流在全面部署之前按预期运行。 ``` Logs → Log Analytics → KQL Detection → Sentinel Incident → Logic App → AI Triage (Python) → Response ``` ## 🚧 局限性 - 检测基于阈值逻辑,可能需要调优以减少误报 - AI 分诊基于规则,未利用完整的机器学习模型 - 工作流专为中低警报量设计,在生产使用时可能需要扩展 - 我设计、测试、验证并理解了系统的局限性 ## 🔧 未来增强 - 集成 Azure OpenAI 以实现高级自然语言总结 - 将 Python 逻辑部署为 Azure Function 以实现完整的云集成 - 扩展检测规则以包含额外的攻击模式 - 使用 Sentinel Workbooks 添加仪表板可视化 ##🚨 简化的触发器定义 ``` { "trigger": { "type": "ApiConnection", "inputs": { "host": { "connectionName": "azureSentinel" }, "method": "get", "path": "/incidents" } } } ``` ### ⚙️ 工作原理 (逐步) 1. Sentinel 检测到可疑活动 2. 创建一个事件 3. Logic App 触发器启动: - “当创建事件时” 4. Logic App 执行: - 获取事件详情 - 调用 Python / AI 逻辑 - 标记 / 通知 / 响应 ### 🔗 常用连接器 - Microsoft Sentinel - Azure Monitor / Log Analytics - HTTP (用于调用 Python 或 API) - Microsoft Teams / 电子邮件 - Azure Functions

image

## 🗝️ 自动化触发工作流 从警报到行动——全自动。 此工作流展示了 Microsoft Sentinel 事件如何触发 Azure Logic App 执行调查和响应步骤,从而奠定可扩展的 SIEM/SOAR 操作基础。 ## 🤖 此脚本的功能 - 分析警报数据 (失败尝试、用户、IP) - 分类严重性 (高 / 中 / 低) - 提供推荐的响应操作 - 返回供自动化和分析师使用的总结 ## 🧠 为何重要 - 启用 SOAR (安全编排、自动化与响应) - 移除手动分诊步骤 - 扩展安全操作规模 ## 🎯 确认的成果 - 更清晰的警报 - 更快的分诊 - 减少警报疲劳 - 提高响应效率 ## 📐 设计层面的实现 我设计了完整的检测和响应管道,包括基于 KQL 的检测、自动化工作流和 AI 辅助的分诊逻辑。虽然部署尚待租户批准,但系统已完全定义并准备好实施。 ## 💲 部署说明 本项目在实验室环境中进行了设计和验证。在 Azure Logic Apps 和 Microsoft Sentinel 中的全面部署尚待租户级别批准。 工作流、逻辑和自动化步骤已完全定义并准备好实施。
标签:AI安全, AI辅助分类, AMSI绕过, Azure Logic Apps, Azure安全, Chat Copilot, EDR, IAM, KQL, Kusto查询语言, Log Analytics, Microsoft Sentinel, Python, SecOps, SOAR, 云安全架构, 免杀技术, 威胁检测, 安全工作流, 安全运营, 异常登录检测, 微软哨兵, 扫描框架, 无后门, 智能告警, 暴力破解检测, 红队行动, 网络安全, 脆弱性评估, 身份与访问管理, 逆向工具, 隐私保护