当前位置: 首页 > 科技观察

20个云计算常见的安全漏洞和错误配置

时间:2023-03-16 01:48:25 科技观察

云安全是公有云厂商最热门的卖点之一,但对于企业用户来说,过于信任和盲目遵循云服务的默认配置是非常危险的。事实上,企业安全架构师和云安全审计师需要对云计算初始环境中的安全漏洞和配置错误进行全面的评估和调优。下面,我们列出了微软Azure云计算环境的TOP20常见账户和配置漏洞(初始默认配置),也可以作为企业选择其他类似公有云服务的参考。1.可从Internet访问的存储帐户Azure存储帐户的默认设置是允许从任何地方访问,包括Internet。这样的设置自然会带来潜在的未经授权的数据访问、数据泄漏、破坏等风险。始终应用最小权限原则,并限制仅从选定的IP地址、网络范围或vnet(Azure虚拟网络)子网访问每个存储帐户。2.向存储帐户的不安全传输此设置可以强制将安全(加密)数据传输到存储。这意味着任何通过不安全协议(例如HTTP或SMB)的未加密请求都将被拒绝。Azure存储帐户的默认设置是接受任何协议,这不可避免地使云存储容易受到窃听攻击。处于有利地位的攻击者可以窃听通信并获得对敏感或私人信息的访问权限。显然,应该为所有存储帐户启用加密数据传输。3.特权用户缺乏多重身份验证任何对任何Azure资源具有管理或写入权限的用户都应该需要多重身份验证(MFA),包括以下角色:管理员服务共同管理员订阅所有者贡献者使用MFA保护这些高特权帐户非常重要,因为它们极有可能成为对手的目标。启用MFA后,攻击难度大大增加,大大降低了风险。请注意,MicrosoftAzure支持多种MFA解决方案和选项,其中一些是免费的,而另一些则可以通过付费计划在订阅的基础上获得,例如:Azure多重身份验证条件访问策略在任何情况下,它都应该在至少对所有管理用户强制执行某种MFA。4.缺乏新加入设备的多重身份验证应该要求所有用户在设备可以加入ActiveDirectory之前提供第二种身份验证方法。这是为了确保防止恶意设备通过受感染的帐户添加到目录中。风险在于,攻击者可以将不受管理、不合规的流氓设备添加到公司网络,然后可以使用这些设备访问公司的应用程序和其他资源。5、与免费(基础)版Azure安全中心相比,付费增强版Azure安全中心增加了以下重要安全功能:威胁情报源的威胁检测和异常检测、行为分析和安全警报可以识别新型威胁针对零日攻击的攻击和机器学习功能整个基础架构的漏洞扫描和漏洞管理高级访问和应用程序控制可阻止恶意软件和其他网络攻击这些功能应在任何生产环境中启用。6.虚拟网络的基本DDoS防护与基本DDoS防护相比,增强型标准DDoS(分布式拒绝服务)防护提供以下额外防御措施:近实时遥测和流量监控持续攻击警报和通知自适应调整和流量分析详细攻击分析以上措施可以帮助防御基于网络的DDoS攻击。应在每个生产环境中的所有关键vnet上启用标准DDoS防御服务。唯一的缺点是这是一项高级功能,因此需要额外付费。7.未加密的操作系统和数据磁盘不用说,磁盘加密应该是每个生产环境、工作站、服务器和云环境的标准配置。在云环境中,有时称为“静态加密”,Azure支持Windows和LinuxVM的磁盘加密:在Windows环境中,使用BitLocker在Linux环境中,使用DM-Crypt根据Azure文档,磁盘加密应该不会影响性能,也没有增加成本,所以没有理由不为所有磁盘启用加密,这包括:OS磁盘数据磁盘未附加的磁盘8.安全中心中缺少电子邮件通知在安全中心中配置电子邮件通知可以算是一个主要安全事件。Azure安全中心应始终配置电子邮件地址和/或电话号码以接收有关事件的通知,尤其是在特定资源受到威胁时。应在每个环境中配置电子邮件通知,并应始终以高优先级进行监控。9.AzureMonitor中缺少日志警报Azure的监视和警报服务允许创建自定义警报,以满足部署在Azure云中的服务的特定需求。如果正确配置了相关警报条件,它可以提供环境问题的早期指示,而不是依赖于内置的Azure安全功能。因此,在Azure架构审查中,总是希望看到与环境相关的定义明确的自定义警报列表。以下是我们可以使用Azure监控警报发出警报的示例列表:指标值记录搜索查询活动日志事件健康测试底层Azure平台网站可用性10.AzureNSG入站规则配置为NSG(网络安全组)中定义的任何)配置防火墙规则时,常见的错误配置是协议、源或目标的“任何”。这种做法存在导致流量超出预期的风险。对于攻击者来说,这些看似良性的配置往往是他们入侵的突破口。最佳实践是始终坚持最小特权原则。以仅允许具有明确定义的源地址和目标地址的特定协议的方式定义防火墙规则。请注意,强烈建议在Azure中启用具有应用程序感知功能的第7层防火墙。第7层防火墙在整个Azure网络(包括应用程序)中提供增强的安全功能。11、将公网IP地址配置为BasicSKU与基本(Basic)SKU相比,在Azure中将公网IP地址配置为标准SKU(stockkeepingunit)有以下优点:真正的静态IP地址默认是安全的并且对入站流量没有影响。开放性允许区域冗余和分区(区域、地理等)以支持未来扩展对于基本SKU,主要的安全问题是整体开放性。除非受到防火墙的特别保护,否则分配给基础SKU公共IP地址的系统将默认完全暴露给外界。不用说,这在任何生产环境中都是大忌。在生产环境中,所有公共IP地址都应配置为标准SKU,并且应充分了解其网络流量。请注意,一旦以任何一种方式配置了IP地址,就无法更改此设置。因此,解决此问题可能需要规划停机时间和迁移时间。12.面向公众的服务的动态IP地址这本身并不是一个真正的安全漏洞,但对于任何面向公众的系统来说,这是一个严重的错误配置。,如果IP地址是动态的,则意味着它可以随时更改,例如在重新启动或DHCP租约更新后。此外,当它在一个公开可用的系统上时,它可能会破坏很多东西,例如:DNS记录监控和日志警报系统集成和互操作性这可能会导致不必要的可用性问题(例如DoS)。因此,强烈建议对任何面向公众的服务使用静态IP地址。13.具有匿名读取访问权限的Blob存储AzureBlob存储是一种在云上共享数据的强大而便捷的方式。它支持以下3种访问控制(级别)选项:Private(无匿名访问)Blob(仅对blob进行匿名读取访问)Container(对容器和blob均进行匿名读取访问)将访问级别配置为后两个Option(匿名读取访问)引入了数据未授权访问、数据泄露、泄露等安全风险。在生产环境中,所有的blob存储都应该是私有的,不允许任何匿名访问。14.AzureAD中来宾用户的数量很高。AzureActiveDirectory(AD)中的来宾用户通常是由外部用户创建的帐户,例如供应商、承包商、合作伙伴、客户和其他临时角色。他们只是局外人,所以尽量减少他们的人数。问题在于,随着时间的推移,一些企业积累了来宾用户,经常会导致一些来宾在访问权限到期后忘记撤销,这是非常危险的。来宾帐户通常是网络环境中攻击者的立足点,可能导致Azure云环境中的特权升级和其他问题。因此,应始终检查来宾帐户的数量。事实上,CISBenchmark甚至建议根本不要使用来宾用户。这是我们使用AzureCLI查找所有来宾用户的方式:azaduserlist--query"[?additionalProperties.userType=='Guest']"15.AzureAD中不安全的来宾用户设置在AzureActiveDirectory中拥有来宾帐户是其中之一事情,给他们高特权是另一回事。默认情况下,与功能齐全的内部成员用户相比,来宾的权限非常有限,但在AzureAD中,也可以将来宾配置为拥有与成员用户相同的权限!通过外部协作设置(如上图所示)进行配置。上述配置将授予来宾用户以下权限:枚举所有其他用户和组(包括成员)读取所有已注册企业应用程序的属性从外部邀请其他用户加入组织这当然是从安全角度出发view非常不安全,除非有非常充分的理由,否则应该尽快更改。最后,建议彻底注销guest账号。16.不受限制地访问AzureAD管理门户AzureAD管理门户包含大量敏感信息,默认情况下,AzureAD下的任何用户都可以访问它。这意味着可以以标准(会员)用户身份登录https://portal.azure.com/并浏览、查看几乎所有设置、其他用户的详细信息、组成员身份、应用程序等。这是一个重大的安全风险因此应该加以限制。17.AzureIdentityProtection被禁用AzureIdentityProtection为ActiveDirectory中的用户帐户增加了一层额外的保护,以减轻登录(登录)风险,例如:用户异常行为恶意软件链接的源IP地址用户帐户泄漏密码喷射攻击企图匿名化源IP地址(例如Tor)这些功能有助于使您的AzureAD环境更加安全,因此强烈建议启用此功能。唯一的缺点是这是一项需要额外付费的高级功能。18.AzureNetworkWatcher被禁用AzureNetworkWatcher提供重要的诊断和可视化工具,用于了解和解决Azure网络中的网络问题。它还为NSG(网络安全组)Azure防火墙提供网络流量分析,包括进出特定VM的数据包捕获,以及许多其他诊断功能。默认情况下禁用此功能,建议用户为所有区域启用它。我们还可以使用AzureCLI通过以下方式检查NetworkWatcher的状态:aznetworkwatcherlist19。并非对所有Web应用程序流量都强制使用HTTPS从安全的角度来看,所有内部和外部(公共)Web应用程序都应该只接受安全(加密)的HTTPS连接,这也是当今的安全标准。HTTPS提供了急需的安全性、机密性和隐私。启用上述设置后,对给定AzureWeb服务的每个传入的不安全(纯文本)HTTP请求都将重定向到其HTTPS端口。应为所有AzureWeb服务完成HTTPS配置。对于Azure中的数据库,应实施相同的策略,例如:MySQL服务器PostreSQL服务器所有服务器都应启用“强制SSL连接”选项。现在,您可能想知道应该选择哪个TLS?NIST(美国国家标准技术研究院)和PCI(支付卡行业)都不再推荐TLS1.0和1.1版。因此,至少应始终选择TLS版本1.2。20.Azure安全中心的监控策略CIS基准建议在Azure安全中心启用以下监控策略:计算和应用程序:系统升级操作系统漏洞端点保护磁盘加密漏洞评估自适应应用程序控制网络:网络安全组(NSG)Web应用程序防火墙(WAF)下一代防火墙(NGFW)数据:存储加密SQL审计SQL加密所有这些策略都应在每个生产环境中启用(设置为“AuditIfNotExists”)。这些策略提供Azure云组件的基本安全监控。启用这些策略时,还应启用“自动配置监视代理”:这将确保在环境中部署的所有现有虚拟机以及将来创建的任何新虚拟机上预先配置Azure监视代理。结论评估MicrosoftAzure云环境的安全态势并非易事。与任何其他云技术一样,Microsoft的Azure是一个复杂的话题。安全地设置它需要大量的努力、多个技术领域的知识和Azure生态系统。您需要深入了解许多领域,而不仅仅是Azure云本身。云安全是一个动态的话题,因为整个云计算生态系统都在不断地变化和发展,引入新的能力,适应新的需求等等。我希望这篇文章至少能为Azure云安全审计领域提供一些有用的见解,并在审计其他公有云安全时为您提供一些实用信息,以提高云基础设施的安全性。【本文为专栏作者“安安牛”原创文章,转载请通过安安牛(微信公众号id:gooann-sectv)获得授权】点此查看作者更多好文