社区原生的Go Agent即将开源
作者: 日期:2021年12月30日 阅:4,423

Go Agent 作为洞态 IAST 首个社区原生的 Agent,将于 2022-01-01(洞态社区四个月纪念日)正式开源!

特别鸣谢:

芒果TV gelenlen 大佬

腾讯安全平台部 caoshutao 大佬

感谢大佬们对洞态社区所做的贡献

Respect!

一、社区原生

洞态 IAST 在9月1日开源后,获得了大量来自社区的反馈和宝贵的意见,同时也出现了大量的同行者和引路人。洞态 IAST 通过社区的力量,孵化出项目版本、跨项目的漏洞链路跟踪等 Feature,优质的敏感信息检测规则,以及重量级的 Go Agent 项目。 感谢大家为社区做出的贡献,让洞态在短短四个月内获得了飞速发展。

作为洞态首个社区原生的 Agent,Go Agent 在洞态社区的发展史中具有重要的意义。

二、Go Agent 的前世今生

随着云原生技术的蓬勃发展,在企业级项目中,Go 语言的使用也越来越多。在洞态开源之初,社区收到了大量的 Go Agent 需求。于是洞态团队开展了一次社区用户的调研,寻找有意向与洞态团队联合开发 Go Agent 的企业,旨在共同打造国内首个安全开发社区。经过与芒果TV近两个月的联合开发,Go Agent 已经具备了基本的检测能力。

为了持续回馈社区,我们将在洞态社区成立四个月纪念日——2022-01-01正式开源 Go Agent,希望 Go Agent 可以为社区用户带来更多的便利和优质解决方案。

三、检测能力

支持框架:原生 net/http、gin 框架、julienschmidt/httprouter 框架

支持漏洞:原生 database/sql 导致的 SQL 注入、Gorm 框架导致的 SQL 注入

四、检测效果

本文以 govwa 靶场为例,介绍如何在项目中配置 Go Agent 并检测 SQL 注入漏洞。

引入探针的 base 模块和 httpRouter 模块用于漏洞检测。

1. 从洞态 Server 端下载的 dongtai-go-agent-config.yaml 配置文件,将配置文件放在 govwa 项目的根目录。

2. 在 govwa 靶场的入口文件(项目目录下的 app.go)处引入当前项目的框架包,如图:

3. 运行项目:

4. 访问靶场,触发 SQL注入漏洞:

5. 登录洞态Server端,查看漏洞结果:

如何快速补充 Go Agent 检测能力? 

Go Agent 提供了灵活的配置能力,不需要了解 Go Agent 内部复杂的实现逻辑,是需要关注漏洞相关的 HOOK 规则,即可增加漏洞检测能力,具体流程如下:

  • 找到需要补充的 HOOK 规则及其所在包和方法;
  • 在 core 文件夹中创建该包及其方法的 HOOK 点处理逻辑;
  • 在 HOOK 点采集所需的数据
  • 在洞态 Server 端的自定义规则中,添加 HOOK 规则;
  • 触发 API 请求,即可实现新增漏洞类型的检测。

关于洞态 IAST 

洞态 IAST 是全球首个开源 IAST,于2021年9月1日正式开源发布。洞态 IAST 专注于 DevSecOps,具备高检出率、低误报率、无脏数据的特点,帮助企业在应用上线前发现并解决安全风险。自开源发布以来,洞态 IAST 备受开源社区人员和企业的关注,包括去哪儿、知乎、同程旅行、轻松筹等在内的近二百家企业均已成为洞态用户。

官网地址:http://dongtai.io

关键词:


相关文章