




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
項目十一代碼審計代碼審計概述常見代碼審計方法代碼審計具體案例代碼審計(Codeaudit)是對編程項目中源代碼的全面分析,旨在發現錯誤、安全漏洞或是否違反編程約定。它是防御性編程范例的一個組成部分,目的是在軟件發布之前減少錯?誤。
代碼審計概述
代碼審計概述
代碼審計是通過自動化工具或人工審查的方式,對程序源代碼逐條進行檢查和分析,以發現源代碼缺陷引發的安全漏洞,并提出代碼修訂措施和建?議。代碼審計對象包括對Windows和Linux系統環境下的以下語言進行審核:java、C、C#、ASP、PHP、JSP、.NET。審計內容包括以下方面
代碼審計概述
1、前后臺分離的運行架構;2、WEB服務的目錄權限分類3、認證會話與應用平臺的結合;4、數據庫的配置規范;5、SQL語句的編寫規范;6、WEB服務的權限配置;7、對抗爬蟲引擎的處理措施。審核軟件時,應對每個關鍵組件進行單獨審核,并與整個程序一起進行審核。首先搜索高風險漏洞并解決低風險漏洞。高風險和低風險之間的漏洞通常存在,具體取決于具體情況以及所使用的源代碼的使用方式。應用程序滲透測試,試圖通過在可能的訪問點上啟動盡可能多的已知攻擊技術來嘗試降低軟件中的漏洞,以試圖關閉應用程序。這是一種常見的審計方法,可用于查明是否存在任何特定漏洞,而不是源代碼中的漏洞
代碼審計概述
由于使用以下原因,可能存在一些常見的高風險漏洞:非邊界檢查函數(例如,strcpy,sprintf,vsprintf和sscanf)可能導致緩沖區溢出漏洞可能干擾后續邊界檢查的緩沖區的指針操作,例如:if((bytesread=net_read(buf,len))>0)buf+=bytesread;調用像execve(),執行管道,system()和類似的東西,尤其是在使用非靜態參數調用時輸入驗證,例如(在SQL中):statement:=“SELECT*FROMusersWHEREname='”+userName+“';”是一個SQL注入漏洞的示例。文件包含功能,例如(在PHP中):include($page。'。php');是遠程文件包含漏洞的示例。對于可能與惡意代碼鏈接的庫,返回對內部可變數據結構(記錄,數組)的引用。惡意代碼可能會嘗試修改結構或保留引用以觀察將來的更改。
代碼審計概述
以下是審計代碼時應該找到的低風險漏洞列表,但不會產生高風險情況:1、客戶端代碼漏洞不影響服務器端(例如,跨站點腳本);2、用戶名枚舉;3、目錄遍歷(在Web應用程序中)。
源代碼審計工具通常會查找常見漏洞,僅適用于特定的編程語言。這種自動化工具可用于節省時間,但不應依賴于深入審計。建議將這些工具作為基于政策的方法的一部分。如果設置為低閾值,則大多數軟件審計工具會檢測到許多漏洞,尤其是在以前未審核過代碼的情況下。但是,這些警報的實際重要性還取決于應用程序的使用方式。可能與惡意代碼鏈接的庫(并且必須對其免疫)具有非常嚴格的要求,例如克隆所有返回的數據結構,因為有意破壞系統的嘗試是預期的。只能暴露于惡意輸入(如Web服務器后端)的程序必須首先關心此輸入(緩沖區溢出,SQL注入等)。對于僅受保護基礎結構中的授權用戶內部使用的程序,可能永遠不會發生此類攻擊。
常見代碼審計方法1、代碼審計環境準備(1)本地測試環境:php+mysql環境。如:phpstudy,wamp等;(2)文檔編輯器:sublimetext2,UltraEdit,notepad++;(3)瀏覽器:Firefox。(4)Firefox?插件:FoxyProxy、Hackbar、ModifyHeaders、UseAgentSwitcher、Firebug。ConvertToUTF8;(5)其他工具:BurpSuite、XDebug、vMysqlMonitoring、Web?編碼轉換工?具。
常見代碼審計方法2、審計前的準備工作(1)獲取源碼:大多數PHP程序都是開源的、找到官網下載最新的源碼包即可。(2)安裝網站:在本地搭建網站,一邊審計一邊調試。實時跟蹤各種動態變化,把握大局(3)網站結構:瀏覽源碼文件夾,了解程序的大致目錄。(4)入口文件:index.php、admin.php文件一般是整個程序的入口,從中可以知道:程序的架構運行流程包含哪些配置文件包含哪些過濾文件和安全過濾文件了解程序的業務邏輯常見代碼審計方法(5)配置文件:一般類似config.php等文件,保存一些數據庫相關信息、程序的一些信息。先看數據庫編碼,如果是gbk可能存在寬字節注入。若變量的值用雙引號、則可能存在雙引號解析代碼執行的問題(6)過濾功能:通過詳讀公共函數文件和安全過濾文件等文件,清晰掌握:用戶輸入的數據,哪些被過濾,哪些無過濾如何過濾。在哪里被過濾了?如何過濾,過濾的方式是替換還是正則,有沒有GPC,有沒有使用addslasher()處理?能否繞過過濾的數據。(7)網站目錄結構:主目錄
模塊目錄
插件目錄
上傳目錄模板目錄
數據目錄
配置目錄
配置文件公共函數文件安全過濾文件數據庫結構入口文件常見代碼審計方法3、審計方法(1)通讀全文法通讀全文法是最麻煩也最全面的審計方法。企業對自身產品的審計通常采用此方法。可以通過這種方法把握大局,了解程序整體結構,再通過入口文件對各功能進行審?計。(2)敏感函數參數回溯法這種方法是根據敏感函數,逆向追蹤參數傳遞的過程。這是最高效、最常用的方法。大多數漏洞是函數使用不當導致的。只要找到這些函數,就可以快速發現漏?洞。這里推薦使用?Seay?源代碼審計系統,它主要利用正則算法匹配一些高危函數、關鍵函數及敏感關鍵?字。常見代碼審計方法一款神器——Seay源代碼審計系統,主要是利用正則匹配一些高危函數、關鍵函數以及敏感關鍵字。然后,我們就可以分析判斷敏感函數的上下文,追蹤參數源頭。嘗試控制可控的參數變量。(3)定向功能分析法定向功能分析法:根據程序的業務邏輯審計。首先是用瀏覽器逐個訪問瀏覽,看看這套程序有那些功能。根據相關功能,大概推測可能存在那些漏洞。常見功能漏洞:包括但不限于:
程序初始安裝
站點信息泄露
文件上傳
文件管理
登錄認證
數據庫備份恢復
找回密碼
驗證碼實際應用中,通常是一套組合拳,要靈活應用。一般先把握大局,考慮是否通讀全文,再根據定向功能法針對每一項功能進行審計;最后,敏感函數參數回溯。代碼審計具體案例1、任意文件刪除漏洞實例URL:/s/DxcnldeS8UDyEJvsf0s11Q2、EasySNS_V1.6遠程圖片本地化導致
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國可重復使用不銹鋼水瓶行業市場全景分析及前景機遇研判報告
- 2025年中國可放水壺的運動腰帶行業市場全景分析及前景機遇研判報告
- 2025年中國建筑工程質量檢測行業市場全景分析及前景機遇研判報告
- 2025年硫化染料項目可行性分析報告
- 中國休閑食品O2O市場發展現狀調研及投資趨勢前景分析報告
- 2021-2026年中國駕駛室及車身總成市場全面調研及行業投資潛力預測報告
- 換藥操作培訓課件
- 2025年 延津縣無線電技術學校招聘考試筆試試題附答案
- 2025年 棲霞市市級機關遴選考試筆試試題附答案
- 2025年 湖北中煙招聘考試筆試試題試題附答案
- 2025年高考全國二卷數學高考真題解析 含參考答案
- 2025年普通高等學校招生全國統一考試數學試題(全國一卷)(有解析)
- 2025年山西焦煤集團公司招聘筆試參考題庫含答案解析
- 【MOOC】生理學-中南大學 中國大學慕課MOOC答案
- 2024年浙江省中考數學試題及答案
- 天津市成人高等教育畢業生登記表
- 通信管道施工三級-安全技術交底記錄表
- 橋梁荷載試驗
- 綜合布線報價清單范本
- 礦山行業生產制造執行系統(MES)
- 中學教師專業標準(試行)
評論
0/150
提交評論