如果您的业务部署在阿里云Serverless环境中,可使用云安全中心的Serverless安全检测功能,确保Serverless架构下资产的安全。该功能支持对Serverless资产进行常见的威胁告警检测、漏洞扫描、基线风险检查。本文介绍云安全中心如何接入Serverless资产并为Serverless资产提供安全防护功能。
功能介绍
支持防护的资产实例
通过托管版与专有版容器集群ACK、ACK Serverless集群创建的弹性容器实例 ECI(Elastic Container Instance)。
通过容器计算服务 ACS(Container Compute Service)创建的ECI实例资产。
Serverless 应用引擎 SAE(Serverless App Engine)的ECI实例资产。
支持的安全能力
云安全中心为Serverless资产提供以下安全能力。
威胁告警检测:支持检测并处理Serverless资产中存在的常见安全威胁,例如发现后门(WebShell)文件、异常网络连接、进程异常行为等。支持的具体检查项,请参见适用于容器环境的告警。
漏洞扫描:您可以在
页面,单击已支持漏洞下的数字,前往支持检测的漏洞列表面板,查看支持检测的漏洞列表。对于应用漏洞,仅支持扫描,不支持修复。应用漏洞是针对您服务器上安装的软件进行扫描后发现的风险,需要您根据漏洞详情中的修复建议,手动对软件应用进行升级或配置修改,排除安全隐患。
基线风险检查:支持检测并处理Serverless资产的存在的基线检查风险项,例如Kubernetes(ECI) Pod 国际通用安全最佳实践基线检查的限制以root运行容器和禁止配置具有内核功能的容器等。支持的具体基线检查内容,请参见基线检查内容。
云安全中心对于接入的Serverless资产根据容器运行时状态划分为不同的实例类型,对应支持的安全能力有如下区别。
实例类型 | 支持的安全能力 |
弹性容器实例 |
|
RunD容器实例 | 威胁告警检测 |
计费说明
北京时间2024年07月31日及之后,Serverless安全防护功能停止公测,不再支持免费试用Serverless安全防护功能。如果用户需要使用Serverless安全防护功能,需要通过控制台开通Serverless资产按量付费。具体操作,请参见本文2. 开通按量付费。
开始计费
开通Serverless资产并完成授权后,Serverless防护采用按量计费模式,按照已授权绑定且客户端在线的资产每秒的计算核数计费:0.000003美元/核/秒。系统会根据已授权绑定资产每天的计算核数总量,在次日生成账单。更多信息,请参见计费概述。
停止计费
在以下场景中,阿里云会立即停止对绑定授权的Serverless资产的安全检测,同时停止计费。
停止所有Serverless资产的计费:
在云安全中心控制台的总览页面的按量付费服务区域,关闭Serverless资产对应的开关。
在云安全中心控制台的
页面上方,单击停止使用。当前阿里云账号欠费。
停止指定Serverless资产的计费:
在云安全中心控制台的
页面,解绑指定资产的绑定授权。具体操作,请参见本文3.2 绑定或解绑授权资产。
1. 为待防护的ECI Pod安装并启动云安全中心客户端
对于托管版与专有版容器集群ACK、ACK Serverless集群、ACS集群创建的ECI资产,必须完成安装并启动云安全中心客户端,才能使用云安全中心提供的Serverless安全防护能力。
您可以通过以下方式安装并启动ECI Pod的云安全中心客户端。
ACK Serverless集群的ECI Pod启动客户端
在容器服务管理控制台的目标集群管理页面的左侧导航栏,选择 ,单击使用YAML创建资源,在YAML模板的spec > template > metadata
下增加annotations
参数配置,并将其设置为k8s.aliyun.com/eci-aliyundun-enabled: "true"
。
新建的YAML模板示例:
apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
annotations:
k8s.aliyun.com/eci-aliyundun-enabled: 'true'
labels:
app: nginx
spec:
# nodeSelector:
# env: test-team
containers:
- name: nginx
image: nginx:1.7.9 # replace it with your exactly <image_name:tags>
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"
如果使用镜像创建资源,可在高级配置中添加Pod注解:k8s.aliyun.com/eci-aliyundun-enabled=true
。资源创建的具体操作,请参见使用镜像创建无状态应用。
托管版与专有版容器集群ACK的ECI Pod启动客户端
托管版与专有版容器集群ACK的ECI Pod启动客户端
登录容器服务管理控制台,进入对应版本的集群管理页面,部署ack-virtual-node组件,将Pod调度到ECI上运行。具体操作,请参见通过虚拟节点将Pod调度到ECI上运行。
在容器服务管理控制台的集群管理页面左侧导航栏,选择 ,然后单击使用YAML创建资源,在YAML模板的
metadata
下增加annotations
参数配置,并将其设置为k8s.aliyun.com/eci-aliyundun-enabled: "true"
,在spec > containers
下配置环境变量env
,设置容器类型为ECI_CONTAINER_TYPE = sidecar
。新建的YAML模板示例:
apiVersion: v1 kind: Pod metadata: name: test-aegis-alinux2-lifsea-x86 labels: eci: "true" annotations: k8s.aliyun.com/eci-aliyundun-enabled: "true" spec: containers: - name: sidecar image: registry-vpc.cn-shanghai.aliyuncs.com/eci_open/centos:7 command: - /bin/sh - -c args: - sleep inf env: - name: ECI_CONTAINER_TYPE value: sidecar - name: nginx image: registry-vpc.cn-shanghai.aliyuncs.com/eci_open/centos:7 command: - /bin/sh - -c args: - sleep inf
ACS集群的ECI Pod启动客户端
在容器计算服务控制台的目标集群管理页面的左侧导航栏,选择 ,单击使用YAML创建资源,在YAML模板的spec > template > metadata
下增加annotations
参数配置,并将其设置为security.alibabacloud.com/aliyundun-enabled: 'true'
。具体内容,请参见ACS Pod实例概述和使用YAML创建。
YAML模板示例:
apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
alibabacloud.com/compute-class: general-purpose
alibabacloud.com/compute-qos: default
annotations:
security.alibabacloud.com/aliyundun-enabled: 'true'
spec:
# nodeSelector:
# env: test-team
containers:
- name: nginx
image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6 # replace it with your exactly <image_name:tags>
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"
如果使用镜像创建资源,可在高级配置中添加Pod注解:security.alibabacloud.com/aliyundun-enabled=true
。资源创建的具体操作,请参见使用镜像创建。
2. 开通按量付费
新购开通Serverless资产防护
免费版和申请试用的用户,可以通过购买云安全中心按量付费实例方式,开通Serverless资产防护能力。
访问云安全中心购买页并使用您的阿里云账号登录。
在购买页面,选择购买方式为按量付费,单击Serverless资产的是。
单击自定义按需绑定,在授权管理对话框中,您可选择全量绑定或自定义绑定,配置目标Serverless资产的防护授权。
重要如果未进行自定义绑定,则默认全量绑定,且开启新增资产自动绑定。
仔细阅读并选中云安全中心服务协议,单击立即下单。
云安全中心会自动接入当前阿里云账号下状态为运行中的Serverless资产(ECI实例和SAE应用),并根据授权管理配置,绑定授权目标Serverless资产。
新增开通Serverless资产防护
已购买云安全中心实例的付费版(防病毒版、高级版、企业版和旗舰版)的用户,可以新增开通Serverless资产防护能力。
登录云安全中心控制台。在控制台左上角,选择需防护资产所在的区域:中国或全球(不含中国)。
在左侧导航栏,选择 。
在Serverless资产页面,单击立即开通。
您也可以在总览页面右侧的按量付费服务区域,打开Serverless资产开关。
在确认对话框中,您可单击自定义按需绑定,配置目标Serverless资产的防护授权,单击确定。
重要如果未进行自定义绑定,按照以下逻辑绑定授权Serverless资产:
如果是首次开通,则默认全量绑定,且开启新增资产自动绑定。
如果不是首次开通,则默认自动绑定授权给上一次开通该功能已绑定授权的Serverless资产。如果上一次开通该功能绑定授权的ECI实例和SAE应用为0,则默认全量绑定,且开启新增资产自动绑定。
如果当前账号已欠费,且欠费前已开通Serverless资产功能,用户结清当前账号欠费账单后,默认绑定之前已绑定授权的Serverless资产。
在确认对话框中,选中我已阅读并同意云安全中心(按量付费)用户协议,然后单击立即开通。
3. 管理绑定授权的资产
绑定授权:云安全中心客户端在线且授权绑定的Serverless资产,才能使用云安全中心提供的Serverless安全防护能力。
解绑授权:对不需要防护的Serverless资产,可以执行解绑授权操作。
3.1. 同步最新资产
开通Serverless资产的防护功能后,对于已接入云安全中心的资产实例和新建的资产实例,都需要先同步最新Serverless资产信息,确认待防护的资产实例已安装启动云安全中心客户端。
登录云安全中心控制台。在控制台左上角,选择需防护资产所在的区域:中国或全球(不含中国)。
在
页面,单击同步最新资产。云安全中心会拉取最新的Serverless资产信息,刷新资产列表。
说明同步最新资产信息需要1分钟时间,请您耐心等待。
在
页面的资产列表中找到目标Serverless资产,查看客户端列图标颜色。绿色:表示客户端在线运行中,绑定授权后,可使用Serverless安全防护功能。
灰色:表示客户端因未安装或网络不稳定等其他因素不在线。绑定授权后,不支持使用安全防护功能。
请参考上文的1. 为待防护的ECI Pod安装并启动云安全中心客户端,检查并安装对应资产的云安全中心客户端,完成资产实例重启。
新建或重启Serverless资产实例后,在
页面,单击同步最新资产,同步最新资产信息到云安全中心。
3.2. 绑定或解绑授权资产
为目标资产实例启动云安全中心客户端在线后,您可以为目标资产绑定授权,以使用Serverless安全防护功能。如果您开通功能时选择了全量绑定,也可以对不需要防护的资产解绑授权。
在
页面,单击资产列表上方未绑定的实例下的授权管理。在授权管理对话框中,选择操作类型(绑定或解绑),根据页面提示选择目标Serverless资产,然后单击确定。
如需自动绑定新增的Serverless资产,可选中新增资产自动绑定。
4. 查看并处理安全风险
Serverless资产接入云安全中心并完成绑定授权后,云安全中心会为该实例实时开启安全威胁告警检测,漏洞扫描和基线风险检查会按照漏洞或基线的扫描周期执行检查。您可以前往漏洞管理或基线风险检查页面,查看最新检查时间。
以下介绍查看Serverless资产安全风险状态的具体步骤。
在
页面的资产列表中,找到目标资产,如果对应风险状况列显示存在风险,表示该资产中检测出了告警、漏洞或基线风险。单击目标资产名称或该资产对应操作列的查看,可查看该资产的详细风险信息。
单击安全告警数、漏洞风险数或基线风险数卡片,可以查看对应的风险检查项列表。
处理安全告警。
单击目标告警对应操作列的详情,查看告警的详细信息,判断告警是否为真实存在的风险。
判断完成后,单击目标告警操作列的处理,如果为真实存在的风险,选择隔离处理方式;如果无需处理或需忽略本次告警,选择加白名单、忽略或我已手工处理等处理方式。
处理漏洞风险。
单击漏洞风险数卡片,查看该资产中检测出的漏洞。
漏洞为可被黑客利用的薄弱点,建议您及时处理已检测出的漏洞。应用漏洞不支持一键修复,建议您根据漏洞详情中的说明自行修复漏洞。具体操作,请参见查看和处理漏洞。
处理基线风险。
单击基线风险数卡片,查看该资产中检测出的基线风险。单击目标风险操作列的详情,查看风险详情和加固建议,并判断是否需要处理该基线风险,并根据判断结果处理该风险,或对该风险加白名单。
云安全中心仅支持修复部分基线检查项风险问题,如果风险详情页面的风险处理列表显示修复按钮,表示该风险项支持在云安全中心修复,您可以在云安全中心直接修复基线风险问题。