快速上手云原生安全平台 NeuVector

admin 2022年4月8日00:42:45评论96 views字数 6187阅读20分37秒阅读模式

快速上手云原生安全平台 NeuVector


作者简介

万绍远,CNCF 基金会官方认证 Kubernetes CKA&CKS 工程师,云原生解决方案架构师。对 cephOpenstackKubernetesprometheus 技术和其他云原生相关技术有较深入的研究。参与设计并实施过多个金融、保险、制造业等多个行业 IaaS PaaS 平台设计和应用云原生改造指导。


快速上手云原生安全平台 NeuVector
前 言

NeuVector 是业界首个端到端的开源容器安全平台,唯一为容器化工作负载提供企业级零信任安全的解决方案。NeuVector 可以提供实时深入的容器网络可视化、东西向容器网络监控、主动隔离和保护、容器主机安全以及容器内部安全,容器管理平台无缝集成并且实现应用级容器安全的自动化,适用于各种云环境、跨云或者本地部署等容器生产环境。
 
此前,我们介绍了 NeuVector 的安装部署、高可用架构设计和多云安全管理,本篇将演示 NeuVector 的基础功能,主要包括:

  1. 安全漏洞管理

  2. 合规性检查和机密性检查

  3. 策略管理

  4. 准入控制策略

  5. 动态安全响应

  6. 行为监控

 
项目地址:https://github.com/neuvector/neuvector
 
本文主要基于 NeuVector 首个开源版 NeuVector:5.0.0-preview.1 进行介绍。


快速上手云原生安全平台 NeuVector
1.安全漏洞管理

NeuVector 集成了 CVE 漏洞库,每天自动更新,支持对平台(Kubernetes)、主机、容器、镜像仓库进行安全漏洞扫描。
 
配置自动扫描,当平台漏洞库有更新,或有新的节点和容器加入时,会自动进行扫描。
 

快速上手云原生安全平台 NeuVector

 
针对不同漏洞,有不同的风险级别提示、对应的组件版本提示和修复版本提示。

快速上手云原生安全平台 NeuVector


快速上手云原生安全平台 NeuVector

 
针对每个漏洞,NeuVector 可以展示对应的漏洞发布时间、漏洞影响范围、对应的组件影响版本。
 

快速上手云原生安全平台 NeuVector


对漏洞进行过滤,检测是否已经修复,以及漏洞等级、发布时间等。

快速上手云原生安全平台 NeuVector


1.1. 配置对接镜像仓库漏洞扫描


支持对接多种镜像仓库如 docker-registry(harbor)、JFrog Artifactory、Nexus 等。

快速上手云原生安全平台 NeuVector

 
以对接 Harbor 为例。配置连接方式,填写连接方式和认证信息,过滤器表示需要扫描的范围,如扫描 uat 项目下全部镜像则 `uat/*`,如果需要扫描整个 Harbor 内全部镜像则 * 。测试设置可以验证编写的表达式的关联情况。

快速上手云原生安全平台 NeuVector


快速上手云原生安全平台 NeuVector
2.合规性检查和机密性检查

NeuVector 的合规性审核包括 CIS 基线测试、自定义检查、机密审核以及 PCI、GDPR 和其他法规的行业标准模板扫描。
 

快速上手云原生安全平台 NeuVector


“类型”表示对应的那个基线标准,如 K.4.1.1 对应 Kubernetes CIS 基线测试,4.1.1 容器对应的基线标准为 D 开头,镜像对应的基线标准为 I 开头。
 
注:GDPR (General Data Protection Regulation,《通用数据保护条例》)为欧盟条例。
 
在合规性检查中也会检查是否存在密文泄漏情况。

