您好,歡迎來到易龍商務網!
發布時間:2021-10-27 08:26  
【廣告】






代碼審計有哪些高風險漏洞?
代碼審計過程中一些常見的高風險漏洞:
1、非邊界檢查函數(例如,strcpy,sprintf,vsprintf和sscanf)可能導致緩沖區溢出漏洞
2、可能干擾后續邊界檢查的緩沖區的指針操作,例如:if((bytesread = net_read(buf,len))> 0)buf = bytesread;
3、調用像execve(),執行管道,system()和類似的東西,尤其是在使用非靜態參數調用時
4、輸入驗證,例如(在SQL中):statement:=“SELECt * FROM users WHERe name ='” userName “';”是一個SQL注入漏洞的示例
5、文件包含功能,例如(在PHP中):include($ page。'。php');是遠程文件包含漏洞的示例
6、對于可能與惡意代碼鏈接的庫,返回對內部可變數據結構(記錄,數組)的引用。惡意代碼可能會嘗試修改結構或保留引用以觀察將來的更改。
商業化源代碼審計工具對比
近年來,大部分安全問題來自于應用層安全,應用層的安全問題主要由軟件源代碼中的安全缺陷所導致。有關源代碼安全的研究越來越多,源代碼安全成為了解決信息安全問題的一個重要方向,也是信息安全中的一個新興領域。
在開發階段引入代碼檢測解決安全問題的思路開始被很多企業所認可。源代碼檢測屬于程序分析領域,需要具有相關領域的技術儲備,很多傳統的安全廠商都沒有相關的商業化技術產品。網上有很多開源的審計工具,但檢測能力、檢測精度較差,本文結合多年對源代碼檢測產品的了解,介紹三款較為成熟的商業化源代碼檢測產品。
Fortify Software公司是一家總部位于美國硅谷,致力于提供應用軟件安全開發工具和管理方案的廠商。Fortify為應用軟件開發組織、安全審計人員和應用安全管理人員提供工具并確立佳的應用軟件安全實踐和策略,幫助他們在軟件開發生命周期中花少的時間和成本去識別和修復軟件源代碼中的安全隱患。
Checkmarx 是以色列的一家高科技軟件公司。它的產品CheckmarxCxSuite專門設計為識別、跟蹤和修復軟件源代碼上的技術和邏輯方面的安全風險。了以查詢語言定位代碼安全問題,其采用的詞匯分析技術和CxQL查詢技術來掃描和分析源代碼中的安全漏洞和弱點。
360代碼衛士是360企業安全集團基于多年源代碼安全實踐經驗推出的新一代源代碼安全檢測解決方案,包括源代碼缺陷檢測、合規檢測、溯源檢測三大檢測功能,同時360代碼衛士還可實現軟件安全開發生命周期管理,與企業已有代碼版本管理系統、缺陷管理系統、構建工具等無縫對接,將源代碼檢測融入企業開發流程,實現軟件源代碼安全目標管理、自動化檢測、差距分析、Bug修復等功能,幫助企業以小代價建立代碼安全保障體系并落地實施,構筑信息系統的“內建安全”。
白盒代碼審計系統建設實踐
靜態代碼分析是指在不實際執行程序的情況下,對代碼語義和行為進行分析,由此找出程序中由于錯誤的編碼導致異常的程序語義或未定義的行為。通俗的說,靜態代碼分析就是在代碼編寫的同時就能找出代碼的編碼錯誤。你不需要等待所有代碼編寫完畢,也不需要構建運行環境,編寫測試用例。它能在軟件開發流程早期就發現代碼中的各種問題,從而提高開發效率和軟件質量。
靜態AST(SAST)技術通常在編程和/或測試軟件生命周期(SLC)階段分析應用程序的源代碼,字節代碼或二進制代碼以查找安全漏洞。
商業產品分析Coverity、Fortify、CheckMarx 作為白盒靜態掃描領域的產品,擁有極其深厚的技術積累以及的產品技術團隊。其產品能力都為業界。筆者曾經和Coverity的售前及售后團隊有過一定的交流,可以總結以上商業產品的優點及缺點優點深厚的技術積累,產品能力強大,在SAST領域內少有不支持掃描的漏洞類型
售后團隊,能較為理解用戶需求缺點定制化需求支持困難,引擎對用戶不透明,需求提交給廠商響應時長為 Month
規則學習成本高,規則學習文檔不完善,自定義規則困難
廠商以大并發量授權license,彈性擴容能力差,存在成本浪費
漏洞模型難以適配每個用戶自己內部的漏洞模型,難以準確處理誤報、漏洞修復復查等業務需求
融入企業自身的CI/CD流程困難,數據模型需要企業自己轉換
開發源代碼審計服務內容有哪些?
對用戶現有系統做源代碼安全審計,服務內容主要分為工具自動審計、系統架構分析、接口安全、敏感信息查詢、重要信息修改、輸入合法性校驗、數據傳輸加密、常見安全漏洞審計和合規控制等,覆蓋挖掘源代碼安全漏洞,合規控制;協助修復漏洞,指導安全編碼;定期匯總源代碼安全漏洞,進行針對性安全培訓;制定安全編程規范,推動安全開發等方面。
服務范圍包括使用ASP、ASP.NET(VB/C#)、JSP(JAVA)、PHP、Python、node.js等主流語言開發的B/S應用系統、使用C 、JAVA、C#、VB、Lua等主流語言開發的C/S應用系統,以及使用XML語言編寫的文件等。
1、全程化服務,有效保證服務質量
幫助用戶發現審計目標的安全問題,并提供的建議和指導,做到問題發現、修補、驗證的全程跟蹤。每一次服務都會在前一次的基礎上尋找新的突破口,大程度地保證審計目標的安全性。
2、化服務,解決方案行之有效
實施人員在源代碼安全審計、安全開發、安全加固等領域均有豐富的經驗,能夠為用戶提供切實有效的解決方案和化服務,幫助用戶解決重點、難點問題。
3、降低成本,節省投資
審計過程中,輔助運用自動化的靜態代碼審計工具,以有效節省代碼審計的人力成本,提高審計工作效率,為用戶降低資金投入。