Sysdig Secure使用体验

公司背景

Sysdig创立于2013年,总部位于美国旧金山。是一家云原生的可见性和安全性公司,为企业及其DevOps团队提供云和容器安全性。它推动了安全的DevOps运动,帮助组织放心地保护容器,Kubernetes和云服务。借助Sysdig Secure DevOps平台,云团队可以连续不断地保护构建管道,检测和响应运行时威胁验证合规性,并对云基础架构和服务进行监视和故障排除。

融资历程:

日期

融资轮次

估值金额

融资金额

2021-04-29

E轮及以上

11.9亿美元

1.89亿美元

2020-01-22

E轮及以上

未披露

7000万美元

2018-09-12

D轮

未披露

6850万美元

2017-10-12

C轮

未披露

2500万美元

2016-04-21

B轮

未披露

1500万美元

2015-07-15

A轮

未披露

1070万美元

2013-06-30

种子轮

未披露

230万美元

Sysdig Secure DevOps Platform

Sysdig使用统一平台在容器和微服务友好架构中提供安全、监控和合规。基于该平台分别构建了Secure、Monitor的解决方案。

Sysdig Secure使用体验

Sysdig创建了Falco,并逐渐将其发展成是容器、主机、Kubernetes 和云的运行时威胁检测的开放标准。 Sysdig平台建立在开源堆栈上,以加速创新和推动标准化。

Sysdig Secure使用体验

本文后续重点介绍Sysdig Secure的使用。

Sysdig Secure

Sysdig Secure提供了容器、Kubernetes、云场景下的统一安全、合规方案。核心功能:

  • 统一呈现安全数据详情。
  • 提供镜像扫描、审计和运行时漏洞管理功能。
  • 提供运行时检测,根据应用程序、容器和网络活动实时识别和阻止威胁。
  • 支持事件响应,违规事件系统异常捕获及告警。

Sysdig Secure使用体验

产品试用

通过个人邮箱完成注册,即可获取30天的免费体验时间。登陆后,进入Get Started,这里展示了使用Sysdig Secure的关键配置步骤。Sysdig Secure for cloud提供了对AWS、GCP很好的支持,例如针对AWS场景,提供了基于CloudTrail的威胁探测、容器仓库扫描等。对于阿里云没有很好的支持,需要安装agent进行采集,本文基于阿里云ECS、ACK进行了使用了Linux、K8s的体验。

Linux体验

登陆Linux机器,将Get Started-> Get Connected-> Install the Agent -> Helm中命令执行即可完成安装。

K8s体验

通过Helm安装,将Get Started-> Get Connected-> Install the Agent -> Helm中命令执行即可完成安装。安装后,会在对应集群中创建sysdig-agent命名空间,并且创建相应的DaemonSet。

Sysdig Secure使用体验

概览页面

概览页面提供了资产及其状态的全局视图。

  • Build Time - Images Scanned
  • Runtime - Images Scanned
  • Runtime - Policy Events by Severity:过去24小时产生的安全事件,并按严重级别分类。
  • Build Time - CVEs Found by Severity (OS and non-OS)
  • Runtime - CVEs Found by Severity (OS and non-OS)
  • Runtime - Benchmark Tests Failed

Sysdig Secure使用体验

Insights

Insights是Sysdig新提供的一个强大的可视化工具,他将Sysdig Secure探测到的结果都聚合到一个可视化平台中,进而简化威胁检测、调查和取证分析。

开通:目前Insights处于Beta阶段,需要在user profile中开启。

Insights提供了四种类型资源的视图:

  • 云用户活动(Cloud User Activity):关联云帐户的用户活动涉及的漏洞和事件。
  • 云活动(Cloud Activity):关联云帐户所有资源及涉及的漏洞和事件。例如,下图Insights以图形化的方式清晰展示了关联AWS账号各地域的云产品资产以及涉及的漏洞和事件。

Sysdig Secure使用体验

  • Kubernetes 活动:关联Kubernetes 集群资源及涉及的漏洞和事件。
  • 全局展现集群-命名空间-Deployment/StatefulSet/DaemonSet间的关系。
  • 图形化展示了K8s资源所关联的安全事件,并通过颜色表示风险等级。

