預(yù)防web應(yīng)用程序漏洞方法

預(yù)防web應(yīng)用程序漏洞方法

ID:19718259

大?。?6.50 KB

頁數(shù):11頁

時間:2018-10-05

預(yù)防web應(yīng)用程序漏洞方法_第1頁
預(yù)防web應(yīng)用程序漏洞方法_第2頁
預(yù)防web應(yīng)用程序漏洞方法_第3頁
預(yù)防web應(yīng)用程序漏洞方法_第4頁
預(yù)防web應(yīng)用程序漏洞方法_第5頁
資源描述:

《預(yù)防web應(yīng)用程序漏洞方法》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、預(yù)防Web應(yīng)用程序的漏洞方法如今的Web應(yīng)用程序可能會包含危險的安全缺陷。這些應(yīng)用程序的全球化部署使其很容易遭受攻擊,這些攻擊會發(fā)現(xiàn)并惡意探測各種安全漏洞?! eb環(huán)境中兩個主要的風(fēng)險在于:注入——也就是SQL注入,它會讓黑客更改發(fā)往數(shù)據(jù)庫的查詢——以及跨站腳本攻擊(XSS),它們也是最危險的(Category:OWASP_Top_Ten_Project)。注入攻擊會利用有問題代碼的應(yīng)用程序來插入和執(zhí)行黑客指定的命令,從而能夠訪問關(guān)鍵的數(shù)據(jù)和資源。當應(yīng)用程序?qū)⒂脩籼峁┑臄?shù)據(jù)不加檢驗或編碼就發(fā)送到瀏覽器上時,會產(chǎn)生XS

2、S漏洞。  盡管2009年OWASP(OpenWebApplicationSecurityProject)的一個報告表明安全方面的投資在增加(Category:OWASP_Security_Spending_Benchmarks),但是NTAMonitor的2010Web應(yīng)用安全報名表明Web的安全性跟前一年相比實際在下降。實際上,Web應(yīng)用的漏洞給公司和組織帶來了很多的問題。按照WhiteHatSecurity最新的Web站點安全性數(shù)據(jù)報告所示,被評估網(wǎng)站的63%是有漏洞的,每個平均有六個未解決的缺陷。(WhiteH

3、atWebsiteSecurityStatisticsReport)。這些漏洞創(chuàng)建并維持了一個基于攻擊竊取數(shù)據(jù)和資源的地下經(jīng)濟鏈?! eb應(yīng)用程序需要有深度防御的措施來避免和減少安全性漏洞。1這種方式假設(shè)所有的安全預(yù)防措施都可能失敗,所以安全性依賴于多層的機制從而能夠覆蓋其他層的失敗。為了減少成功攻擊的可能性,軟件工程師團隊必須做出必要的努力來引入適當?shù)陌踩苑雷o措施。要達到這一點必須使用各種技術(shù)和工具來確保安全性涵蓋軟件產(chǎn)品開發(fā)生命周期的所有階段。  軟件開發(fā)生命周期中的安全性  盡管軟件開發(fā)的生命周期有多種不同的

4、劃分方式,但正如圖1所示,它通常包含如下的階段:初始化、規(guī)范和設(shè)計、實現(xiàn)(編碼)、測試、部署以及停用,這些階段應(yīng)用開發(fā)人員可以不斷地重復(fù)迭代。2  盡管開發(fā)人員應(yīng)該在產(chǎn)品的整個生命周期中都關(guān)心代碼安全性,3但是他們應(yīng)該特別關(guān)注三個關(guān)鍵階段:1實現(xiàn)。在編碼過程中,軟件開發(fā)人員必須使用特定應(yīng)用領(lǐng)域內(nèi)避免關(guān)鍵漏洞的最佳實踐。這種實踐的例子包括輸入和輸出校驗、識別惡意字符以及使用參數(shù)化的命令。4盡管這些技術(shù)在避免大多數(shù)安全漏洞方面很有效,但因為缺乏安全相關(guān)的知識,開發(fā)人員通常并不使用它們或者使用得不正確。邊欄“為什么開發(fā)人員不

5、使用安全編碼實踐?”更詳細地討論了這個問題。測試。有很多技術(shù)可以在測試階段使用,包括滲透測試(目前最流行的技術(shù))、靜態(tài)分析、動態(tài)分析以及運行時的異常檢測。4問題在于開發(fā)人員通常會關(guān)注需求功能的測試而忽略安全方面。另外,現(xiàn)有的自動化工具要么在漏洞探測覆蓋度方面比較差要么產(chǎn)生太多的誤報。部署。在運行時環(huán)境中,會有不同的攻擊探測機制。這些機制可以按照不同的級別運行并使用不同的探測方式。它們的使用障礙在于性能開銷以及不準確的結(jié)果會打亂系統(tǒng)的正常行為?! ¢_發(fā)安全的代碼  為了編寫沒有漏洞的安全代碼,4基于Web基礎(chǔ)設(shè)施的關(guān)鍵業(yè)

6、務(wù)開發(fā)人員就要遵循編碼實踐,這個實踐包括了深度防御的措施,它假設(shè)所有的安全性預(yù)防措施都會失敗。在實現(xiàn)階段依賴多層的安全機制是特別重要的,使用一個預(yù)防或保護措施來避免安全漏洞是不夠的?! eb應(yīng)用程序的特征在于需要三層不同的安全防線:輸入校驗、熱點保護以及輸出校驗?! ≥斎胄r灐 〈蠖鄶?shù)的安全漏洞是因為目標應(yīng)用程序沒有正確地校驗輸入數(shù)據(jù)。1所以,應(yīng)用程序要考慮到所有惡意的輸入直到能證明其合法,這要涵蓋不可信環(huán)境中的所有數(shù)據(jù)?! ≥斎胄r炇堑谝坏婪谰€,總體來講就是縮小應(yīng)用程序允許輸入的范圍,它會直接作用在用戶提供的數(shù)據(jù)上

7、。這種類型的防御要依賴輸入?yún)?shù)在一個合法的范圍內(nèi),或者如果用戶提供了超出了范圍的值就會停止執(zhí)行。在Web應(yīng)用程序中,這首先要標準化輸入將其轉(zhuǎn)換到基線字符集和編碼。接下來,應(yīng)用程序必須對標準化的輸入使用過濾策略,拒絕那些值在合法范圍之外的輸入。這種方式能夠避免很多Web應(yīng)用程序中的問題,在執(zhí)行輸入校驗時會使用正向模式匹配或正向校驗。在這種情況下,開發(fā)人員建立規(guī)則來識別那些可接受的輸入而不是識別有什么輸入是不可接受的。盡管開發(fā)人員不能預(yù)測所有類型的攻擊,但他們應(yīng)該能夠說明所有類型的合法輸入?! £P(guān)鍵問題在于,輸入校驗通常使

8、用地并不充分,這是因為輸入?yún)?shù)的數(shù)據(jù)域允許存在惡意數(shù)據(jù),這是與校驗執(zhí)行相獨立的。例如,在SQL注入漏洞中,大多數(shù)的SQL語句使用引號作為字符串分隔符,這就意味著黑客可以使用它來執(zhí)行SQL注入攻擊。4但是,在有些情況下,字符串輸入域必須允許存在引號值,所以應(yīng)用程序不能排除所有包含引號的值?! 狳c防護  為了應(yīng)對輸入校驗的局限性,有

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。