亚马逊AWS官方博客

使用 Palo Alto Networks 的 Prisma Cloud 计算版本扫描 AWS 镜像仓库ECR  

目前企业容器的使用越来越普遍,根据Gartner的统计,目前已经有一半的企业已经使用了容器部署。而且这个增长的趋势也会越来越快。其中容器的镜像仓库为存储和分发应用镜像提供了便捷、集中化的来源。当今我们的企业和组织可以很方便地将数以万计的镜像存储在镜像仓库中,比如说我们AWS的镜像仓库ECR Elastic Container Registry)。

可以说他现在是容器化环境运行的核心,因此保护它的安全至关重要。镜像仓库中的镜像给我们的容器部署带来了很多的便利性,但是同时,但是一旦在镜像仓库中存在具有漏洞或者安全隐患的镜像,也会通过容器的自动部署给我们的容器环境带来很大的安全风险。因此,持续监控镜像仓库中镜像的漏洞状态,是一项核心安全要求,需要我们能够保证我们所部署运行的容器本身是安全的。

AWS的ECR本身就内置了镜像漏洞扫描功能,同时可以在镜像上传时自动进行扫描,然后列出镜像中的潜在漏洞。使用也非常的方便。ECR的扫描引擎利用的是开源的CoreOS Clair,并通过Clair提供的CVE数据库列出镜像中的安全漏洞。对镜像内的恶意代码,或者镜像内是否存有敏感信息(用户身份信息),镜像是否以root身份运行,镜像的环境变量里是否存有用户密码信息等这些用户配置层面的检查,还需要利用第三方工具。同时,如何能保证我们的构建的镜像符合Docker或Kubernetes的最佳实践,如何保证合规标准,比如NIST,GDPR,PCI等,同样需要第三方的安全工具来补全。

因此,对很多重度使用容器部署的企业来说,如何能把镜像漏洞扫描,镜像配置及合规检查紧密集成到一个平台,能够清晰的了解自己镜像仓库中镜像的安全状态及其合规情况就显得特别重要。例如:

Cuebiq 是一家总部在美国的市场推广公司。由于要迅速响应市场的变化,及快速发布产品,Cuebiq 启用了Kubernetes的架构,同时组织了DevOps的团队来支持应用的快速开发及迭代。但是如何管理容器平台的安全,成为了亟待解决的问题。通过 Prisma CloudCuebiq 能够容易的监控容器间的网络访问,阻止恶意的流量,监控容器进程,并且持续的镜像仓库进行安全漏洞,镜像配置,镜像合规性扫描。以保证所运行的镜像本身都是安全的。

我们今天就来介绍一下如何通过 Palo Alto Networks 的 Prisma Cloud 计算版本与 AWS ECR 集成来扫描您镜像仓库中的镜像,查看镜像中存在的漏洞,配置及其镜像合规问题。

要扫描AWS的ECR镜像仓库,Prisma Cloud必须使用IAM用户(服务帐户)或IAM角色通过ECR进行身份验证。所需的最低权限策略是

AmazonEC2ContainerRegistryReadOnly

这是一个托管的预定义策略。AWS托管策略授予常见用例所需的最少权限集,因此您无需花费大量时间自己调查权限。

AmazonEC2ContainerRegistryReadOnly

权限策略当前定义如下:

{

"Version": "2012-10-17",

"Statement": [

{

"Effect": "Allow",

"Action": [

"ecr:GetAuthorizationToken",

"ecr:BatchCheckLayerAvailability",

"ecr:GetDownloadUrlForLayer",

"ecr:GetRepositoryPolicy",

"ecr:DescribeRepositories",

"ecr:ListImages",

"ecr:DescribeImages",

"ecr:BatchGetImage"

],

"Resource": "*"

}

]

}

 

先决条件:

您已部署完容器环境

您已在环境中安装好了Prisma Cloud console及其defender组件。

第一步:打开控制台并转到 防御>漏洞>镜像仓库

第二步:请点击 添加镜像仓库

第三步:在对话框中,输入以下信息:

 

  • 选择Amazon EC2 container registry

 

  • 输入镜像仓库的URL

  • 输入要扫描的仓库名称

  • 在标签字段中,输入标签名。将此字段留空表示扫描所有标签
  • 配置AWS的认证信息
    1. 如要使用IAM Role进行身份认证,打开 使用IAM Role
    2. 如要使用IAM 凭据进行验证,请点击 添加 在里面添加AWS凭据信息
  • OS Type选择镜像仓库中镜像类型Linux或者Windows) 
  • Scanner选择 Automatic (自动)
  • Number of Scanners输入您希望启用扫描功能的defender容器数量
  • 设置Cap的数量选择默认的5会只扫描最近的5个镜像,设为0将扫描所有镜像
  • 单击添加

 

第四步点击黄色存储按键

 

第五步检查是否正在扫描添加的镜像仓库中的镜像

  • 导航去Monitor –> Vulnerabilities -> Registry

一个进度条会显示当前的扫描状态。当扫描完成时,扫描结果会加入扫描结果表格中

 

2)可以点击镜像中的漏洞,查看漏洞信息

 

3可以点击合规检查,检查容器内是否有恶意软件,是否存有用户敏感信息等等。

 

4)可以点击Layer查看镜像build的每个Layer信息,清晰了解问题的根源及提供如何修复建议

 

 

Palo Alto Networks 公司简介:

作为全球网络安全领导企业 , Palo Alto Networks (派拓网络)一直以不断挑战网络安全现状而著称。我们的使命就是通过有效防御网络攻击来保护数字时代的生活式 , 我们有幸能够参与其中,为成千上万家企业以及他们的客户保驾护航。我们的独具开创性的 Security Operating platform,通过持续创新为客户的数字化转型战略提供支持。 Palo Alto Networks(派拓网络)掌握安全、自动化以及数据分析领域的最新技术突破。通过提供最真实的平台 ,并联合志同道合的变革企业,我们共同推动生态系统的不断成长,并以此为基础为业界提供卓有成效且独具创新性的跨云端、网络和移动设备的网络安解决方案。

我们为全球150个国家/地区的54,000多名客户提供服务。《财富》100强中超过85家企业以及全球企业2000强中超过 63%的企业都采用我们的产品来降低业务中断的风险。当您拥有专为自动化而构建的安全平台之后 , 便可以利用准确的分析和可靠的威胁情报来放心地进行自动实施 ,并采取措施来阻止网络攻击得逞。

 

AWS全球的Security APN合作伙伴:

Palo Alto Networks作为AWS全球的安全APN合作伙伴,双方的产品部门紧密的合作,致力于为AWS的客户在云上提供更好,更佳的安全产品体验,保护云上的数字安全。

 

本篇作者

Daniel Ma

Daniel Ma,Palo Alto Networks公有云安全架构师,二十年的网络与安全的从业经验。对网络架构,公有云平台,云原生架构及安全有较深入的理解。同时,对于安全及隐私最佳实践非常熟悉,例如NIST,GDPR,等级保护制度等。在加入Palo Alto Networks之前,Daniel的专业工作经历包括Verizon亚太区架构师,AT&T,Vodafone等,在全球骨干网络,安全,公有云等领域有丰富的经验。