Sysdig Secure使用体验

  • 复合视图:检测并聚合来自 Cloud Activity 和 Kubernetes Activity 视图的所有结果。

扫描

Sysdig Secure提供了两种扫描威胁的方式:

  • 镜像扫描
  • 主机扫描:通过Node Analyzer扫描主机操作系统,包括操作系统(例如 rpm、dpkg)与非操作系统(例如 Java 包、Ruby gems)。

暂时不做重点,所以没有深入体验。。。

安全态势

合规

Sysdig Secure合规规则主要分为:

  • 工作负载类型(Workload types):包括用于内核系统调用的任何 Falco 规则,用于 Kubernetes 审计日志的 Falco 规则,主机benchmarks以及影响主机、容器和 kubernetes 集群的安全特性。
  • AWS/云类型(AWS/cloud type):用于 CloudTrail 的 Falco 规则和 AWS 上的 Cloud Custodian 规则。

目前支持的合规规则来源:

  • PCI/DSS 3.2.1
  • SOC2
  • NIST 800-53 rev4 and NIST 800-53 rev5
  • ISO 27001:2013
  • HIPAA
  • GDPR

Sysdig Secure使用体验

点击“Posture”可以看到很多的合规规则集,点击具体的规则集可以查看合规报告。例如“ISO-27001-2013”,Controls通过率22.7%,通过了5条,失败了17条。

正文部分展示了详细的列表,并提供了相应的合规修复方案。例如,“Securing application services on public networks”这条合规规则,用于保护通过公共网络传输的应用服务信息免遭欺诈活动、合同纠纷和未经授权的披露和修改。最后给出了相应的修复方案:

  • Enable "Notable Network Activity" Policy with Falco rule "Program run with disallowed http proxy env"
  • Enable Kubernetes auditing by following the instructions in the Sysdig docs

Policies

Sysdig Secure Policies可以说是Sysdig的核心部分,包括了强大的内置Policy,也可以根据用户需求自定义Policy,或者基于内置的Policy进行改造。

Runtime Policies

Runtime Policies List展现了当前所有运行时的Policy列表(可以根据情况打开/关闭)。在这里可以看到全局的信息,每个Policy的级别、状态、Rule的条数等。

Sysdig Secure使用体验

点击进入具体的Policy,例如“Suspicious K8s Activity” ,可以看到配置详情,并可以进行自定义编辑等操作。可以看到每个Policy由两大部分组成:

  • Scope:可以指定Policy的作用范围,支持一些高级的规则语法,例如in、not in、start with等。
  • rules: 一些检查的规则,会持续探测。
  • actions: policy rule触发后的采取的动作,例如邮件通知。

Sysdig Secure使用体验

scope、actions的支撑情况如下表:

Falco

List-Matching

Kubernetes

AWS Cloud

Scope Options

Custom

Hosts only

Container only

Customer

Hosts only

Container only

kubernetes.cluster.name

kubernetes.namespace.name

aws.accountId

aws.region

Action Options

Stop/ pause/ kill

Capture

Notification channel

Stop/ pause/ kill

Capture

Notification channel

Notification channel

Notification chann

Runtime Rules

Rules是安全Policy的基本规则单元,用于指定需要探测的一些列动作。有两形式:

Falco Rules语法

一般用于复杂场景。所有等内置Rules都是基于Falco Rule构建的。Falco是由Sysdig创建的运行时安全项目,提供了强大的规则引擎。

元素

描述

rule

具体的规则。当rule下的条件condition字段满足时,告警将会触发。

macro

rule 条件或macros中可复用的部分。

list

列表,可用于rules、macros,甚至嵌套到其他的list中。

Sysdig Secure使用体验

  • 提供了大量的内置Rule,对Kubernetes Audit、AWS CloudTrail、GCP AuditLog、Azure Platform Log提供了很好的支持,规则非常的丰富。

Sysdig Secure使用体验

  • 此外,将内置了Falco提供的Macro、List,可以便于自定义Rule的时候进行使用。

