后端与接口
用 KQL 查询 Azure…
在 Azure 租户中通过 azure-monitor-query 执行 KQL 查询,检测权限提升、不可能旅行、资源篡改等威胁。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
用 KQL 查询 Azure 活动日志与特定
解决思路
- 使用 azure-monitor-query 对 Azure Log Analytics 工作区执行 KQL 查询,检测可疑管理操作与登录异常。
- 用 DefaultAzureCredential 获取凭据,初始化 LogsQueryClient,再调用 query_workspace 并传入 workspace_id、KQL 查询语句和 timespan(如 timedelta(hours=24))。
- 编写检测查询:角色分配变更(权限提升),例如查询 AzureActivity 中 OperationNameValue 包含 'MICROSOFT.AUTHORIZATION/ROLEASSIGNMENTS/WRITE' 的记录。
- 编写检测查询:资源组与订阅的修改。
- 编写检测查询:来自新 IP 的 Key Vault 密钥访问。
- 编写检测查询:网络安全组(NSG)规则变更。
- 编写检测查询:条件访问策略修改。
- 检测新增 Global Admin 角色分配,例如查询 AuditLogs 中 OperationName == "Add member to role" 且 TargetResources[0].modifiedProperties[0].newValue 包含 "Global Administrator" 的记录。
适用边界 · 注意事项
- 没有 Azure 租户或 Log Analytics 工作区访问权限时
- 未获得对目标环境进行测试的适当授权时