如何應對WEB攻擊的防護盲點(2) |
發布時間: 2012/9/15 19:34:35 |
靜態防護SQL注入 SQL注入的防護一直是焦點話題,從編程角度看最有效的防護是對用戶輸入的變量通過參數來傳遞,而不是直接嵌入到SQL語句,但缺陷: 1.不是所有的數據庫和編程語言都有相應的參數化功能; 2.編寫時面對眾多的輸入模塊,難免會有疏漏; 3.難以批量化和統一部署。 還有一些方法就是把參數進行分類,比如用戶遞交的參數值統一轉換成純數字或純字符串類型、加密用戶輸入、限制輸入長度等,但和以上方法的缺陷一樣。 比如這段代碼是直接把用戶輸入放置數據庫的SQL語句中進行執行,如果不對member_login變量進行過濾和判斷是可以注入攻擊的:
如果一一檢查和修復需要花費大量的精力,而很多網站上線運營之后需要提高安全性的普遍舉措是采用一些編寫好的通用性的函數,原理是對輸入進行判斷和過濾,它在一定程度上能緩解攻擊行為,并且花費成本相對不大,我們先看一段編寫的防護函數:
以上代碼首先需要定義相對完整的過濾字符集,然后分別處理用GET和POST方式提交的數據報文,在需要防護的頁面里調用包括它既可[an error occurred while processing this directive] 但是編寫統一的防止注入函數有缺陷: 1.需要考慮不同語言的不同語法,不能統一,比如ASP、PHP、Java; 2.要充分考慮每一個可能用戶輸入的地方,但往往會有疏漏; 3.虛擬機往往有大量站點,而管理者是單個站點的屬主,系統管理員沒權利也沒能力統一定制防護措施; 4.如果是IDC或者大型企業的機房,會有更大量不同類型的WEB應用服務器,要實現批量防護則更困難; 5.消耗服務器運算資源和網絡帶寬,因為大批量的網絡連接和提交數據都需要經過函數來處理; 6.過濾不嚴謹則容易被攻擊者繞過。 最后一點其實很關鍵,不僅僅是過濾不嚴謹,而且攻擊者對于輸入可變化大小寫,拼接攻擊語句,甚至構造字符的不同編碼方式,比如字符 < 可被編碼為 <、<、< 或 %3c,而編碼方式又是如此之多,Unicode、十六進制、ASIIC、UTF-8等,所以用防護函數方式是非常困難的。 通過上面描述,我們知道了從編程方式來防御攻擊具有它的局限性,簡單概括:會有疏漏、消耗性能、難以統一、運算復雜等。 而這時WAF的優點就體現出來了,綠盟科技WAF內置了50多條精心配制的規則,用于防護SQL注入,有人可能會疑問這么少的規則能有效防御嗎?要知道雖然SQL注入的語句千變萬化,但規則只需要找出共同點進行匹配即可,并且可在此基礎上自定義規則。規則制定后可用于WAF后需要保護的不同類型的多臺WEB服務器,類型一致的可使用同一規則,對于大型WEB群來說這具有無可比擬的優越性。它的優點如下: 1.統一定制的規則能批量適用于不同類型的網站; 2.花費時間和精力最少,無論是應用或編輯規則都方便,不用每臺WEB服務器去部署; 3.即使網站存在漏洞,也能在前端把攻擊流量給予清洗和阻斷; 4.網站無需處理錯誤的探測,避免把錯誤處理方式和信息暴露給攻擊者,同時也節省了服務器的處理資源。 本文出自:億恩科技【www.endtimedelusion.com】 |
以上代碼首先需要定義相對完整的過濾字符集,然后分別處理用GET和POST方式提交的數據報文,在需要防護的頁面里調用包括它既可[an error occurred while processing this directive]
但是編寫統一的防止注入函數有缺陷:
1.需要考慮不同語言的不同語法,不能統一,比如ASP、PHP、Java;
2.要充分考慮每一個可能用戶輸入的地方,但往往會有疏漏;
3.虛擬機往往有大量站點,而管理者是單個站點的屬主,系統管理員沒權利也沒能力統一定制防護措施;
4.如果是IDC或者大型企業的機房,會有更大量不同類型的WEB應用服務器,要實現批量防護則更困難;
5.消耗服務器運算資源和網絡帶寬,因為大批量的網絡連接和提交數據都需要經過函數來處理;
6.過濾不嚴謹則容易被攻擊者繞過。
最后一點其實很關鍵,不僅僅是過濾不嚴謹,而且攻擊者對于輸入可變化大小寫,拼接攻擊語句,甚至構造字符的不同編碼方式,比如字符 < 可被編碼為 <、<、< 或 %3c,而編碼方式又是如此之多,Unicode、十六進制、ASIIC、UTF-8等,所以用防護函數方式是非常困難的。
通過上面描述,我們知道了從編程方式來防御攻擊具有它的局限性,簡單概括:會有疏漏、消耗性能、難以統一、運算復雜等。
而這時WAF的優點就體現出來了,綠盟科技WAF內置了50多條精心配制的規則,用于防護SQL注入,有人可能會疑問這么少的規則能有效防御嗎?要知道雖然SQL注入的語句千變萬化,但規則只需要找出共同點進行匹配即可,并且可在此基礎上自定義規則。規則制定后可用于WAF后需要保護的不同類型的多臺WEB服務器,類型一致的可使用同一規則,對于大型WEB群來說這具有無可比擬的優越性。它的優點如下:
1.統一定制的規則能批量適用于不同類型的網站;
2.花費時間和精力最少,無論是應用或編輯規則都方便,不用每臺WEB服務器去部署;
3.即使網站存在漏洞,也能在前端把攻擊流量給予清洗和阻斷;
4.網站無需處理錯誤的探測,避免把錯誤處理方式和信息暴露給攻擊者,同時也節省了服務器的處理資源。
如果有需要服務器的租用與托管的敬請聯系QQ:1501281758(億恩星辰) 聯系電話:0371—63322220
服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]