快速上手云原生安全平台 NeuVector

 
包括如以下密文泄漏情况:
General Private KeysGeneral detection of credentials including 'apikey', 'api_key', 'password', 'secret', 'passwd' etc.General passwords in yaml files including 'password', passwd', 'api_token' etc.General secrets keys in key/value pairsPutty Private keyXml Private keyAWS credentials / IAMFacebook client secretFacebook endpoint secretFacebook app secretTwitter client IdTwitter secret keyGithub secretSquare product IdStripe access keySlack API tokenSlack web hooksLinkedIn client IdLinkedIn secret keyGoogle API keySendGrid API keyTwilio API keyHeroku API keyMailChimp API keyMailGun API key

快速上手云原生安全平台 NeuVector
3.策略管理

NeuVector 通过组的方式对容器和主机进行管理,对组进行合规性检查、网络规则、进程和文件访问规则、DLP/WAF 的检测配置。
 
NeuVector 会自动将当前集群主机加入到 nodes 组,对于集群内容器会自动创建以 nv.开头的组。

快速上手云原生安全平台 NeuVector

 
NeuVector 的组支持 3 种模式:学习模式、监控模式和保护模式;各个模式实现作用如下:

  • 学习模式

    学习和记录容器、主机间网络连接情况和进程执行信息。

    自动构建网络规则白名单,保护应用网络正常行为。
    为每个服务的容器中运行的进程设定安全基线,并创建进程配置文件规则白名单。

  • 监控模式

    NeuVector 监视容器和主机的网络和进程运行情况,遇到非学习模式下记录的行为将在 NeuVector 中进行告警。

  • 保护模式

    NeuVector 监视容器和主机的网络和进程运行情况,遇到非学习模式下记录的行为直接拒绝。


新建的容器业务被自动发现默认为学习模式,也可以通过设置将默认模式设置为监控模式或保护模式。
 
不同组策略冲突情况下,适用的有效模式如下表:

源组模式
目的组模式
有效模式
学习模式
监控模式
学习模式
学习模式
保护模式
学习模式
监控模式
学习模式
学习模式
监控模式
保护模式
监控模式
保护模式
学习模式
学习模式
保护模式
监控模式
监控模式
 
为了保证业务的稳定运行,当出现模式不一致时,有效模式以限制最小的模式运行。
 
生产环境最佳实践使用路径可以是:
  • 上新业务时,先学习模式运行一段时间,进行完整的功能测试和调用测试,得到实际运行此业务的网络连接情况和进程执行情况信息。

  • 监控模式运行一段时间,看看有没有额外的特殊情况,进行判断,添加规则。

  • 最后全部容器都切换到保护模式,确定最终形态。


3.1. 动态微隔离


使用场景一:POD 间通过网络策略互相隔离

在 Kubernetes 平台中创建四个 Nginx,名称和用途如下:
workload_name:test-web1 image:nginx   用途:web 服务器
workload_name:test-con1 image:nginx   用途:连接客户端 1
workload_name:test-con2 image:nginx   用途:连接客户端 2
workload_name:test-con3 image:nginx   用途:连接客户端 3
 
创建 workload
kubectl create deployment test-web1 --image=nginxkubectl expose deployment/test-web1 --port=80 --type=NodePortkubectl create deployment test-con1 --image=nginxkubectl create deployment test-con2 --image=nginxkubectl create deployment test-con3 --image=nginx

此时在 NeuVector 中会自动生成这几个组:
 

快速上手云原生安全平台 NeuVector


在 test-con1 中通过 curl 访问 test-web1
 

快速上手云原生安全平台 NeuVector


此时可以正常访问,因为在学习模式下 NeuVector 也会自动添加此访问规则。

快速上手云原生安全平台 NeuVector

 
将 test-web1 和 test-con2 都设置为监控模式
 

快速上手云原生安全平台 NeuVector


然后在 test-con2 中 curl 访问 test-web1

快速上手云原生安全平台 NeuVector

 
此时 test-con2 可以正常访问 test-web1,但在 NeuVector 中会生成告警

快速上手云原生安全平台 NeuVector

 
同时,相应地,在网络活动拓扑图中也可以看见对应的连接链路变为红色。

快速上手云原生安全平台 NeuVector

 
将 test-web1 和 test-con2 都设置为保护模式,在通过 test-con2 去 curl test-web1

