【廣告】
請問有哪些代碼審計(jì)的工具產(chǎn)品?
國外商業(yè)工具:klocwork, fortify,Coverity, parasoft, TestBad, C Test, Checkmarx CxEnterprise,PolySpace,PClint(有些不是產(chǎn)品名稱,不過在業(yè)內(nèi)都這么叫)。
國外開源工具:findbugs, checkstyle,sonar,PMD...國內(nèi)商業(yè)工具:360代碼衛(wèi)士,這個(gè)大多數(shù)人還沒有聽過,不過它已經(jīng)是一款非常成熟的產(chǎn)品,實(shí)際的項(xiàng)目分析中完全不輸給國外的源代碼靜態(tài)分析工具。
金融行業(yè)用戶源代碼安全審計(jì)服務(wù)
案例背景
某銀行內(nèi)部軟件多數(shù)由外包公司開發(fā),存在開發(fā)人員水平參次不齊,安全意識薄弱,軟件安全方面投入不足等問題,以及該銀行相對單一的安全測試方法和管理人員缺乏對軟件安全等級的驗(yàn)證能力,因此在程序源碼層面依舊存在大量安全問題。
針對用戶需求,通過源代碼安全審計(jì)服務(wù),挖掘應(yīng)用系統(tǒng)隱蔽漏洞,并提出解決方案,以保證用戶系統(tǒng)安全。
服務(wù)流程
對用戶實(shí)施的源代碼安全審計(jì)服務(wù)流程分為準(zhǔn)備階段、熟悉階段、分析審核階段和總結(jié)報(bào)告階段。
?準(zhǔn)備階段
簽署保密協(xié)議、調(diào)研基本情況、熟悉代碼和搭建審計(jì)環(huán)境。
?熟悉階段
熟悉系統(tǒng)整體架構(gòu)和各個(gè)業(yè)務(wù)流程等。
?分析審核階段
工具輔助檢測、人工分析、靜態(tài)分析、動(dòng)態(tài)分析、綜合分析和人工驗(yàn)證。
?總結(jié)報(bào)告階段
發(fā)現(xiàn)并確認(rèn)風(fēng)險(xiǎn)后,對風(fēng)險(xiǎn)進(jìn)行分析和編寫代碼審計(jì)報(bào)告,包括漏洞名稱、漏洞級別、漏洞數(shù)量、問題文件、審計(jì)過程、風(fēng)險(xiǎn)分析和修復(fù)建議。
源代碼審計(jì)解決方案
服務(wù)描述
源代碼審計(jì)就是檢查源代碼中的安全缺陷,開展源代碼安全審計(jì)能夠降低源代碼出現(xiàn)的安全漏洞,構(gòu)建安全的代碼,提高源代碼的可靠性,提高應(yīng)用系統(tǒng)自身的安全防護(hù)能力。
◆ 服務(wù)流程
代碼審計(jì)服務(wù)針對系統(tǒng)開發(fā)過程中的編碼階段、測試階段、交付驗(yàn)收階段、對各階段系統(tǒng)源代碼進(jìn)行安全審計(jì)檢測,利用數(shù)據(jù)流分析引擎、語義分析引擎、控制流分析引擎等技術(shù),采用的源代碼安全審計(jì)工具對源代碼安全問題進(jìn)行分析和檢測并驗(yàn)證,從而對源代碼安全漏洞進(jìn)行定級,給出安全漏洞分析報(bào)告等,幫助軟件開發(fā)的管理人員統(tǒng)計(jì)和分析當(dāng)前階段軟件安全的威脅、趨勢,跟蹤和安全漏洞,提供軟件安全質(zhì)量方面的真實(shí)狀態(tài)信息。
◆ 服務(wù)價(jià)值
1.源代碼審計(jì)工作先于攻擊者發(fā)現(xiàn)應(yīng)用軟件、程序中的安全漏洞,有助于客戶及時(shí)做好代碼加固工作;
2.源代碼審計(jì)以代碼安全為關(guān)注視角,以發(fā)現(xiàn)程序安全漏洞為目標(biāo),可提升軟件開發(fā)人員的安全編程能力。
軟件開發(fā)所面臨的安全問題
1、代碼與架構(gòu)復(fù)雜
幾十萬、幾百萬行代碼、一個(gè)業(yè)務(wù)分幾十個(gè)模塊幾十個(gè)代碼倉庫家常便飯;開發(fā)語言多種多樣,各種自研框架、流行框架應(yīng)接不暇、架構(gòu)還非常復(fù)雜。
以上兩個(gè)問題對審計(jì)人員、SAST工具來說無疑都是很大的挑戰(zhàn)。
2、工具準(zhǔn)召率
沒有工具是所謂銀彈,規(guī)則、插件準(zhǔn)召率很低,需要根據(jù)開發(fā)語言、編碼風(fēng)格自定義;工具對邏輯漏洞的無力,與業(yè)務(wù)邏輯漏洞大量曝光的漏洞態(tài)勢之間的矛盾,工具、系統(tǒng)的運(yùn)營也需要專門人力投入,從而不斷提高工具的準(zhǔn)召率。
3、心態(tài)
審計(jì)人員出于KPI的考慮,想著既然花了很長時(shí)間做了代碼審計(jì),為了體現(xiàn)工作量就必須說點(diǎn)什么,如果系統(tǒng)本來沒有問題卻在那挑刺,會更加不信任你。對于甲方代碼審計(jì)人員,審計(jì)任務(wù)多、代碼龐大是常態(tài),如果不考慮后果的只提高速度,這種方式會遺漏掉細(xì)節(jié),導(dǎo)致不能的審查。