云原生场景下的安全左移

本博客地址:https://security.blog.csdn.net/article/details/129430859

一、安全左移概述

安全左移需要考虑开发安全、软件供应链安全、镜像仓库、配置核查这四个部分。

首先是开发安全,安全团队需要关注代码漏洞,比如使用代码检查工具进行静态代码分析或动态运行时分析,找到因缺少安全意识造成的漏洞;此外,应重点检查代码中是否包含用户凭证、存在的密码硬编码等。

其次是软件供应链安全,也就是项目使用到的第三方软件库的安全,可使用软件成分分析(SCA)技术以发现项目中用到的第三方软件库(特别是开源软件),分析相关代码版本库,将其与漏洞库比较,如有匹配则告知存在漏洞。

再次是镜像仓库,应使用镜像漏洞扫描工具持续对自有仓库中的镜像进行持续评估,对有安全风险的镜像进行及时更新。

最后是配置核查,比如暴露面核查、服务器配置加固等,这部分可以最大程度提升攻击者发现脆弱资产和利用漏洞的难度。

基于以上,我们发现开发安全、软件供应链安全、配置核查其实和传统的安全左移基本是没有区别的,因此我们本文重点介绍镜像仓库的安全。

二、容器镜像安全

2.1、镜像构建安全

镜像构建的方式通常有两种:基于容器直接构建或基于Dockerfile构建。建议所有的镜像文件由Dockerfile创建,因为基于Dockerfile构建的镜像是完全透明的,所有的操作指令都是可控和可追溯的。

镜像构建存在的风险项通常包括:

1)基础镜像并不是由可信的组织和人员发布的,镜像本身存在后门或者其他风险项;
2)在Dockerfile中存储敏感信息,如配置服务时使用明文固定密码或凭证等;
3)安装不必要的软件扩大了攻击面等。

针对以上问题,可以从下面几方面来加固镜像构建安全。

1、验证镜像来源

为了保证镜像内容可信,建议开启Docker的内容信任机制。内容信任机制为向远程镜像仓库发送和接收的数据提供了数字签名功能,这些签名允许客户端验证镜像标签的完整性和发布者。默认情况下内容信任机制是被禁用的,可以通过执行下面指令完成或者在Docker的配置文件中配置。

export DOCKER_CONTENT_TRUST=1

2、镜像轻量化

只安装必要的软件包,这不仅在提高容器性能方面有很大帮助,更重要的是减少了攻击面。

3、正确使用镜像指令

在构建镜像时要选择恰当的指令。比如,若需要引入外部文件,在Dockerfile中能用COPY指令就不要使用ADD指令,因为COPY指令只是将文件从本地主机复制到容器文件系统,ADD指令却可以从远程URL下载文件并执行诸如解压缩等操作,这可能会带来从URL添加恶意文件的风险。

4、敏感信息处理

比如Dockerfile中不能存储密码、令牌、密钥和用户机密信息等,即使在创建好容器后再删除这些数据也会造成风险,因为在镜像的历史记录中仍能检索到这些数据。

2.2、镜像仓库安全

1、公共仓库安全

1)在选择镜像时,应使用官方发布的最新版本的镜像,并保持定时更新
2)下载的镜像要经过漏洞扫描评估
3)对于提供服务的镜像,不仅要从操作系统层面进行扫描,还要从应用层面进行扫描
4)对于提供了公开Dockerfile的镜像优先选择自己构建,可避免镜像后门的植入,保证镜像构建过程可控

2、私有仓库安全

私有仓库主要是Harbor:
1)需要启用HTTPS
2)不能使用默认的密码
3)开启防暴力破解机制
4)严格控制挂载卷权限

2.3、容器镜像安全检测

目前比较流行的开源镜像扫描引擎有Clair、Anchore等。

镜像检测的核心目前仍然是已知系统CVE检测。扫描器获取到镜像后,将它分离成相应的层和软件包,然后将这些包与多个CVE数据库包的名称和版本进行对比,从而判定是否存在漏洞。通常开源的镜像漏洞扫描工具会获取各发行版官方途径安装的软件,而至于软件开发者自己部署的非官方软件,这些扫描工具一般是不覆盖的。

2.4、容器镜像传输安全

容器镜像在下载和上传时须保证完整性和秘密性,提高安全性的做法如下:

1)数字签名
上传者主动给要上传的镜像签名,下载者获取镜像时先验证签名再使用,防止其被恶意篡改。

2)用户访问控制
敏感系统和部署工具(注册中心、编排工具等)应该具备有效限制和监控用户访问权限的机制。

3)尽可能使用支持HTTPS的镜像仓库
为避免引入可疑镜像,用户谨慎使用–insecure-registry选项,以免连接来源不可靠的HTTP镜像仓库。

三、总结

镜像安全是开发安全的最右侧,也是运营安全的最左侧,位置非常关键。保证镜像和仓库的安全,对于贯彻开发运营一体化的安全具有重要的意义。

要保证应用全生命周期的安全,安全左移后还需要考虑重新将安全控制右移,通过运行时检测和响应及时发现并处置威胁。

猜你喜欢

转载自blog.csdn.net/wutianxu123/article/details/129430859