快速上手云原生安全平台 NeuVector


因为 curl 在学习模式时没有使用,也不是 NeuVector 默认允许的可执行进程,所以进程直接就无法访问了。
 
将 test-con1 设置为保护模式,此时 test-con1 无法访问外部网络。
 
可以通过自定义添加网络规则方式开通访问。

快速上手云原生安全平台 NeuVector

 
在网络规则页,此处规则已经是在学习模式下生成的规则列表。
 
添加外部访问规则

快速上手云原生安全平台 NeuVector

 
NeuVector 深度了解应用程序行为,并将分析有效负载,以确定应用程序协议。协议包括:HTTP,HTTPS,SSL,SSH,DNS,DNCP,NTP,TFTP,ECHO,RTSP,SIP,MySQL,Redis,Zookeeper,Cassandra,MongoDB,PostgresSQL,Kafka,Couchbase,ActiveMQ,ElasticSearch,RabbitMQ,Radius,VoltDB,Consul,Syslog,Etcd,Spark,Apache,Nginx,Jetty,NodeJS,Oracle,MSSQL 和 GRPC。
 
现在 test-con1 的 curl 可以正常访问 www.baidu.com
 
总结:

除上述策略外,NeuVector 也内置网络威胁检测,能够快速识别常用网络攻击,保护业务容器安全运行。
 
无论保护模式如何,在“学习和监视”模式下,NeuVector 将发出警报,并且可以在“通知>安全事件”中找到这些威胁。在保护模式下将收到警报和阻止;还可以根据威胁检测创建响应规则。
 
包含的威胁检测如下:
SYN flood attackICMP flood attackIP Teardrop attackTCP split handshake attackPING death attackDNS flood DDOS attackDetect SSH version 1, 2 or 3Detect SSL TLS v1.0SSL heartbeed attackDetect HTTP negative content-length buffer overflowHTTP smugging attackHTTP Slowloris DDOS attackTCP small window attackDNS buffer overflow attackDetect MySQL access denyDNS zone transfer attackICMP tunneling attackDNS null type attackSQL injection attackApache Struts RCE attackDNS tunneling attackTCP Small MSS attackCipher Overflow attackKubernetes man-in-the-middle attack per CVE-2020-8554

3.2. 进程管理


NeuVector 支持对容器和主机内进程进行管理,在学习模式下,运行的进程和命令会自动添加到规则中。

快速上手云原生安全平台 NeuVector

 
此时在 test-con1 中执行 df -h 会发现报错 bash: /bin/df: Operation not permitted
在 nv.test-con1.default 组中添加 df 进程规则:

快速上手云原生安全平台 NeuVector

 

快速上手云原生安全平台 NeuVector


然后再重新执行即可。
 
进程管理也支持对 node 节点,可以在 node 组中进行限制,约束宿主机进程执行。如限制执行 docker cp 执行,通过学习模式得知是 `docker-tar` 进程在后端执行,将节点切换到保护模式,限制 `docker-tar` 进程即可。
 
这些在节点就无法执行 `docker cp`
 
快速上手云原生安全平台 NeuVector
4.准入策略控制

NeuVector 支持与 Kubernetes 准入控制(admission-control)功能对接,实现 UI 配置准入控制规则,对请求进行拦截,对请求的资源对象进行校验。 
 
NeuVector 支持多种准入控制策率配置,如镜像 CVE 漏洞情况限制、部署特权模式、镜像内使用 root 用户、特定标签等。

在策略-准入控制中开启此功能,注意:需要 Kubernetes 集群提前开启 admission-control 功能
 

快速上手云原生安全平台 NeuVector


NeuVector 准入策略控制支持两种模式:监控模式和保护模式,对应的含义和组的模式一样的。这里我们直接切换到保护模式,添加策略。

快速上手云原生安全平台 NeuVector


快速上手云原生安全平台 NeuVector

 
添加完后,在 Rancher 中部署特权模式,容器会提示解决,策略生效。

