导语:本文是为希望提高云服务解决方案安全性的云开发人员和服务提供商编写的。
云计算技术可以随时通过互联网提供计算资源共享池,且成本低廉甚至免费。通过使用云计算,许多个人和企业已经提高了运营效率,同时降低了 IT 成本。
尽管与现场模型相比,云计算模型充满了优势,但它们仍然容易受到内部和外部攻击。因此,云开发人员需要采取安全措施来保护用户的敏感数据免受网络攻击。
本文是为希望提高云服务解决方案安全性的云开发人员和服务提供商编写的。我们将首先概述云计算技术的关键漏洞,然后看看云计算中最常见的攻击类型。最后,我们将根据行业最佳实践提供有关如何确保基于云的解决方案的安全性的实用建议。
关键云计算漏洞
根据您需要的控制程度,可以选择三种类型的云计算服务:
1、软件即服务 (SaaS)
2、平台即服务 (PaaS)
3、基础设施即服务 (IaaS)
云技术仍在积极开发中,因此存在许多可被网络犯罪分子或恶意内部人员利用的漏洞。让我们看看引起云用户安全担忧的关键云计算漏洞。
数据威胁
云用户在云环境中存储各种类型的数据,其中很多数据包含有关用户或业务活动的敏感信息。然而,这些数据很容易因人为行为、应用程序漏洞和不可预见的紧急情况而丢失、泄露或损坏。显然,云服务提供商无法阻止所有数据威胁,但云开发人员应该应用现代加密算法来确保从用户到云传输的数据的完整性。
云API漏洞
应用程序编程接口 (API) 允许用户与基于云的服务交互。然而,API 中的漏洞可能会严重影响云编排、管理、配置和监控的安全性。云开发人员需要对 API 实施强有力的控制。
恶意内部人士
恶意行为的合法云用户有多种方式在云环境中安排攻击或泄露数据。不过,云开发人员可以通过实施身份和访问管理 (IAM) 技术来最大限度地减少这种威胁。
共享技术漏洞
云计算涉及虚拟化和云编排等共享技术的使用。因此,通过利用这些技术任何部分的漏洞,攻击者都可以对许多云用户造成重大损害。虚拟机管理程序中的弱点可能使黑客能够控制虚拟机甚至主机本身。在虚拟机逃逸的情况下,黑客可以通过共享资源获得对主机的无限制访问。因此,有必要注意您委托云解决方案的云提供商的安全性。
供应商锁定
大多数现代云服务提供商使其客户依赖于他们的服务,而转换成本很高。当提供商无法提供他们所需的所有服务时,许多云用户会感到被锁定。确保您的解决方案具有帮助用户轻松从其他提供商迁移的工具,例如导入各种格式数据的能力。
弱密码学
尽管云提供商使用加密算法来保护存储中的数据,但他们通常使用有限的熵源(例如时间)来自动生成用于数据加密的随机数。例如,基于 Linux 的虚拟机仅从精确的毫秒生成随机密钥。然而,这对于强大的数据加密来说可能还不够,因为攻击者还使用复杂的解码机制来破解信息。因此,云开发人员应该在数据迁移到云之前考虑如何保护数据。
易受攻击的云服务
虽然云计算平台被设计为云服务的分布式系统,但这些服务之间几乎没有保护。因此,攻击者可以利用任何一项云服务中的漏洞来获得对合法用户数据的未经授权的访问。例如,2016年OpenStack云平台的云服务存在超过150个已知弱点。创建强大的架构可以隔离用户在云中的操作。
云计算的攻击向量
云计算中网络攻击的主要目标是获取用户数据并阻止对云服务的访问。两者都会对云用户造成严重伤害,并动摇人们对云服务安全性的信心。
在安排对云服务的攻击时,黑客通常通过以下方式侵入云用户与服务或应用程序之间的通信:
利用云计算中的漏洞;
在云之外的某个地方窃取用户的凭据;
在破解用户密码后使用先前对云的合法访问;
充当恶意内部人员。
如果您的解决方案具有一些区块链驱动的功能,请务必查看我们有关区块链攻击向量的文章。
10 种最常见的云计算攻击类型
攻击云计算服务的方法有很多种,黑客也在不断致力于开发更复杂的方法。然而,至少了解最常见的问题将有助于云开发人员设计更安全的解决方案。以下列出了十种不同类型的云攻击。
1.云恶意软件注入攻击
恶意软件注入攻击的目的是控制云中的用户信息。为此,黑客将受感染的服务实现模块添加到 SaaS 或 PaaS 解决方案,或将虚拟机实例添加到 IaaS 解决方案。如果云系统被成功欺骗,它会将云用户的请求重定向到黑客的模块或实例,从而启动恶意代码的执行。然后攻击者就可以开始恶意活动,例如操纵或窃取数据或窃听。
最常见的恶意软件注入攻击形式是跨站点脚本攻击和 SQL 注入攻击。在跨站点脚本攻击期间,黑客将恶意脚本(Flash、JavaScript 等)添加到易受攻击的网页中。德国研究人员于 2011 年对 Amazon Web Services 云计算平台发起了一次 XSS 攻击。在 SQL 注入的情况下,攻击者以具有易受攻击的数据库应用程序的 SQL 服务器为目标。2008年,索尼的PlayStation网站成为SQL注入攻击的受害者。
2. 滥用云服务
黑客可以使用廉价的云服务对目标用户、公司甚至其他云提供商进行 DoS 和暴力攻击。例如,安全专家Bryan 和 Anderson在 2010 年利用亚马逊 EC2 云基础设施的能力安排了 DoS 攻击。结果,他们仅花费 6 美元租用虚拟服务,就成功地使他们的客户端无法在互联网上使用。
Thomas Roth 在 2011 年黑帽技术安全会议上演示了一个暴力攻击的示例。通过从云提供商租用服务器,黑客可以利用强大的云功能将数千个可能的密码发送到目标用户的帐户。
3.拒绝服务攻击
DoS 攻击旨在使系统超载并使其用户无法获得服务。这些攻击对于云计算系统尤其危险,因为即使单个云服务器被淹没,许多用户也可能遭受损失。在高工作负载的情况下,云系统开始通过涉及更多虚拟机和服务实例来提供更多计算能力。在试图阻止网络攻击的同时,云系统实际上使其更具破坏性。最后,云系统速度变慢,合法用户无法访问其云服务。在云环境中,如果黑客使用更多的僵尸机器来攻击大量系统,DDoS攻击可能会更加危险。为了缓解这些问题,必须了解有效的DDoS 预防技术。
4. 旁路攻击
当黑客将恶意虚拟机放置在与目标虚拟机相同的主机上时,就会发生旁路攻击。在侧信道攻击期间,黑客的目标是加密算法的系统实现。然而,可以通过安全的系统设计来避免这种类型的威胁。
5. 包裹攻击
云计算中的包装攻击是中间人攻击的一个示例。云计算很容易受到包装攻击,因为云用户通常通过网络浏览器连接到服务。XML 签名用于保护用户的凭据免遭未经授权的访问,但此签名不能保护文档中的位置。因此,XML 签名元素包装允许攻击者操纵 XML 文档。
例如,2009 年,亚马逊弹性云计算 (EC2) 的 SOAP 接口中发现了一个漏洞。该漏洞允许攻击者通过成功的签名包装攻击来修改窃听的消息。
6. 云中人攻击
在此类攻击中,黑客利用同步令牌系统中的漏洞拦截并重新配置云服务,以便在下次与云同步时,同步令牌将被替换为向攻击者提供访问权限的新令牌。用户可能永远不知道他们的帐户已被黑客入侵,因为攻击者可以随时放回原始同步令牌。此外,还存在被盗帐户永远无法恢复的风险。
7. 内部攻击
内部攻击是由故意违反安全策略的合法用户发起的。在云环境中,攻击者可以是云提供商管理员或拥有广泛权限的客户公司员工。为了防止此类恶意活动,云开发人员应该设计具有不同级别的云服务访问权限的安全架构。
8. 账户或服务劫持
帐户或服务劫持是在获得用户凭据的访问权限后实现的。有多种技术可以实现这一目标,从钓鱼到间谍软件再到 cookie 中毒。一旦云账户被黑客入侵,攻击者就可以获取用户的个人信息或企业数据,从而危及云计算服务。例如, 2007 年,SaaS 供应商Salesforce的一名员工成为网络钓鱼诈骗的受害者,导致该公司的所有客户帐户均被泄露。
9. 高级持续威胁(APT)
APT 是一种让黑客在合法用户不知情的情况下持续窃取存储在云中的敏感数据或利用云服务的攻击。这些攻击的持续时间使黑客能够适应针对它们的安全措施。一旦建立未经授权的访问,黑客就可以穿过数据中心网络并利用网络流量进行恶意活动。
10.新攻击:Spectre和Meltdown
这两类网络攻击在今年早些时候出现,已经成为云计算的新威胁。借助恶意 JavaScript 代码,攻击者可以利用大多数现代处理器的设计缺陷从内存中读取加密数据。Spectre 和 Meltdown都打破了应用程序和操作系统之间的隔离,让攻击者可以从内核读取信息。这对于云开发人员来说确实是一个令人头疼的问题,因为并非所有云用户都安装了最新的安全补丁。
7 个云攻击预防技巧
云服务的动态特性打破了用于现场软件的传统安全模型。显然,云服务提供商无法确保云中的全面安全。云用户也有部分责任。虽然保护云中用户数据的最佳方法是提供分层安全方法,但云服务提供商应实施行业最佳实践,以确保其云安全达到最高水平。以下是有关云开发人员如何确保其基于云的解决方案安全的七个技巧。
1. 强化安全政策
软件供应商在提供云服务时,应在安全策略中限制其保护云中用户数据和操作的责任范围。告知您的客户您为确保云安全所做的工作以及他们需要采取哪些安全措施。
2.使用强认证
窃取密码是访问云中用户数据和服务的最常见方式。因此,云开发人员应该实施强大的身份验证和身份管理。建立多因素身份验证。有多种工具需要静态密码和动态密码。后者通过在移动电话上提供一次性密码或使用生物识别方案或硬件令牌来确认用户的凭据。
3.实施访问管理
为了提高服务的安全性,云开发者应该让云用户将基于角色的权限分配给不同的管理员,这样用户就只能拥有分配给他们的能力。此外,云编排应使特权用户能够根据其在公司内的职责来建立其他用户的权限范围。
4. 保护数据
云环境中的数据在传输和存储的各个阶段都需要加密:
在源头(在用户端)
传输中(从用户传输到云服务器的过程中)
静止时(存储在云数据库中时)
数据在进入云端之前就需要加密。现代数据加密和标记化技术可以有效防御帐户劫持。此外,证明端到端加密对于保护传输中的数据免受中间人攻击也很重要。使用包含盐和哈希值的强大加密算法可以有效地抵御网络攻击。
存储在云端的数据也容易受到意外损坏,因此您还可以通过提供数据备份服务来确保其恢复。
5. 检测入侵
为您的基于云的解决方案提供完全托管的入侵检测系统,该系统可以检测并通知入侵者对云服务的恶意使用。使用入侵检测系统提供网络监控并通知内部人员的异常行为。
6. 安全 API 和访问
云开发人员应确保客户端只能通过安全 API 访问应用程序。这可能需要限制 IP 地址范围或仅通过公司网络或 VPN 提供访问。然而,对于面向公众的应用程序来说,这种方法可能很难实施。因此,您可以通过 API 使用特殊的脚本、模板和配方来实现安全保护。您甚至可以更进一步,在 API 中构建安全保护。
7. 保护云服务
限制对云服务的访问对于防止攻击者通过云服务的弱点获得对用户操作和数据的未经授权的访问是必要的。在设计云服务架构时,将事件处理程序权限最小化,仅保留执行特定操作所需的权限。此外,您可以将安全决策限制为仅针对用户信任的那些能够管理其数据安全的云服务。
结论
云计算技术因其诸多优点而深受用户欢迎。然而,这项技术也引入了漏洞,这些漏洞可能成为网络攻击的新载体。通过了解网络犯罪分子如何在云计算中进行攻击,云开发人员可以更好地保护他们的产品。
本文翻译自:https://www.apriorit.com/dev-blog/523-cloud-computing-cyber-attacks如若转载,请注明原文地址