Sysdig Secure使用体验

  • 对于自定义的Rule,Sysdig提供了Rules Text Editor。便于用户自己编辑。右图,为Falco内置的Rule配置yaml文件(同Falco开源版本本地文件falco_rules.yaml),只读模式。左图为自定义的场景,例如我们通过内置的"Read Shell Configuration File"拷贝出了"Read Shell Configuration File (Copy)"。

Sysdig Secure使用体验

List-matching语法,

一般用于简单的匹配与否场景的应用。一般由用户自定义,针对容器、文件系统、网络、进程、系统调用提供了简单的配置选项。

例如容器场景的List-matching Rule配置页面:

Sysdig Secure使用体验

为了便于用户使用,Sysdig在Rules Library中提供了大量的内置Rule。这些Rule来源于Sysdig内部、Falco开源社区或者CIS或者MITRE ATT&CK等安全benchmarks。

丰富的规则生态

Sysdig Secure集成了大量的内置Rule,很好的支撑了K8s、AWS、GCP、Azure场景,因此用户结合自己的业务场景,灵活的自定义Policy。而这也很好的体现了Falco规则语法的灵活性、可复用性。

Sysdig Secure使用体验

安全事件

Sysdig Secure提供了详细的安全事件展示页面。点击具体的事件,可以展现事件详情。例如,因为修改了.bash_history文件,则会探测到“Suspicious Filesystem Changes”安全事件到发生,并明确指出了.bash_history被篡改。

Sysdig Secure使用体验

生态支持

K8s审计日志集成

  • 可以使用Falco规则对Kubernetes进行审计。例如:Pod、服务、部署、守护进程集等的创建和销毁,创建/更新/删除config map或保密字典等。
  • 需开启Kubernetes Audit Logging(需安装Sysdig Admission Controller,并开启k8sAuditDetections开关)。

AWS CloudTrail集成

Sysdig Secure使用体验

事件转发

Sysdig 支持将不同类型的安全数据发送到第三方 SIEM(安全信息和事件管理)平台和日志记录工具,例如 Splunk、Elastic Stack、Qradar等。

调查(Investigate)

Activity Audit

Activity Audit通过数据流的形式展现了shell命令行、网络Activity、文件Activity、kube exec等行为。整个页面氛围3大部分:

  • 过滤项。包括了针对Scope过滤(主要是Activity的来源范围)及Activity属性的过滤。
  • Frequency Graph,Activity的波形。支持滑动时间段放大的功能。
  • Activity详情。包括发生时间、数据来源、详情三部分。

Sysdig Secure使用体验

Activity Audit可以提供不同的数据源的Activity查看能力,以进行监控、故障排除、诊断或满足监管控制。接下来通过具体的例子展现这个过程:

  • 当安全事件发生时(例如,构造了一个登陆到Pod中修改.bash_history的行为),用户可以通过配置好的通知渠道收到事件通知,并在Events页面查看安全事件。

Sysdig Secure使用体验

  • Events页面点击具体的Event,可以有通过终端shell登陆容器的行为发生,通过“View Activity Audit”直接跳转到相关的 Activity Audit 以调查详细信息。

Sysdig Secure使用体验

  • 利用Trace 功能,可以将来自 Kubernetes 用户的交互式请求与容器内执行的命令和网络连接相关联,从而进一步追溯问题。

Sysdig Secure使用体验

Captures

Sysdig Capture文件包含系统调用和其他操作系统事件。创建Capture文件,有两种方式:

  • 对于具有关联捕获的运行时Policy事件,Sysdig提供了一个上下文菜单,用于对事件捕获执行快速操作。

Sysdig Secure使用体验

  • 也可以手动选择容器 ID进行构建。

Sysdig Secure使用体验

抓取到到Capture文件,可以通过Sysdig Inspect进行查看。在这里能看到对应容器完整的信息,包括文件、网络、进程、性能等。

Sysdig Secure使用体验

总结

Sysdig Secure提供了强大的Agent,支持主机、Kubernetes场景;同时SaaS化模式,便于业务扩展;针对主机安全、Kubernetes、云(AWS、GCP等)开箱即用的policy。总体上是一款不错的安全产品。

上一篇:日志审计精细化采集策略


下一篇:阿里云日志服务与Splunk集成方案(Splunk Add-on方式)实战