mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-02-05 19:32:24 -08:00
Translated ['src/pentesting-cloud/azure-security/az-services/az-defender
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
# Az - Defender
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Microsoft Defender for Cloud
|
||||
|
||||
Microsoft Defender for Cloud 是一个全面的安全管理解决方案,涵盖 Azure、本地和多云环境。它被归类为云原生应用保护平台(CNAPP),结合了云安全态势管理(CSPM)和云工作负载保护(CWPP)能力。其目的是帮助组织发现 **云资源中的错误配置和弱点**,增强整体安全态势,并保护工作负载免受 Azure、亚马逊网络服务(AWS)、谷歌云平台(GCP)、混合本地设置等不断演变的威胁。
|
||||
|
||||
在实际操作中,Defender for Cloud **持续评估您的资源与安全最佳实践和标准的符合性**,提供统一的仪表板以便于可视化,并使用先进的威胁检测来提醒您攻击。主要好处包括 **跨云的统一安全视图**、可采取的建议以防止数据泄露,以及集成的威胁保护,可以降低安全事件的风险。通过原生支持 AWS 和 GCP 及其他 SaaS 平台,并使用 Azure Arc 管理本地服务器,确保您可以 **在一个地方管理所有环境的安全**。
|
||||
|
||||
### Key Features
|
||||
|
||||
- **Recommendations**: 本节提供基于持续评估的可操作安全建议列表。每个建议解释了识别出的错误配置或漏洞,并提供修复步骤,让您确切知道该修复什么以提高安全评分。
|
||||
- **Attack Path Analysis**: 攻击路径分析可视化地映射潜在的攻击路线。通过展示漏洞如何连接并可能被利用,它帮助您理解并打破这些路径以防止数据泄露。
|
||||
- **Security Alerts**: 安全警报页面通知您实时威胁和可疑活动。每个警报包括严重性、受影响资源和推荐行动等详细信息,确保您能够迅速应对新出现的问题。
|
||||
- 检测技术基于 **威胁情报、行为分析和异常检测**。
|
||||
- 可以在 https://learn.microsoft.com/en-us/azure/defender-for-cloud/alerts-reference 找到所有可能的警报。根据名称和描述,可以知道 **警报在寻找什么**(以绕过它)。
|
||||
- **Inventory**: 在库存部分,您可以找到跨环境监控的所有资产的综合列表。它提供每个资源安全状态的一目了然的视图,帮助您快速发现需要修复的未保护或风险资产。
|
||||
- **Cloud Security Explorer**: 云安全探索器提供基于查询的界面,以搜索和分析您的云环境。它允许您发现隐藏的安全风险,并探索资源之间的复杂关系,增强您的整体威胁狩猎能力。
|
||||
- **Workbooks**: 工作簿是可视化您的安全数据的交互式报告。使用预构建或自定义模板,它们帮助您监控趋势、跟踪合规性,并审查安全评分随时间的变化,使数据驱动的安全决策变得更容易。
|
||||
- **Community**: 社区部分将您与同行、专家论坛和最佳实践指南连接起来。它是一个宝贵的资源,可以从他人的经验中学习,找到故障排除技巧,并随时了解最新的 Defender for Cloud 发展。
|
||||
- **Diagnose and Solve Problems**: 这个故障排除中心帮助您快速识别和解决与 Defender for Cloud 的配置或数据收集相关的问题。它提供指导诊断和解决方案,以确保平台有效运行。
|
||||
- **Security Posture**: 安全态势页面将您的整体安全状态汇总为一个安全评分。它提供有关您的云中哪些区域强大以及哪些区域需要改进的见解,作为您环境的快速健康检查。
|
||||
- **Regulatory Compliance**: 此仪表板评估您的资源在多大程度上遵循行业标准和监管要求。它显示与 PCI DSS 或 ISO 27001 等基准的合规评分,帮助您找出差距并跟踪审计的修复情况。
|
||||
- **Workload Protections**: 工作负载保护专注于保护特定类型的资源(如服务器、数据库和容器)。它指示哪些 Defender 计划处于活动状态,并为每个工作负载提供量身定制的警报和建议,以增强其保护。它能够在特定资源中发现恶意行为。
|
||||
- 这也是您可以在某些服务中找到的 **`Enable Microsoft Defender for X`** 选项。
|
||||
- **Data and AI Security (Preview)**: 在此预览部分,Defender for Cloud 将其保护扩展到数据存储和 AI 服务。它突出安全漏洞并监控敏感数据,确保您的数据存储库和 AI 平台免受威胁。
|
||||
- **Firewall Manager**: 防火墙管理器与 Azure 防火墙集成,为您提供网络安全策略的集中视图。它简化了防火墙部署的管理和监控,确保在您的虚拟网络中一致应用安全规则。
|
||||
- **DevOps Security**: DevOps 安全与您的开发管道和代码库集成,以在软件生命周期的早期嵌入安全。它帮助识别代码和配置中的漏洞,确保安全内置于开发过程中。
|
||||
|
||||
## Microsoft Defender EASM
|
||||
|
||||
Microsoft Defender 外部攻击面管理(EASM)持续 **扫描和映射您组织的互联网面向资产**——包括域、子域、IP 地址和 Web 应用程序——以提供您外部数字足迹的全面实时视图。它利用先进的爬虫技术,从已知的发现种子开始,自动发现可能保持隐藏的管理和影子 IT 资产。EASM 识别 **风险配置**,例如暴露的管理接口、公开可访问的存储桶和易受不同 CVE 攻击的服务,使您的安全团队能够在这些问题被利用之前解决它们。
|
||||
此外,持续监控还可以显示 **暴露基础设施的变化**,比较不同的扫描结果,以便管理员能够意识到每个执行的更改。
|
||||
通过提供实时洞察和详细的资产清单,Defender EASM 使组织能够 **持续监控和跟踪其外部暴露的变化**。它使用基于风险的分析,根据严重性和上下文因素优先处理发现,确保修复工作集中在最重要的地方。这种主动的方法不仅有助于发现隐藏的漏洞,还通过在新暴露出现时提醒您,支持您整体安全态势的持续改进。
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
104
src/pentesting-cloud/azure-security/az-services/az-monitoring.md
Normal file
104
src/pentesting-cloud/azure-security/az-services/az-monitoring.md
Normal file
@@ -0,0 +1,104 @@
|
||||
# Az - 监控
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Entra ID - 日志
|
||||
|
||||
在 Entra ID 中有 3 种类型的日志:
|
||||
|
||||
- **登录日志**:登录日志记录每次身份验证尝试,无论成功与否。它们提供诸如 IP 地址、位置、设备信息和应用的条件访问策略等详细信息,这些对于监控用户活动和检测可疑登录行为或潜在安全威胁至关重要。
|
||||
- **审计日志**:审计日志提供您 Entra ID 环境中所有更改的记录。它们捕获对用户、组、角色或策略等的更新。这些日志对于合规性和安全调查至关重要,因为它们让您查看是谁在何时进行了什么更改。
|
||||
- **配置日志**:配置日志提供有关通过第三方服务(例如本地目录或 SaaS 应用程序)在您的租户中配置的用户的信息。这些日志帮助您了解身份信息是如何同步的。
|
||||
|
||||
> [!WARNING]
|
||||
> 请注意,这些日志在免费版本中仅存储 **7 天**,在 P1/P2 版本中存储 **30 天**,并在风险登录活动的安全信号中额外存储 60 天。然而,即使是全球管理员也无法 **提前修改或删除它们**。
|
||||
|
||||
## Entra ID - 日志系统
|
||||
|
||||
- **诊断设置**:诊断设置指定您希望从资源收集的平台日志和/或指标的类别列表,以及您希望将其流式传输到的一个或多个目标。目标的正常使用费用将会产生。了解有关不同日志类别及其内容的更多信息。
|
||||
- **目标**:
|
||||
- **分析工作区**:通过 Azure Log Analytics 进行调查并创建警报。
|
||||
- **存储帐户**:静态分析和备份。
|
||||
- **事件中心**:将数据流式传输到外部系统,如第三方 SIEM。
|
||||
- **监控合作伙伴解决方案**:Azure Monitor 与其他非 Microsoft 监控平台之间的特殊集成。
|
||||
- **工作簿**:工作簿将文本、日志查询、指标和参数结合成丰富的交互式报告。
|
||||
- **使用情况与洞察**:有助于查看 Entra ID 中最常见的活动。
|
||||
|
||||
## Azure Monitor
|
||||
|
||||
Azure Monitor 的主要功能包括:
|
||||
|
||||
- **活动日志**:Azure 活动日志捕获订阅级事件和管理操作,提供对资源上所做更改和操作的概述。
|
||||
- **活动日志** 不能被修改或删除。
|
||||
- **变更分析**:变更分析自动检测并可视化 Azure 资源的配置和状态变化,以帮助诊断问题并跟踪随时间的修改。
|
||||
- **警报**:Azure Monitor 的警报是在 Azure 环境中满足特定条件或阈值时触发的自动通知。
|
||||
- **工作簿**:工作簿是 Azure Monitor 中的交互式、自定义仪表板,使您能够结合和可视化来自各种来源的数据,以进行全面分析。
|
||||
- **调查员**:调查员帮助您深入分析日志数据和警报,以进行深入分析并识别事件的原因。
|
||||
- **洞察**:洞察提供分析、性能指标和可操作的建议(如应用程序洞察或虚拟机洞察中的建议),帮助您监控和优化应用程序和基础设施的健康和效率。
|
||||
|
||||
### 日志分析工作区
|
||||
|
||||
日志分析工作区是 Azure Monitor 中的中央存储库,您可以在其中 **收集、分析和可视化来自 Azure 资源和本地环境的日志和性能数据**。以下是关键点:
|
||||
|
||||
- **集中数据存储**:它们作为存储诊断日志、性能指标和由您的应用程序和服务生成的自定义日志的中央位置。
|
||||
- **强大的查询能力**:您可以使用 Kusto 查询语言(KQL)运行查询以分析数据、生成洞察并排除问题。
|
||||
- **与监控工具的集成**:日志分析工作区与各种 Azure 服务(如 Azure Monitor、Azure Sentinel 和应用程序洞察)集成,允许您创建仪表板、设置警报并获得对环境的全面视图。
|
||||
|
||||
总之,日志分析工作区对于 Azure 中的高级监控、故障排除和安全分析至关重要。
|
||||
|
||||
您可以从资源的 **诊断设置** 配置资源以将数据发送到分析工作区。
|
||||
|
||||
## 枚举
|
||||
|
||||
### Entra ID
|
||||
```bash
|
||||
# Get last 10 sign-ins
|
||||
az rest --method get --uri 'https://graph.microsoft.com/v1.0/auditLogs/signIns?$top=10'
|
||||
|
||||
# Get last 10 audit logs
|
||||
az rest --method get --uri 'https://graph.microsoft.com/v1.0/auditLogs/directoryAudits?$top=10'
|
||||
|
||||
# Get last 10 provisioning logs
|
||||
az rest --method get --uri ‘https://graph.microsoft.com/v1.0/auditLogs/provisioning?$top=10’
|
||||
|
||||
# Get EntraID Diagnostic Settings
|
||||
az rest --method get --uri "https://management.azure.com/providers/microsoft.aadiam/diagnosticSettings?api-version=2017-04-01-preview"
|
||||
|
||||
# Get Entra ID Workbooks
|
||||
az rest \
|
||||
--method POST \
|
||||
--url "https://management.azure.com/providers/microsoft.resourcegraph/resources?api-version=2021-03-01" \
|
||||
--headers '{"commandName": "AppInsightsExtension.GetWorkbooksListArg"}' \
|
||||
--body '{
|
||||
"subscriptions": ["9291ff6e-6afb-430e-82a4-6f04b2d05c7f"],
|
||||
"query": "where type =~ \"microsoft.insights/workbooks\" \n| extend sourceId = tostring(properties.sourceId) \n| where sourceId =~ \"Azure Active Directory\" \n| extend DisplayName = tostring(properties.displayName) \n| extend WorkbookType = tostring(properties.category), LastUpdate = todatetime(properties.timeModified) \n| where WorkbookType == \"workbook\"\n| project DisplayName, name, resourceGroup, kind, location, id, type, subscriptionId, tags, WorkbookType, LastUpdate, identity, properties",
|
||||
"options": {"resultFormat": "table"},
|
||||
"name": "e4774363-5160-4c09-9d71-2da6c8e3b00a"
|
||||
}' | jq '.data.rows'
|
||||
```
|
||||
### Azure Monitor
|
||||
```bash
|
||||
# Get last 10 activity logs
|
||||
az monitor activity-log list --max-events 10
|
||||
|
||||
# Get Resource Diagnostic Settings
|
||||
az rest --url "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<res-group>/providers/Microsoft.DocumentDb/databaseAccounts/<db-name>/providers/microsoft.insights/diagnosticSettings?api-version=2021-05-01-preview"
|
||||
|
||||
# Get Entra ID Workbooks
|
||||
az rest \
|
||||
--method POST \
|
||||
--url "https://management.azure.com/providers/microsoft.resourcegraph/resources?api-version=2021-03-01" \
|
||||
--headers '{"commandName": "AppInsightsExtension.GetWorkbooksListArg"}' \
|
||||
--body '{
|
||||
"content": {},
|
||||
"commandName": "AppInsightsExtension.GetWorkbooksListArg"
|
||||
}'
|
||||
|
||||
# List Log Analytic groups
|
||||
az monitor log-analytics workspace list --output table
|
||||
|
||||
# List alerts
|
||||
az monitor metrics alert list --output table
|
||||
az monitor activity-log alert list --output table
|
||||
```
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
@@ -0,0 +1,41 @@
|
||||
# Az - Defender
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Microsoft Sentinel
|
||||
|
||||
Microsoft Sentinel 是一个云原生的 **SIEM**(安全信息和事件管理)和 **SOAR**(安全编排、自动化和响应)解决方案,运行在 Azure 上。
|
||||
|
||||
它将组织内(本地和云)的安全数据聚合到一个平台中,并使用 **内置分析和威胁情报** 来识别潜在威胁。Sentinel 利用 Azure 服务,如 Log Analytics(用于大规模日志存储和查询)和 Logic Apps(用于自动化工作流)——这意味着它可以按需扩展并与 Azure 的 AI 和自动化能力集成。
|
||||
|
||||
本质上,Sentinel 收集和分析来自各种来源的日志,**检测异常或恶意活动**,并允许安全团队快速调查和响应威胁,所有这些都通过 Azure 门户进行,无需本地 SIEM 基础设施。
|
||||
|
||||
### Microsoft Sentinel 配置
|
||||
|
||||
您可以通过在 Azure Log Analytics 工作区上启用 Sentinel 开始(工作区是存储和分析日志的地方)。以下是开始的高层步骤:
|
||||
|
||||
1. **在工作区上启用 Microsoft Sentinel**:在 Azure 门户中,创建或使用现有的 Log Analytics 工作区,并将 Microsoft Sentinel 添加到其中。这将把 Sentinel 的功能部署到您的工作区。
|
||||
2. **连接数据源(数据连接器)**:一旦启用 Sentinel,使用内置数据连接器连接您的数据源。无论是 Entra ID 日志、Office 365,还是防火墙日志,Sentinel 开始自动摄取日志和警报。通常通过创建诊断设置将日志发送到正在使用的日志工作区来完成此操作。
|
||||
3. **应用分析规则和内容**:随着数据的流入,启用内置分析规则或创建自定义规则以检测威胁。使用内容中心获取预打包的规则模板和工作簿,以快速启动您的检测能力。
|
||||
4. **(可选)配置自动化**:设置自动化与剧本,以自动响应事件——例如发送警报或隔离受损账户——增强您的整体响应能力。
|
||||
|
||||
## 主要功能
|
||||
|
||||
- **日志**:日志刀片打开 Log Analytics 查询界面,您可以使用 **Kusto 查询语言(KQL)** 深入分析数据。此区域对于故障排除、取证分析和自定义报告至关重要。您可以编写和执行查询以过滤日志事件、关联来自不同来源的数据,甚至根据您的发现创建自定义仪表板或警报。它是 Sentinel 的原始数据探索中心。
|
||||
- **搜索**:搜索工具提供统一界面,以 **快速定位安全事件、事件和特定日志条目**。您可以输入关键字、IP 地址或用户名,立即提取所有相关事件,而无需手动浏览多个刀片。此功能在调查期间特别有用,当您需要快速连接不同的信息时。
|
||||
- **事件**:事件部分将所有 **分组警报集中到可管理的案例中**。Sentinel 将相关警报聚合到一个事件中,提供严重性、时间线和受影响资源等上下文。在事件中,您可以查看详细的调查图,绘制警报之间的关系,使理解潜在威胁的范围和影响变得更容易。事件管理还包括分配任务、更新状态和与响应工作流集成的选项。
|
||||
- **工作簿**:工作簿是可自定义的仪表板和报告,帮助您 **可视化和分析安全数据**。它们结合各种图表、表格和查询,提供趋势和模式的全面视图。例如,您可以使用工作簿显示登录活动的时间线、IP 地址的地理映射或特定警报的频率。工作簿既有预构建的,也可以完全自定义,以满足您组织的特定监控需求。
|
||||
- **狩猎**:狩猎功能提供了一种主动的方法来 **发现可能未触发标准警报的威胁**。它配备了与 MITRE ATT&CK 等框架对齐的预构建狩猎查询,但也允许您编写自定义查询。此工具非常适合 **希望揭示隐秘或新兴威胁的高级分析师**,通过探索历史和实时数据,例如异常的网络模式或异常的用户行为。
|
||||
- **笔记本**:通过笔记本集成,Sentinel 利用 **Jupyter 笔记本进行高级数据分析和自动化调查**。此功能允许您直接对 Sentinel 数据运行 Python 代码,使得执行机器学习分析、构建自定义可视化或自动化复杂调查任务成为可能。对于需要进行超出标准查询的深入分析的数据科学家或安全分析师来说,这尤其有用。
|
||||
- **实体行为**:实体行为页面使用 **用户和实体行为分析(UEBA)** 来建立您环境中正常活动的基线。它显示用户、设备和 IP 地址的详细配置文件,**突出显示与典型行为的偏差**。例如,如果一个通常低活动的账户突然表现出高数据传输量,这种偏差将被标记。此工具对于基于行为异常识别内部威胁或受损凭证至关重要。
|
||||
- **威胁情报**:威胁情报部分允许您 **管理和关联外部威胁指标**——例如恶意 IP 地址、URL 或文件哈希——与您的内部数据。通过与外部情报源集成,Sentinel 可以自动标记与已知威胁匹配的事件。这有助于您快速检测和响应属于更广泛已知攻击活动的攻击,为您的安全警报增加另一层上下文。
|
||||
- **MITRE ATT&CK**:在 MITRE ATT&CK 刀片中,Sentinel **将您的安全数据和检测规则映射到广泛认可的 MITRE ATT&CK 框架**。此视图帮助您了解在您的环境中观察到的战术和技术,识别覆盖中的潜在空白,并将您的检测策略与公认的攻击模式对齐。它提供了一种结构化的方法来分析对手可能如何攻击您的环境,并帮助优先考虑防御行动。
|
||||
- **内容中心**:内容中心是一个集中式存储库,包含 **预打包的解决方案,包括数据连接器、分析规则、工作簿和剧本**。这些解决方案旨在加速您的部署并改善您的安全态势,通过提供常见服务(如 Office 365、Entra ID 等)的最佳实践配置。您可以浏览、安装和更新这些内容包,使得将新技术集成到 Sentinel 中变得更容易,而无需大量手动设置。
|
||||
- **存储库**:存储库功能(目前处于预览阶段)为您的 Sentinel 内容启用版本控制。它与源控制系统(如 GitHub 或 Azure DevOps)集成,允许您 **将分析规则、工作簿、剧本和其他配置作为代码进行管理**。这种方法不仅改善了变更管理和协作,还使得在必要时更容易回滚到先前版本。
|
||||
- **工作区管理**:Microsoft Sentinel 的工作区管理器使用户能够 **集中管理一个或多个 Azure 租户中的多个 Microsoft Sentinel 工作区**。中央工作区(启用工作区管理器)可以将内容项整合到规模上发布到成员工作区。
|
||||
- **数据连接器**:数据连接器页面列出所有可用的连接器,将数据引入 Sentinel。每个连接器都是 **为特定数据源预配置的**(包括 Microsoft 和第三方),并显示其连接状态。设置数据连接器通常只需几次点击,之后 Sentinel 开始从该源摄取和分析日志。此区域至关重要,因为您的安全监控的质量和广度取决于您连接的数据源的范围和配置。
|
||||
- **分析**:在分析刀片中,您 **创建和管理驱动 Sentinel 警报的检测规则**。这些规则本质上是按计划(或近实时)运行的查询,用于识别日志数据中的可疑模式或阈值突破。您可以选择 Microsoft 提供的内置模板,或使用 KQL 编写自己的自定义规则。分析规则决定了警报的生成方式和时间,直接影响事件的形成和优先级。
|
||||
- **观察列表**:Microsoft Sentinel 观察列表使您能够 **从外部数据源收集数据,以便与 Microsoft Sentinel 环境中的事件进行关联**。创建后,在您的搜索、检测规则、威胁狩猎、工作簿和响应剧本中利用观察列表。
|
||||
- **自动化**:自动化规则允许您 **集中管理所有事件处理的自动化**。自动化规则简化了 Microsoft Sentinel 中的自动化使用,并使您能够简化事件编排过程中的复杂工作流。
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
Reference in New Issue
Block a user