6个需要避免的常见容器安全错误

随着越来越多的组织将数据和工作负载转移到了云上,许多组织都开始依赖于容器来封装代码及其依赖的软件单元,以便在从一个计算环境迁移到另一个计算环境时,应用程序能够可靠地运行。克莱姆森大学遗传与生物化学系的云架构师Cole McKnight表示,容器化被誉为是一种以安全方式部署应用程序和服务的强大技术。

[[326616]]

Docker和Singularity等容器引擎提供了一种方法来实现和分发给定应用程序的最佳实践安全策略,而不是依赖于单个的用户来配置安全安装,McKnight说。“容器编排平台,如Kubernetes、Mesos或Docker Swarm,都具有集成的安全机制来专门用于部署和执行容器,”McKnight说。“结果是可以得到一个易于配置的可用于开发和部署容器的生态系统。”

虽然这些技术抽象了交付安全应用程序和服务的传统复杂性,但一些开发团队将这种安全性的可能性也解释为了一种保证,McKnight说。问题是,容器实现不是万无一失的,团队在使用它们时所犯的错误依然可能会产生而不是解决安全问题。

1. 过分关注容器本身

“在实现安全容器时,最常见的错误是只关注容器本身,”McKnight说。维护映像安全性的最佳实践非常重要,他说,但开发人员通常只会将重点放在映像的安全性上,而不考虑执行环境。

“容器内的任何安全措施都无法保护它免受宿主的攻击,”McKnight说。“承载容器引擎的每台计算机必须在每一层上都受到保护,以防出现任何传统上可利用的漏洞。”

必须将容器引擎和容器编制平台(如果适用的话)配置为正确使用集成的容器安全机制,McKnight说。“因此,容器安全需要从主机的操作系统和网络开始,”他说。

2. 假设代码库是安全的

独立网络安全顾问Tony Asher表示,在部署容器时,一些组织会错误地将代码库包括进来,并认为它们是安全的。“这包括了开发套件中的库,”Asher说。“更重要的是,第三方库也经常会被直接引入以加速开发。”

安全性问题指的是这些应用程序代码库中可能存在漏洞,Asher说。“编译应用程序并将它们发布到生产容器中,可能会通过漏洞利用而引入严重的风险。”

为了解决这个问题,Asher建议公司在考虑导入第三方库时,将库限制在满足应用程序容器成功标准所需的范围内,扫描代码寻找漏洞,并应用安全审查流程。

组织还需要开发一个正式的安全体系结构审查流程。“这个流程应该包括检查符合风险标准的容器,由一组人来检查,”Asher说。这提供了问责制,有助于确保风险得到考虑。

3. 给予容器不必要的特权

风险投资公司ClearSky的管理合伙人Jay Leek说,给容器过多的特权是很常见的,而攻击者可以滥用这些特权来利用容器本不应该访问但确实可以访问的资源。“在这里应该应用最小特权原则,并且执行运行时行为监视,以便能够确保检测到任何非必要的应用程序特权的滥用。”Leek说。

一种常见的做法是在执行环境中使用特权来运行容器,McKnight说。“取决于主机的软件堆栈,这可能意味着不同的东西,”他说。“但是在宿主环境中给容器不必要的特权会导致问题的升级,不仅会导致容器被破坏,也可能会导致主机被破坏。”

正如容器内部的安全性无法保护它不受其主机的攻击一样,主机内部的安全性也无法保护其免受特权容器的利用。“容器的设计应该确保其运行方式不会在主机环境中为其提供不必要的特权。”McKnight说。

当需要特权时,应该以精细的粒度谨慎地给予特权,McKnight说。“最佳实践是避免在宿主环境中提供具有清除权限的容器。”

4. 过度暴露容器

同样,需要在执行时公开给公共网络的容器也需要以同样的心态进行设计。“应该只打开绝对必要的通道,而不是设计一个让容器暴露于潜在攻击的全面开放的策略。”McKnight说。

在实现容器本身时需要考虑很多问题。“容器是通过一系列命令构建的,这些命令会在映像规范中被定义,并在映像构建时以root权限运行,”McKnight说。“开发人员通常会在部署和执行容器时错误地保留这些权限。”

如果在运行时使用root权限运行容器内的进程,则该容器内的数据和软件将受到危害。为了解决这个问题,要在容器中运行的命令应该是由非root用户在没有权限的情况下运行的(如果可能的话),以避免容器中的任何权限提升。

在网络方面,也需要仔细考虑容器的数据和进程暴露给其他实体的方式。“容器的安全需要再一次从传统的操作系统和网络安全开始,”McKnight说。“必须检查容器与外部卷、网络和进程之间的任何交互。”

5. 未能正确地审查映像

在部署容器时,组织通常忽略的另一个因素是它们所基于的映像。“团队通常会犯这样的错误:在将另一方开发的映像集成到他们的解决方案之前,没有对其进行适当的审查。”McKnight说。

在从公共注册中心部署容器或将其用作基础映像之前,请对其进行扫描,以查找恶意软件和漏洞。此外,组织也应该让有经验的开发人员彻底检查映像,找出漏洞,McKnight说。

“假定推送到公共注册中心的映像是安全的,这是非常危险的,特别是在从这些映像构建额外的映像时。”McKnight说。

6. 不尊重不可变映像的原则

不可变的映像是不可以改变的,Asher指出。“这是Docker、Kubernetes和其它容器解决方案的原则,”他表示。“在internet上部署系统和数据时(internet是不受信任的媒体),需要创建一个能够确保完整性的流程。”

不可变的映像提供了一些好处,例如可预测、可销售以及提供了自动恢复能力。他们还提供了完整性,Asher说,这是安全的核心目的之一。

“当生产容器不遵循不可变的原则时,应用程序将可以连接到它们并进行更改,”Asher说。“这种行为引发了多重安全隐患。具体来说,它会破坏容器的完整性。”

最令人担忧的风险之一是恶意参与者会修改容器以包含恶意代码。这可能会对公司造成重大影响,Asher说。监视容器的完整性可以极大地降低这种风险。

“你需要改进和纠正部署管道,以防止生产容器发生变化,”Asher说。“确保在拥有质量保证的测试环境中进行更改,确保这些更改能够得到批准,然后部署新的不可变映像来替代旧的映像。”

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/135054.html<

(0)
管理的头像管理
上一篇2025-03-01 10:51
下一篇 2025-03-01 10:52

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注