快速上手云原生安全平台 NeuVector 

快速上手云原生安全平台 NeuVector
5.动态安全响应

NeuVector 事件响应机制可以将响应规则设置为根据安全事件情况进行动态响应,包括以下事件:漏洞扫描结果、CIS 基准测试、准入控制事件等。

快速上手云原生安全平台 NeuVector


响应动作包括隔离、webhook 通知和日志抑制:

快速上手云原生安全平台 NeuVector

 
  • 隔离模式:对应的容器网络进出流量将全部被切断。 

  • Webhook 通知:将触发信息通过 webhook 方式进行告警。

  • 日志抑制:对触发告警信息进行抑制。


快速上手云原生安全平台 NeuVector
6.行为监控

以 CVE 漏洞配置为例,配置包含 CVE 漏洞名称为 CVE-2020-16156 的容器进入隔离模式。

快速上手云原生安全平台 NeuVector

 
组名对应的是影响范围,如果为空,表示对全部的组都生效,填写组名可以设置对特定组生效。
 
配置策略后,在集群去 curl nginx 容器,发现无法访问,在 NeuVector 中查看容器状态为隔离状态。 

快速上手云原生安全平台 NeuVector

 
删除策略时,也可以配置将对应隔离状态容器解除隔离。
 
注意:

  • 隔离操作不适用于为主机事件触发的规则。

  • 每个规则可以有多个操作。


6.1. 网络流量可视化

 

快速上手云原生安全平台 NeuVector


网络流量可视化,可以清晰可见容器集群内的网络连接关系、当前容器连接会话,并且过滤网络连接信息,进行图标展示;能够快速进行网络问题定位。

6.2. POD 流量抓包


针对容器可进行网络抓包,让故障无需进入主机获取高权限,就能进行网络问题深入排查。
 

快速上手云原生安全平台 NeuVector


快速上手云原生安全平台 NeuVector

  
采集到的数据包可直接下载,通过 Wireshark 进行解包分析。
 
快速上手云原生安全平台 NeuVector
总 结

本次我们主要讲解了 NeuVector 的基础功能,后续将深入介绍 DLP 和 WAF 的配置策略和管理使用。


About SUSE Rancher

Rancher是一个开源的企业级Kubernetes管理平台,实现了Kubernetes集群在混合云+本地数据中心的集中部署与管理。Rancher一向因操作体验的直观、极简备受用户青睐,被Forrester评为“2020年多云容器开发平台领导厂商”以及“2018年全球容器管理平台领导厂商”,被Gartner评为“2017年全球最酷的云基础设施供应商”。


目前Rancher在全球拥有超过三亿的核心镜像下载量,并拥有包括中国联通、中国平安、中国人寿、上汽集团、三星、施耐德电气、西门子、育碧游戏、LINE、WWK保险集团、澳电讯公司、德国铁路、厦门航空、新东方等全球著名企业在内的共40000家企业客户。


2020年12月,SUSE完成收购RancherLabs,Rancher成为了SUSE “创新无处不在(Innovate Everywhere)”企业愿景的关键组成部分。SUSE和Rancher共同为客户提供了无与伦比的自由和所向披靡的创新能力,通过混合云IT基础架构、云原生转型和IT运维解决方案,简化、现代化并加速企业数字化转型,推动创新无处不在。


当前,SUSE及Rancher在中国大陆及港澳台地区的业务,均由数硕软件(北京)有限公司承载。SUSE在国内拥有优秀的研发团队、技术支持团队和销售团队,将结合Rancher领先的云原生技术,为中国的企业客户提供更加及时和可信赖的技术支撑及服务保障。

快速上手云原生安全平台 NeuVector

快速上手云原生安全平台 NeuVector

原文始发于微信公众号(嘶吼专业版):快速上手云原生安全平台 NeuVector

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月8日00:42:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   快速上手云原生安全平台 NeuVectorhttp://cn-sec.com/archives/888638.html

发表评论

匿名网友 填写信息