安全防御 04月05日 01:22
​Falco—云原生安全守护者
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Falco是一款开源的云原生安全工具,专注于实时监控和检测容器、主机及Kubernetes集群中的安全事件。它通过分析Linux系统调用,识别异常行为,如Shell的运行、敏感文件访问、非设备文件写入等。Falco提供灵活的规则配置,支持自定义规则,并能将告警信息发送至多种平台。文章详细介绍了Falco的安装、配置、规则编写,以及在单机和K8S环境中的应用案例,并与OSSEC进行了对比,探讨了Falco在云原生安全领域的价值和挑战。

🛡️ **Falco的核心功能**:Falco通过监控Linux系统调用,检测容器、主机和Kubernetes集群中的安全事件,如容器内Shell的运行、敏感文件读取等,从而提供实时的安全防护。

⚙️ **Falco的配置与规则**:Falco的配置由Lists、Macros和Rules三部分组成,用户可以自定义规则,通过条件判断和输出设置,实现对特定安全事件的检测和告警。文章详细介绍了规则的编写,包括使用宏定义和各种字段的组合。

💡 **Falco的应用场景**:Falco可在单机和K8S环境中运行,通过配置不同的规则,检测主机外联、Webshell访问敏感文件、检测frp进程等。文章提供了具体的案例演示,展示了Falco在不同环境中的应用效果。

🆚 **Falco与OSSEC的对比**:文章将Falco与OSSEC进行比较,指出Falco基于系统调用捕获,能更深入地分析系统行为,特别是在容器方面的支持更完善;而OSSEC依赖日志,对容器支持不足。但OSSEC在集中管理方面更具优势。

原创 Lion 2023-07-28 19:42 北京

如果说之前的NeuVector是从宏观上看容器的安全,那么Falco便是从容器,主机的角度出发


一 Faclo 介绍

      在云原生应用和容器化环境中,安全性成为了一个至关重要的关注点。随着容器技术的普及和应用的快速发展,容器环境中的安全挑战也日益增加。为了保护应用程序和数据免受潜在威胁,开发者和运维团队需要有效的安全工具和机制。Falco是一个开源的云原生安全工具,通过实时监控和检测容器、主机和Kubernetes集群中的安全事件,为云原生环境提供智能的守护功能。Falco 可以监测调用 Linux 系统调用的行为,并根据其不同的调用、参数及调用进程的属性发出警告。例如,Falco 可轻松检测:


二FALCO 安装

Falco的安装方式相对比较简单,单机版安装方式可以参考:https://falco.org/docs/getting-started/falco-linux-quickstart/

K8S中的安装方式可以参考:
https://falco.org/docs/getting-started/try-falco/try-falco-on-kubernetes/
这里需要说明一下的是我在centos7 中进行的安装时,遇到了bpf驱动无法下载的问题,改成了centos9就可以了,看了一下是因为没有对应的内核驱动导致的,这点需要注意一下。
三 Falco 配置

  Falco 单机规则配置文件为自带的falco_rules.yaml,以及可以用于自定义规则的falco_rules.local.yaml文件构成,如果在K8S中使用自定义的规则文件,需要创建configmap 指定。

   Falco的配置规则由三大部分组成分别为:Lists,Macros,以及Rules

当发现主机外联时会有如下告警:

这里生成了一个cs的后门,通过strace跟踪ip

在Falco中生成的告警:


产生的告警为:

产生的告警为:

3.2 FALCO k8s

    在k8s中,falco 作为daemonset启动,利用configmap将自定义规则加入:

同样的,当一个容器访问了敏感文件:

产生的告警为:

检测当一个特权容器启动规则为:

对应告警:

Falco支持将告警通过syslogweb,文件等发送,这里我将falco的告警转发至es中,并用kibana 进行了展示,由于测试关系我没有对内容字段进行进一步拆解。

四 Faloc检测ebpf 后门

现在有很多关于ebpf的研究,我曾试着想利用falco发现ebpf后门,不过,经过测试,falco仅仅发现了系统调用了bpf函数,如下图所示,但是并未找到如何配置,让其产生告警。希望有兴趣的读者可以进一步进行研究。

五 与ossec 比较

  在我的《互联网安全建设从0到1》这本书中,介绍了一款主机ids-ossec,这里可以简单的将两个软件进行比较,ossec的告警更多是依赖log进行,对log进行decoder,从而匹配规则,进而产生告警。而falco本身依赖的是系统的系统调用捕获,因此可以更加深度的对系统行为进行分析,而ossec,对容器方面支持的不够完善,而这正是falco的优势,当然ossec 可以进行集中管理,这点上falco还是需要运维软件进行控制,在这点上,不如ossec。


六 结语

   以上便是对falco的一些简单介绍,而falco的规则,有了gpt后,便更加容易编写了,很多规则可以通过询问gpt进行编写了,这很好的降低了编写规则的难度,但依然需要进行测试,毕竟有的时候gpt还是会一本正经的胡说八道。另外毕竟falco在这里仅仅是一个工具,想要真正发挥它的作用,还需要在日常工作中不断的打磨,需要对falco的资源占用情况,告警准确情况,进行不断的了解,改进这又变成了运营问题。同样的,这个软件想要发挥最大的价值,还需要考虑到其在公司业务系统的覆盖率,毕竟工程化一个软件,比研究一个软件的功能要难很多。

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Falco 云原生安全 容器安全 Kubernetes 安全工具
相关文章