最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

代碼審計系統(tǒng) Swallow 開發(fā)回顧

2023-04-03 14:17 作者:蜻蜓安全  | 我要投稿

做甲方安全建設(shè),SDL是一個離不開的話題,其中就包含代碼審計工作,我從最開始使用編輯器自帶的查找,到使用fortify工具,再到后來又覺得fortify的掃描太慢影響審計效率,再后來就想著把fortify集成到自己的業(yè)務(wù)系統(tǒng)中去

最近幾年安全行業(yè)發(fā)展的很快,以前少見的組件安全產(chǎn)品也多了起來,可以自定義掃描規(guī)則的semgrep,還有GitHub的以及codeQL產(chǎn)品,工具越來越多,如果還是之前的單個工具打開模式效率也不會太高.所以想著干脆做一個代碼聚合的審計系統(tǒng)

項目地址:?https://github.com/StarCrossPortal/swallow

整體開發(fā)思路

當(dāng)我需要審計某一個項目的時候只需要將代碼地址存放進(jìn)去,然后這個系統(tǒng)就會自動下載代碼,并調(diào)用各種代碼審計工具進(jìn)行掃描,并將結(jié)果存儲到系統(tǒng)中去.

這里包含了部分內(nèi)容,第一部分是底層代碼掃描的實現(xiàn),數(shù)據(jù)庫的設(shè)計,上層UI的展示

底層實現(xiàn)

swallow在開發(fā)之前我給他的定義是一個效率系統(tǒng),因此他只是調(diào)用其他工具的結(jié)果,然后進(jìn)行聚合展示.那么我就需要考慮用那些工具了.

這里我有四點需求,分別是污點跟蹤,安全規(guī)則檢索,組件依賴漏洞,WebShell檢測

污點跟蹤

首先說下污點跟蹤,他需要了解我的程序參數(shù)接收位置,然后參數(shù)在什么地方執(zhí)行,滿足需求的這種產(chǎn)品并不多,知名的有fortify,checkmax,這里我選擇了調(diào)用fortify代碼審計系統(tǒng).


規(guī)則檢索

一些結(jié)合業(yè)務(wù)方面的漏洞,可能需要編寫對應(yīng)檢查規(guī)則,因此需要選擇一個比較容易自定義規(guī)則的代碼掃描器,有兩種選擇 semgrep和CodeQL,個人認(rèn)為semgrep更加簡單易用,因此選擇了它


組件漏洞

組件漏洞主要是解決了項目A依賴了項目B,項目B產(chǎn)生了漏洞的情況,現(xiàn)在市面上挺多這種工具,我選擇了墨菲.

WebShell

webshell 掃描主要是解決大量代碼文件里可能存在木馬的情況,用的是河馬的webshell檢測工具

有了這四大工具,我基本就可以對代碼進(jìn)行比較全面的檢測了,但是數(shù)據(jù)的整體交互邏輯,以及數(shù)據(jù)格式我還需要梳理,為了簡化這個過程,我直接使用了蜻蜓平臺的編排系統(tǒng),這樣我基本不用寫太多數(shù)據(jù)交互代碼了,直接可視化拖拽,然后關(guān)注每個節(jié)點的情況即可.

數(shù)據(jù)可以直接使用蜻蜓安全工作臺中的數(shù)據(jù)庫組件,滿足了數(shù)據(jù)的增刪改查

數(shù)據(jù)庫設(shè)計

數(shù)據(jù)庫設(shè)計我采用了最省事的辦法,首先我需要有一個表存放Git的倉庫地址,因此新建了一張git_add表,另外系統(tǒng)還需要一些配置,因此新建了一張project_conf表格,如下圖所示

現(xiàn)在需要考慮用到四個工具結(jié)果數(shù)據(jù)存放問題,因此我最開始新建了4張數(shù)據(jù)表,但后來發(fā)現(xiàn)5張表更加合適,如下圖所示

因為墨菲代碼掃描方面,他的結(jié)果稍微需要區(qū)別一下,他的結(jié)構(gòu)是一個二維數(shù)組,這樣不利于數(shù)據(jù)庫檢索,因此我將墨菲的表結(jié)構(gòu)一分為二,因此有兩個表結(jié)構(gòu)

前端UI

前端UI本想采用element的UI框架,但這個項目只有我一個人開發(fā),而且項目本身也比較簡單,直接套模板更加省事.

所以使用了bootstrap5 結(jié)合thinkPHP6 開發(fā)出來

效果圖如下所示

添加倉庫

安裝過程我就不講了,直接記錄如何使用,以及效果吧.

首先需要在倉庫列表,找到添加按鈕,將Git倉庫地址放進(jìn)去,然后會自動添加到列表中

如上圖所示,可以一次性添加多個倉庫,每行一個倉庫地址就行了

查看依賴漏洞

查看WebShell

查看依賴組件

作者: 湯青松

日期: 2023-04-03


代碼審計系統(tǒng) Swallow 開發(fā)回顧的評論 (共 條)

分享到微博請遵守國家法律
荣成市| 晴隆县| 怀远县| 金阳县| 湖州市| 民勤县| 娱乐| 宁陕县| 平利县| 绥芬河市| 遂川县| 遂溪县| 加查县| 潼关县| 泽州县| 中江县| 汉沽区| 红桥区| 乌海市| 明水县| 磐石市| 保亭| 台南市| 天气| 苏尼特左旗| 讷河市| 旬阳县| 孟州市| 庆元县| 修水县| 天全县| 连州市| 芜湖市| 大埔区| 新余市| 宁都县| 社旗县| 如东县| 黄龙县| 大厂| 马公市|