你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
网络安全建议
本文列出了在 Microsoft Defender for Cloud 中看到的所有网络安全建议。
环境中显示的建议基于要保护的资源和自定义配置。
若要了解可以针对这些建议采取的操作,请参阅 Defender for Cloud 修正建议。
提示
如果建议的描述中显示“无相关策略”,通常是因为该建议依赖于另一个建议。
例如,建议“应修正 Endpoint Protection 运行状况失败”依赖于建议“应安装 Endpoint Protection 解决方案”,后者检查 Endpoint Protection 解决方案是否已安装。 基础建议确实具有一个策略。 将策略限制为仅用于基本建议可简化策略管理。
Azure 网络建议
应限制对具有防火墙和虚拟网络配置的存储帐户的访问
说明:查看存储帐户防火墙设置中的网络访问设置。 建议配置网络规则,以便只有来自许可网络的应用程序才能访问存储帐户。 若要允许来自特定 Internet 或本地客户端的连接,可以向来自特定 Azure 虚拟网络或到公共 Internet IP 地址范围的流量授予访问权限。 (相关策略:存储帐户应限制网络访问)。
严重性:低
应在面向 Internet 的虚拟机上应用自适应网络强化建议
说明:Defender for Cloud 已分析下面列出的虚拟机的 Internet 流量通信模式,并确定与之关联的 NSG 中的现有规则过于宽松,从而导致潜在的攻击面增加。 这通常在此 IP 地址不会定期与此资源通信的情况下发生。 或者,该 IP 地址已被 Defender for Cloud 的威胁情报源标记为恶意 IP。 (相关策略: 应在面向 Internet 的虚拟机上应用自适应网络强化建议。
严重性:高
应限制在与虚拟机关联的网络安全组上使用所有网络端口
说明:Defender for Cloud 已识别到网络安全组的某些入站规则过于宽松。 入站规则不应允许从“任何”或“Internet”范围进行访问。 这有可能使得攻击者能够将你的资源定为攻击目标。 (相关策略:应限制在与虚拟机关联的网络安全组上使用所有网络端口)。
严重性:高
应启用 Azure DDoS 防护标准
说明:Defender for Cloud 发现了应用程序网关资源不受 DDoS 保护服务保护的虚拟网络。 这些资源包含公共 IP。 缓解网络容量和协议攻击。 (相关策略:应启用 Azure DDoS 防护标准)。
严重性:中等
面向 Internet 的虚拟机应使用网络安全组进行保护
说明:使用网络安全组 (NSG) 限制对 VM 的访问,以此防范其遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则允许或拒绝来自同一子网内外的其他实例到 VM 的网络流量。 为了使计算机尽可能安全,必须限制 VM 对 Internet 的访问权限,并且应在子网上启用 NSG。 严重性为“高”的 VM 是面向 Internet 的 VM。 (相关策略:面向 Internet 的虚拟机应使用网络安全组进行保护)。
严重性:高
应禁用虚拟机上的 IP 转发
说明:Defender for Cloud 发现在某些虚拟机上已启用 IP 转发。 在虚拟机的 NIC 上启用 IP 转发可让该计算机接收发往其他目标的流量。 极少需要启用 IP 转发(例如,将 VM 用作网络虚拟设备时),因此,此策略应由网络安全团队评审。 (相关策略:应禁用虚拟机上的 IP 转发)。
严重性:中等
计算机应关闭可能暴露攻击途径的端口
说明:Azure 的使用条款禁止以可能损害、禁用、过度负担或损害任何 Microsoft 服务器或网络的方式使用 Azure 服务。 此建议列出了需要关闭的暴露端口,以确保持续安全。 它还说明了每个端口的潜在威胁。 (无相关策略)
严重性:高
应通过即时网络访问控制来保护虚拟机的管理端口
说明:Defender for Cloud 已确定一些对网络安全组中的管理端口过于宽松的入站规则。 启用实时访问控制,以保护 VM 免受基于 Internet 的暴力攻击。 有关详细信息,请参阅了解实时 (JIT) VM 访问。 (相关策略:应通过即时网络访问控制来保护虚拟机的管理端口)。
严重性:高
应关闭虚拟机上的管理端口
说明:打开远程管理端口会使 VM 暴露在较高级别的基于 Internet 的攻击风险之下。 此类攻击试图暴力破解凭据,来获取对计算机的管理员访问权限。 (相关策略:应关闭虚拟机上的管理端口)。
严重性:中等
应使用网络安全组来保护非面向 Internet 的虚拟机
说明:使用网络安全组 (NSG) 限制对 VM 的访问,以此防范非面向 Internet 的虚拟机遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则允许或拒绝从其他实例到 VM 的网络流量,无论它们是否位于同一子网中。 请注意,为了使计算机尽可能安全,必须限制 VM 对 Internet 的访问权限,并且应在子网上启用 NSG。 (相关策略:应使用网络安全组来保护非面向 Internet 的虚拟机)。
严重性:低
应启用安全传输到存储帐户
说明:安全传输是强制存储帐户仅接受来自安全连接 (HTTPS) 的请求的选项。 使用 HTTPS 可确保服务器和服务之间的身份验证并保护传输中的数据免受中间人攻击、窃听攻击和会话劫持等网络层攻击。 (相关策略:应启用到存储帐户的安全传输)。
严重性:高
子网应与网络安全组关联
说明:使用网络安全组 (NSG) 限制对子网的访问,以此防范其遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则可以允许或拒绝流向子网的网络流量。 当 NSG 与子网关联时,ACL 规则适用于该子网中的所有 VM 实例和集成服务,但不适用于子网内的内部流量。 若要确保同一子网中的资源彼此之间的安全,请直接在资源上启用 NSG。 请注意,以下子网类型将列为不适用:GatewaySubnet、AzureFirewallSubnet、AzureBastionSubnet。 (相关策略:子网应与网络安全组关联)。
严重性:低
虚拟网络应受 Azure 防火墙保护
说明:部分虚拟网络不受防火墙保护。 使用 Azure 防火墙限制虚拟网络的访问权限并防止潜在威胁。 (相关策略:所有 Internet 流量都应通过部署的 Azure 防火墙进行路由)。
AWS 网络建议
Amazon EC2 应配置为使用 VPC 终结点
说明:此控件检查是否为每个VP 创建了 Amazon EC2 的服务终结点。 如果一个VP没有为 Amazon EC2 服务创建一个VP终结点,该控件将失败。 若要改进 VPC 的安全状态,可以将 Amazon EC2 配置为使用接口 VPC 终结点。 接口终结点由 AWS PrivateLink 提供支持,这是一种能够让你专门访问 Amazon EC2 API 操作的技术。 它将 VPC 和 Amazon EC2 之间的所有流量限制为 Amazon 网络。 由于终结点仅在同一区域中受支持,因此不能在不同的区域中的一个VP和服务之间创建终结点。 这会阻止对其他区域的意外 Amazon EC2 API 调用。 若要了解有关为 Amazon EC2 创建 VPC 终结点的详细信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南中的 Amazon EC2 和接口 VPC 终结点。
严重性:中等
Amazon ECS 服务不应自动分配到的公共 IP 地址
说明:公共 IP 地址是可从 Internet 访问的 IP 地址。 如果使用公共 IP 启动 Amazon ECS 实例,则可以从 Internet 访问 Amazon ECS 实例。 不应公开访问 Amazon ECS 服务,因为这可能会允许意外访问容器应用程序服务器。
严重性:高
Amazon EMR 群集主节点不应具有公共 IP 地址
说明:此控件检查 Amazon EMR 群集上的主节点是否具有公共 IP 地址。 如果主节点具有与其任何实例相关联的公共 IP,则此控件失败。 公共 IP 在实例的 NetworkInterfaces 配置的 PublicIp 字段中指定。 此控件仅检查处于 RUNNING 或 WAITING 状态的 Amazon EMR 群集。
严重性:高
Amazon Redshift 群集应使用增强型 VPC 路由
说明:此控件检查 Amazon Redshift 群集是否已启用 EnhancedVpcRouting。 增强型 VPC 路由强制执行群集和数据存储库之间的所有 COPY 和 UNLOAD 流量流过 VPC。 然后,你可以使用 VPC 功能(如安全组和网络访问控制列表)来保护流量。 你还可以使用 VPC Flow Logs 来监视流量。
严重性:高
应配置应用程序负载均衡器来将所有 HTTP 请求重定向到 HTTPS
说明:若要在传输中强制加密,应在应用程序负载均衡器中使用重定向操作,将客户端 HTTP 请求重定向到端口 443 上的 HTTPS 请求。
严重性:中等
应用程序负载均衡器应配置为删除 HTTP 标头
说明:此控件评估 AWS 应用程序负载均衡器(ALB),以确保它们配置为删除无效的 HTTP 标头。 如果 routing.http.drop_invalid_header_fields.enabled 的值设置为 false,则此控件失败。 默认情况下,ALB 未配置为删除无效的 HTTP 标头值。 删除这些标头值可防止 HTTP desync 攻击。
严重性:中等
将 Lambda 函数配置到 VPC
说明:此控件检查 Lambda 函数是否在一个VP中。 它不会评估用于确定公共可访问性的大众网络子网路由配置。 请注意,如果在帐户中找到 Lambda@Edge,则此控件生成失败的结果。 若要避免这些结果,可以禁用此控件。
严重性:低
EC2 实例不应具有公共 IP
说明:此控件检查 EC2 实例是否具有公共 IP 地址。 如果“publicIp”字段存在于 EC2 实例配置项中,则此控件失败。 此控件仅适用于 IPv4 地址。 公用 IPv4 地址是可从 Internet 访问的 IP 地址。 如果使用公共 IP 启动实例,则可以从 Internet 访问 EC2 实例。 专用 IPv4 地址是无法从 Internet 访问的 IP 地址。 可以使用专用 IPv4 地址在同一 VPC 或连接的专用网络中的 EC2 实例之间通信。 IPv6 地址全局唯一,因此可从 Internet 访问。 但是,默认情况下,所有子网的 IPv6 寻址属性都设置为 false。 有关 IPv6 的详细信息,请参阅 Amazon VPC 用户指南中的 VPC 中的 IP 寻址。 如果你有使用公共 IP 维护 EC2 实例的合法用例,可以禁止显示此控件的结果。 有关前端体系结构选项的详细信息,请参阅 AWS 体系结构博客或 This Is My Architecture 系列。
严重性:高
EC2 实例不应使用多个 ENI
说明:此控件检查 EC2 实例是否使用多个弹性网络接口(ENIs)或 Elastic Fabric 适配器(EFA)。 如果使用单个网络适配器,则此控件将传递。 该控件包含一个可选参数列表,用于标识允许的 ENIS。 多个 ENIS 可能会导致双主实例,即具有多个子网的实例。 这会增加网络安全复杂性,并产生意外的网络路径和访问。
严重性:低
EC2 实例应使用 IMDSv2
说明:此控件检查 EC2 实例元数据版本是否配置了实例元数据服务版本 2(IMDSv2)。 如果 IMDSv2 的“HttpTokens”设置为“必需”,则此控件通过。 如果“HttpTokens”设置为“可选”,则此控件失败。 使用实例元数据配置或管理正在运行的实例。 IMDS 提供对频繁轮换的临时凭据的访问权限。 这些凭据无需手动或以编程方式对实例进行硬编码或分发敏感凭据。 IMDS 在本地附加到每个 EC2 实例。 它在特殊的链接本地 IP 地址 169.254.169.254 上运行。 只有实例上运行的软件才能访问此 IP 地址。 IMDS 版本 2 为以下类型的漏洞添加了新的保护。 这些漏洞可用于尝试访问 IMDS。
- 打开网站应用程序防火墙
- 打开反向代理
- 服务器端请求伪造(SSRF)漏洞
- 打开第 3 层防火墙和网络地址转换(NAT)安全中心建议使用 IMDSv2 配置 EC2 实例。
严重性:高
EC2 子网不应自动分配公共 IP
说明:此控件检查 Amazon 虚拟私有云(Amazon VR)子网中公共 IP 的分配是否将“MapPublicIpOnLaunch”设置为“FALSE”。 如果标志设置为“FALSE”,则此控件通过。 所有子网都有一个属性,该属性确定子网中创建的网络接口是否自动接收公共 IPv4 地址。 启动到启用了此属性的子网中的实例具有分配给其主网络接口的公共 IP。
严重性:中等
请确保存在关于 AWS Config 配置更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议建立指标筛选器和警报,用于检测 CloudTrail 配置更改。 监视 AWS 配置配置的更改有助于确保 AWS 帐户中配置项的持续可见性。
严重性:低
请确保存在关于 AWS 管理控制台身份验证失败的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议为失败的控制台身份验证尝试建立指标筛选器和警报。 监视失败的控制台登录可能会缩短检测尝试暴力破解凭据的尝试,这可能提供可用于其他事件相关性的指示器(例如源 IP)。
严重性:低
对于网络访问控制列表 (NACL) 的更改,请确保存在日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 NACL 用作无状态数据包筛选器,用于控制 VPC 中子网的入口和出口流量。 建议对 NACL 的更改建立指标筛选器和警报。 监视对 NACL 的更改有助于确保不会无意中公开 AWS 资源和服务。
严重性:低
请确保存在关于网络网关更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 网关需要向 VPC 外部的目标发送/接收流量。 建议为网络网关的更改建立指标筛选器和警报。 监视对网络网关的更改有助于确保所有入口/出口流量都通过受控路径遍历了VP边界。
严重性:低
请确保存在关于 CloudTrail 配置更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议建立指标筛选器和警报,用于检测 CloudTrail 配置更改。
监视 CloudTrail 配置更改有助于确保持续查看 AWS 帐户中执行的活动。
严重性:低
请确保存在关于禁用或计划内删除客户创建的 CMK 的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议为客户创建的 CMK 建立指标筛选器和警报,这些 CMK 已将状态更改为已禁用或计划删除。 使用已禁用或已删除密钥加密的数据将不再可访问。
严重性:低
请确保存在关于 IAM 策略更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议对标识和访问管理(IAM)策略进行指标筛选器和警报的更改。 监视 IAM 策略的更改有助于确保身份验证和授权控制保持不变。
严重性:低
对于未经 MFA 而进行的管理控制台登录,请确保存在日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议为不受多重身份验证(MFA)保护的控制台登录建立指标筛选器和警报。 监视单因素控制台登录可以提高对不受 MFA 保护的帐户的可见性。
严重性:低
请确保存在关于路由表更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 路由表用于将子网之间的流量路由到网关。 建议为路由表的更改建立指标筛选器和警报。 监视路由表的更改有助于确保所有 VPN 流量都流经预期路径。
严重性:低
请确保存在关于 S3 桶策略更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议针对 S3 存储桶策略的更改建立指标筛选器和警报。 监视对 S3 存储桶策略的更改可能会缩短检测和更正敏感 S3 存储桶上的宽松策略的时间。
严重性:低
请确保存在关于安全组更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 安全组是一种监控状态的数据包筛选器,用于控制 VPC 中的入口和出口流量。 建议对安全组建立指标筛选器和警报更改。 监视对安全组的更改有助于确保不会无意中公开资源和服务。
严重性:低
请确保存在关于未授权的 API 调用的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议为未经授权的 API 调用建立指标筛选器和警报。 监视未经授权的 API 调用有助于揭示应用程序错误,并可能缩短检测恶意活动的时间。
严重性:低
对于根帐户的使用,请确保存在日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 建议为根登录尝试建立指标筛选器和警报。
监视根帐户登录名可查看使用完全特权帐户的机会,并有机会减少其使用。
严重性:低
请确保存在关于 VPC 更改的日志指标筛选器和警报
说明:可以通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选器和警报来实现 API 调用的实时监视。 帐户中可以有多个一个VP,此外,还可以在 2 个 VPN 之间创建对等连接,使网络流量能够在 VPN 之间路由。 建议为对 VPC 所做的更改建立指标筛选器和警报。 监视 IAM 策略的更改有助于确保身份验证和授权控制保持不变。
严重性:低
请确保没有安全组允许从 0.0.0.0/0 流入端口 3389
说明:安全组提供流出/流出网络流量到 AWS 资源的有状态筛选。 建议没有安全组允许对端口 3389 进行不受限制的入口访问。 删除与远程控制台服务(如 RDP)的未约束连接时,它会降低服务器的风险风险。
严重性:高
RDS 数据库和群集不应使用数据库引擎默认端口
说明:此控件检查 RDS 群集或实例是否使用数据库引擎的默认端口以外的端口。 如果使用已知端口来部署 RDS 群集或实例,攻击者可能会猜测有关群集或实例的信息。 攻击者可以将此信息与其他信息结合使用,以连接到 RDS 群集或实例,或获取有关应用程序的其他信息。 更改端口时,还必须更新用于连接到旧端口的现有连接字符串。 还应检查 DB 实例的安全组,以确保它包含允许新端口上连接性的入口规则。
严重性:低
应在 VPC 中部署 RDS 实例
说明:VPN 提供了许多网络控制,以保护对 RDS 资源的访问。 这些控件包括 VPC 终结点、网络 ACL 和安全组。 若要利用这些控件,建议将 EC2-Classic RDS 实例移动到 EC2-VPC。
严重性:低
S3 桶应要求请求必须使用安全套接字层
说明:建议要求请求在所有 Amazon S3 存储桶上使用安全套接字层(SSL)。 S3 存储桶应具有要求所有请求 ('Action: S3:*') 的策略,在 S3 资源策略中仅接受通过 HTTPS 传输的数据,由条件键 'aws:SecureTransport' 表示。
严重性:中等
安全组不应允许从 0.0.0.0/0 流入端口 22
说明:为了减少服务器的曝光率,建议不要允许对端口“22”进行不受限制的入口访问。
严重性:高
安全组不应允许对具有高风险的端口进行不受限制的访问
说明:此控制检查安全组的未限制传入流量是否可供风险最高的指定端口访问。 当安全组中的规则都不允许入口流量从 0.0.0.0/0 流入这些端口时,此控件通过。 不受限制的访问 (0.0.0.0/0) 可增加恶意活动(例如黑客攻击、拒绝服务攻击和数据丢失)的机会。 安全组提供对 AWS 资源的入口和出口流量的监控状态筛选。 任何安全组都不应允许不受限制地流入以下端口:
- 3389 (RDP)
- 20, 21 (FTP)
- 22 (SSH)
- 23 (Telnet)
- 110 (POP3)
- 143 (IMAP)
- 3306 (MySQL)
- 8080 (代理)
- 1433、1434 (MSSQL)
- 9200 或 9300 (Elasticsearch)
- 5601 (基巴纳)
- 25 (SMTP)
- 445 (CIFS)
- 135 (RPC)
- 4333 (ahsp)
- 5432 (postgresql)
- 5500 (fcp-addr-srvr1)
严重性:中等
安全组应仅允许针对授权端口的无限制传入流量
说明:此控件检查正在使用的安全组是否允许不受限制的传入流量。 (可选)此规则检查端口号是否在“authorizedTcpPorts”参数中列出。
- 如果安全组规则端口号允许不受限制的传入流量,但端口号是在“authorizedTcpPorts”中指定的,则控制将传递。 “authorizedTcpPorts”的默认值为“80, 443”。
- 如果安全组规则端口号允许不受限制的传入流量,但端口号未在 authorizedTcpPorts 输入参数中指定,则控制将失败。
- 如果未使用此参数,则任何具有不受限制入站规则的安全组的控件将失败。 安全组提供对 AWS 的入口和出口流量的监控状态筛选。 安全组规则应遵循最低特权访问原则。 无限制访问(后缀为 /0 的 IP 地址)会增加恶意活动(例如黑客攻击、拒绝服务攻击和数据丢失)的机会。 除非特定允许某个端口,否则该端口应拒绝不受限制的访问。
严重性:高
应删除未使用的 EC2 EIP
说明:分配给某个VP 的弹性 IP 地址应附加到 Amazon EC2 实例或正在使用的弹性网络接口(ENIs)。
严重性:低
应删除未使用的网络访问控制列表
说明:此控件检查是否有任何未使用的网络访问控制列表(ACL)。 该控件检查资源“AWS::EC2::NetworkAcl”的项配置,并确定网络 ACL 的关系。 如果唯一的关系是网络 ACL 的 VPC,则此控件失败。 如果列出了其他关系,则此控件通过。
严重性:低
VPC 的默认安全组应限制所有流量
说明:安全组应限制所有流量以减少资源泄露。
严重性:低
GCP 网络建议
群集主机应配置为仅使用专用内部 IP 地址访问 Google API
说明:此建议评估子网的 privateIpHttpAccess 属性是否设置为 false。
严重性:高
计算实例应使用配置为使用目标 HTTPS 代理的负载均衡器
说明:此建议评估 targetHttpProxy 资源的 selfLink 属性是否与转发规则中的目标属性匹配,以及转发规则是否包含设置为 External 的 loadBalancingScheme 字段。
严重性:中等
应在 GKE 群集上启用控制平面授权网络
说明:此建议评估群集的 masterAuthorizedNetworksConfig 属性作为键值对“enabled”:false。
严重性:高
应在防火墙上设置流出量拒绝规则,以阻止不需要的出站流量
说明:此建议评估防火墙中的 destinationRanges 属性是否设置为 0.0.0.0/0,并且被拒绝的属性是否包含键值对, 'IPProtocol': 'all.'
严重性:低
确保标识感知代理(IAP)后面的实例的防火墙规则仅允许来自 Google Cloud Loadbalancer(GCLB) 运行状况检查和代理地址的流量
说明:对 VM 的访问应受防火墙规则的限制,这些规则仅允许 IAP 流量,方法是确保仅允许 IAP 代理的连接。 为确保负载均衡正常工作,还应允许进行运行状况检查。 IAP 确保通过对传入请求进行身份验证来控制对 VM 的访问。 但是,如果 VM 仍可从 IAP 以外的 IP 地址进行访问,则仍可能向实例发送未经身份验证的请求。 必须注意确保不会阻止负载流运行状况检查,因为这样会阻止负载均衡器正确了解 VM 的运行状况并正确进行负载均衡。
严重性:中等
确保项目不存在旧网络
说明:为了防止使用旧网络,项目不应配置旧网络。 旧网络具有单个网络 IPv4 前缀范围和整个网络的单个网关 IP 地址。 网络在范围内是全局的,跨所有云区域。 无法在旧网络中创建子网,并且无法从旧网络切换到自动或自定义子网网络。 旧网络可能会对高网络流量项目产生影响,并受到单一争用点或故障的影响。
严重性:中等
确保已正确设置 Cloud SQL PostgreSQL 实例的“log_hostname”数据库标志
说明:PostgreSQL 仅记录连接主机的 IP 地址。 除了记录的 IP 地址之外,“log_hostname”标志还控制“主机名”的记录。 性能影响取决于环境配置和主机名解析设置。 此参数只能在“postgresql.conf”文件或服务器命令行中设置。 记录主机名可能会导致服务器性能开销,因为对于记录的每条语句,都需要 DNS 解析才能将 IP 地址转换为主机名。 根据设置,这可能不可忽略。 此外,稍后在查看日志(不包括使用动态主机名的情况)时,可以将记录的 IP 地址解析为其 DNS 名称。 此建议适用于 PostgreSQL 数据库实例。
严重性:低
确保没有 HTTPS 或 SSL 代理负载均衡器允许使用具有弱密码套件的 SSL 策略
说明:安全套接字层 (SSL) 策略确定客户端在连接到负载均衡器时允许使用哪些端口传输层安全性 (TLS) 功能。 为了防止使用不安全的功能,SSL 策略应至少使用具有 MODERN 配置文件的 TLS 1.2;或 (b) RESTRICTED 配置文件,因为它实际上要求客户端使用 TLS 1.2,而不考虑选择的最低 TLS 版本;或 (3) 不支持以下任何功能的自定义配置文件:TLS_RSA_WITH_AES_128_GCM_SHA256 TLS_RSA_WITH_AES_256_GCM_SHA384 TLS_RSA_WITH_AES_128_CBC_SHA TLS_RSA_WITH_AES_256_CBC_SHA TLS_RSA_WITH_3DES_EDE_CBC_SHA
负载均衡器用于在多个服务器之间有效地分配流量。 SSL 代理和 HTTPS 负载均衡器都是外部负载均衡器,这意味着它们将流量从 Internet 分配到 GCP 网络。 GCP 客户可以使用客户端可用于建立连接的最低 TLS 版本(1.0、1.1 或 1.2)以及指定允许的密码套件的配置文件(兼容、新式、受限或自定义)来配置负载均衡器 SSL 策略。 为了满足使用过时协议的用户,可将 GCP 负载平衡器配置为允许使用不安全的密码套件。 事实上,GCP 默认 SSL 策略使用最低 TLS 版本 1.0 和兼容配置文件,从而允许最广泛的不安全密码套件。 因此,客户可以轻松配置负载均衡器,甚至不知道它们允许过时的密码套件。
严重性:中等
确保为所有 VPC 网络启用 Cloud DNS 日志记录
说明:云 DNS 日志记录将查询记录从你的 API 内部的名称服务器到 Stackdriver 的查询。 记录的查询可能来自 Compute Engine VM、GKE 容器或 VPC 内预配的其他 GCP 资源。 安全监视和取证不能只依赖于来自VP流日志的 IP 地址,尤其是在考虑云资源的动态 IP 使用率、HTTP 虚拟主机路由和其他技术时,这些技术会掩盖客户端从 IP 地址使用的 DNS 名称。 监视 Cloud DNS 日志可查看 VPC 中客户端请求的 DNS 名称。 可以监视这些日志是否存在异常域名,根据威胁情报进行评估,以及
若要完全捕获 DNS,防火墙必须阻止出口 UDP/53 (DNS) 和 TCP/443 (通过 HTTPS 的 DNS)来阻止客户端使用外部 DNS 名称服务器进行解析。
严重性:高
确保为 Cloud DNS 启用 DNSSEC
说明:云域名系统(DNS)是一种快速、可靠且经济高效的域名系统,为 Internet 上的数百万个域提供支持。
Cloud DNS 中的域名系统安全扩展 (DNSSEC) 使域所有者能够采取简单的步骤来保护其域免受 DNS 劫持和中间人攻击以及其他攻击。
域名系统安全扩展 (DNSSEC) 通过启用 DNS 响应验证来增加 DNS 协议的安全性。
拥有将域名 www.example.com
转换为其关联 IP 地址的可信 DNS 是当今基于 Web 的应用程序的日益重要的构建基块。
攻击者可以劫持此域/IP 查找过程,并通过 DNS 劫持和中间人攻击将用户重定向到恶意站点。
DNSSEC 通过对 DNS 记录进行加密签名来帮助降低此类攻击的风险。
因此,它阻止攻击者发出虚假的 DNS 响应,这些响应可能会将浏览器误导到恶意网站。
严重性:中等
确保限制从 Internet 进行的 RDP 访问
说明:GCP 防火墙规则特定于一个VP网络。 每个规则在满足其条件时可允许或拒绝流量。 其条件允许用户指定流量类型,例如端口和协议,以及流量的源或目标,包括 IP 地址、子网和实例。 防火墙规则在VP网络级别定义,特定于定义它们的网络。 规则本身不能在网络之间共享。 防火墙规则仅支持 IPv4 流量。 为入口规则指定源或按地址列出的出口规则的目标时,可以使用 CIDR 表示法中的 IPv4 地址或 IPv4 块。 可以避免使用端口 3389 上的 RDP 从 Internet 传入到使用 RDP 的来自 INTERNET 的流量(0.0.0.0.0/0) 传入流量。 VPC 网络中的 GCP 防火墙规则。 这些规则适用于从实例到网络实例的传出(出口)流量和传入(入口)流量。 即使流量保留在网络中(例如,实例到实例通信),也可控制出口流和入口流。 若要使实例具有传出 Internet 访问权限,网络必须具有指定了目标 IP 的有效 Internet 网关路由或自定义路由。 此路由只是定义 Internet 的路径,以避免使用默认端口 3389 通过 RDP 从 Internet 指定的最常规 (0.0.0.0/0) 目标 IP 范围。 应限制从 Internet 到特定 IP 范围的通用访问。
严重性:高
确保没有将 RSASHA1 用作云 DNS DNSSEC 中的密钥签名密钥
说明:此注册表中的 DNSSEC 算法编号可用于证书 RR。 区域签名 (DNSSEC) 和事务安全机制(SIG(0) 和 TSIG)利用这些算法的特定子集。 用于密钥签名的算法应该是建议的算法,并且应该很强大。 此注册表中的域名系统安全扩展插件(DNSSEC)算法编号可用于证书 RR。 区域签名 (DNSSEC) 和事务安全机制(SIG(0) 和 TSIG)利用这些算法的特定子集。 用于密钥签名的算法应该是建议的算法,并且应该很强大。 为托管区域启用 DNSSEC,或使用 DNSSEC 创建托管区域时,用户可以选择 DNSSEC 签名算法和拒绝存在类型。 如果尚未启用 DNSSEC,则更改 DNSSEC 设置仅适用于托管区域。 如果需要更改已启用托管区域的设置,请关闭 DNSSEC,然后使用不同的设置重新启用它。
严重性:中等
确保没有将 RSASHA1 用作云 DNS DNSSEC 中的区域签名密钥
说明:此注册表中的 DNSSEC 算法编号可用于证书 RR。 区域签名 (DNSSEC) 和事务安全机制(SIG(0) 和 TSIG)利用这些算法的特定子集。 用于密钥签名的算法应该是建议的算法,并且应该很强大。 此注册表中的 DNSSEC 算法编号可用于证书 RR。 区域签名 (DNSSEC) 和事务安全机制(SIG(0) 和 TSIG)利用这些算法的特定子集。 用于密钥签名的算法应该是建议的算法,并且应该很强大。 为托管区域启用 DNSSEC 或使用 DNSSEC 创建托管区域时,可以选择 DNSSEC 签名算法和拒绝存在类型。 如果尚未启用 DNSSEC,则更改 DNSSEC 设置仅适用于托管区域。 如果需要更改已启用托管区域的设置,请关闭 DNSSEC,然后使用不同的设置重新启用它。
严重性:中等
确保限制从 Internet 进行的 SSH 访问
说明:GCP 防火墙规则特定于一个VP网络。 每个规则在满足其条件时可允许或拒绝流量。 其条件允许用户指定流量类型,例如端口和协议,以及流量的源或目标,包括 IP 地址、子网和实例。 防火墙规则在VP网络级别定义,特定于定义它们的网络。 规则本身不能在网络之间共享。 防火墙规则仅支持 IPv4 流量。 为入口规则指定源或按地址列出的出口规则的目标时,只能使用 CIDR 表示法中的 IPv4 地址或 IPv4 块。 可以避免在端口 22 上使用 SSH 从 Internet 传入到 VPC 或 VM 实例的常规 (0.0.0.0/0) 传入流量。 VPC 网络中的 GCP 防火墙规则适用于从实例到网络实例的传出(出口)流量和传入(入口)流量。 即使流量保留在网络中(例如,实例到实例通信),也可控制出口流和入口流。 若要使实例具有传出 Internet 访问权限,网络必须具有指定了目标 IP 的有效 Internet 网关路由或自定义路由。 此路由仅定义 Internet 的路径,以避免使用默认端口“22”从 Internet 指定的最常规的目标 IP 范围(0.0.0.0/0)。 应限制从 Internet 到特定 IP 范围的通用访问。
严重性:高
确保项目中不存在默认网络
说明:为了防止使用“默认”网络,项目不应具有“默认”网络。 默认网络具有预先配置的网络配置,并自动生成以下不安全的防火墙规则:
- default-allow-internal:允许网络中实例之间所有协议和端口的入口连接。
- default-allow-ssh:允许 TCP 端口 22 (SSH) 上的入口连接从任何源连接到网络中的任何实例。
- default-allow-rdp:允许 TCP 端口 3389 (RDP) 上的入口连接从任何源连接到网络中的任何实例。
- default-allow-icmp:允许从任何源到网络中任何实例的入口 ICMP 流量。
这些自动创建的防火墙规则不会记录审核,无法配置为启用防火墙规则日志记录。 此外,默认网络是自动模式网络,这意味着其子网使用相同的预定义 IP 地址范围,因此无法将 Cloud VPN 或 VPC 网络对等互连与默认网络一起使用。 组织应根据其安全性和网络要求,创建新网络并删除默认网络。
严重性:中等
确保存在针对 VPC 网络更改的日志指标筛选器和警报
说明:建议为虚拟私有云(VR)网络更改建立指标筛选器和警报。 项目中可以有多个一个VP。 此外,还可以在两个 VPN 之间创建对等连接,使网络流量能够在 VPN 之间路由。 监视对一个VP的更改将有助于确保VP流量流不会受到影响。
严重性:低
确保存在针对 VPC 网络防火墙规则更改的日志指标筛选器和警报
说明:建议为虚拟私有云(VR)网络防火墙规则更改建立指标筛选器和警报。 监视创建或更新防火墙规则事件可深入了解网络访问更改,并可以减少检测可疑活动所需的时间。
严重性:低
确保存在针对 VPC 网络路由更改的日志指标筛选器和警报
说明:建议为虚拟私有云(VPN)网络路由更改建立指标筛选器和警报。 Google Cloud Platform (GCP) 路由定义网络流量从 VM 实例到另一个目标所采用的路径。 另一个目标可以在组织 VPC 网络内部(例如另一个 VM),也可以位于其外部。 每个路由都包含一个目标和下一个跃点。 目标 IP 在目标范围内的流量将被发送到下一个跃点进行传递。 监视路由表的更改有助于确保所有 VPC 流量都流经预期路径。
严重性:低
确保将 Cloud SQL PostgreSQL 实例的“log_connections”数据库标志设置为“on”
说明:启用log_connections设置会导致每次尝试连接到服务器以及成功完成客户端身份验证。 会话启动后,无法更改此参数。 默认情况下,PostgreSQL 不会记录尝试的连接。 启用log_connections设置将为每个尝试的连接创建日志条目,并成功完成客户端身份验证,这对于排查问题以及确定与服务器的任何异常连接尝试非常有用。 此建议适用于 PostgreSQL 数据库实例。
严重性:中等
确保将 Cloud SQL PostgreSQL 实例的“log_disconnections”数据库标志设置为“on”
说明:启用log_disconnections设置会记录每个会话的结束时间,包括会话持续时间。 PostgreSQL 不会默认记录会话详细信息,例如持续时间和会话结束。 启用log_disconnections设置将在每个会话结束时创建日志条目,这对于解决问题和确定一段时间内的任何异常活动非常有用。 log_disconnections 和 log_connections 协同工作,通常,这对将一起启用/禁用。 此建议适用于 PostgreSQL 数据库实例。
严重性:中等
确保为 VPC 网络中的每个子网启用 VPC 流日志
说明:流日志是一项功能,使用户能够捕获有关传入和传出组织 AZURE 子网中网络接口的 IP 流量的信息。 创建流日志后,用户可以在 Stackdriver Logging 中查看和检索其数据。 建议为每个业务关键型的VP子网启用流日志。 VPC 网络和子网提供逻辑隔离和安全的网络分区,可在其中启动 GCP 资源。 为子网启用流日志后,该子网中的 VM 开始报告所有传输控制协议 (TCP) 和用户数据报协议 (UDP) 流。 每个 VM 都会对它看到的 TCP 和 UDP 流(入站和出站)进行采样,无论该流是发往或来自另一个 VM、本地数据中心中的主机、Google 服务还是 Internet 上的主机。 如果两个 GCP VM 正在通信,并且都位于已启用 VPC 流日志的子网中,则这两个 VM 都会报告这些流。 流日志支持以下用例:1. 网络监视。 2. 了解网络使用情况并优化网络流量费用。 3. 网络取证。 4. 实时安全分析流日志提供子网内每个 VM 的网络流量的可见性,并可用于检测安全工作流期间的异常流量或见解。
严重性:低
应启用防火墙规则日志记录
说明:此建议评估防火墙元数据中的 logConfig 属性,以查看其是否为空或包含键值对“enable”:false。
严重性:中等
不应将防火墙配置为对公共开放
说明:此建议评估以下两种配置之一的 sourceRanges 和允许的属性:
sourceRanges 属性包含 0.0.0.0/0,允许的属性包含包括任何协议或协议:端口的规则组合,但以下项除外:
- icmp
- tcp:22
- tcp:443
- tcp: 3389
- udp:3389
- sctp:22
sourceRanges 属性包含包括任何非专用 IP 地址的 IP 范围的组合,允许的属性包含允许所有 tcp 端口或所有 udp 端口的规则的组合。
严重性:高
防火墙不应配置为具有允许通用访问权限的开放 CASSANDRA 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:7000-7001、7199、8888、9042、9160、61620-61621。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 CISCOSECURE_WEBSM 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:9090。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 DIRECTORY_SERVICES 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:445 和 UDP:445。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 DNS 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:53 和 UDP:53。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 ELASTICSEARCH 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:9200、9300。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 FTP 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:21。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 HTTP 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:80。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 LDAP 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:389、636 和 UDP:389。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 MEMCACHED 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:11211、11214-11215 和 UDP:11211、11214-11215。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 MONGODB 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:27017-27019。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 MYSQL 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:3306。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 NETBIOS 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:137-139 和 UDP:137-139。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 ORACLEDB 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:1521、2483-2484 和 UDP:2483-2484。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 POP3 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:110。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 PostgreSQL 端口
说明:此建议评估以下协议和端口的防火墙元数据中允许的属性:TCP:5432 和 UDP:5432。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 REDIS 端口
说明:此建议评估防火墙元数据中允许的属性是否包含以下协议和端口:TCP:6379。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 SMTP 端口
说明:此建议评估防火墙元数据中允许的属性是否包含以下协议和端口:TCP: 25。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 SSH 端口
说明:此建议评估防火墙元数据中允许的属性是否包含以下协议和端口:TCP:22 和 SCTP: 22。
严重性:低
防火墙不应配置为具有允许通用访问权限的开放 TELNET 端口
说明:此建议评估防火墙元数据中允许的属性是否包含以下协议和端口:TCP: 23。
严重性:低
GKE 群集应已启用别名 IP 范围
说明:此建议评估群集中 ipAllocationPolicy 的 useIPAliases 字段是否设置为 false。
严重性:低
GKE 群集应已启用专用群集
说明:此建议评估 privateClusterConfig 属性的 enablePrivateNodes 字段是否设置为 false。
严重性:高
应在 GKE 群集上启用网络策略
说明:此建议评估键值对“disabled”的 addonsConfig 属性的 networkPolicy 字段:true。
严重性:中等