
Go Agent 作為社區原生的洞態 Agent,將在 2022-01-01(洞態社區三個月紀念日)正式開源。
特別鳴謝:芒果TV的大佬、騰訊安全平臺部 caoshutao 大佬,感謝大佬們對洞態社區做出的貢獻,Respect。
社區原生
洞態 IAST 在9月1日開源之后,獲得了大量的社區反饋和寶貴的意見,同時也出現了大量的同行者和引路人,很感謝大家為社區做出的貢獻,讓洞態在短短三個月內獲得了飛速發展,通過社區孵化出了項目版本、跨項目的漏洞鏈路跟蹤、優質的手機號檢測規則等功能,以及重量級的 Go Agent 項目。
作為一款社區原生的洞態 Agent,Go Agent 在 洞態社區的發展史中具有史詩級的意義。
Go Agent 的前世今生
隨著云原生技術的蓬勃發展,在企業級項目中,Go 語言的使用也越來越多,在洞態開源之初,社區收到了大量的 Go Agent 需求,于是洞態團隊開展了一次社區用戶的調研,尋找有意向聯合開發 Go Agent 的企業,于是出現了一批優秀的企業用戶有意向參與聯合開發,共同打造國內的第一個安全開發社區,經過近2個月的聯合開發,Go Agent 已經具備了基本的檢測能力,為了持續回饋社區,我們將在洞態社區成立3個月紀念日(2022-01-01)正式開源 Go Agent,希望 Go Agent 可以為社區用戶帶來更多的便利和優質解決方案。
Go Agent 的檢測能力
支持框架:原生 net/http、gin 框架、julienschmidt/httprouter 框架
支持漏洞:原生 database/sql 導致的 SQL 注入、Gorm 框架導致的 SQL 注入
Go Agent 的檢測效果
本文以 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 規則,即可增加漏洞檢測能力,具體流程如下:
1. 找到需要補充的 HOOK 規則及其所在包和方法;
2. 在 core 文件夾中創建該包及其方法的 HOOK 點處理邏;
3. 在 HOOK 點采集所需的數據;
4. 在洞態 Server 端的自定義規則中,添加 HOOK 規則;
5. 觸發 API 請求,即可實現新增漏洞類型的檢測。
關于洞態 IAST
洞態 IAST 是全球首個開源 IAST,于2021年9月1日正式開源發布。洞態 IAST 專注于 DevSecOps,具備高檢出率、低誤報率、無臟數據的特點,幫助企業在應用上線前發現并解決安全風險。自開源發布以來,洞態 IAST 備受開源社區人員和企業的關注,包括去哪兒、知乎、同程旅行、輕松籌等在內的近二百家企業均已成為洞態用戶。






