很多用戶認為,在網絡中不斷部署防火墻、入侵檢測系統(IDS)、人侵防御系統(IPS)等設備,可以提高網絡的安全性。但是為何基于應用的攻擊事件仍然不斷發生?其根本的原因在于傳統的網絡安全設備對于應用層的攻擊防范,作用十分有限。目前大多防火墻都是工作在網絡層,通過對網絡層的數據過濾(基于TCP/IP報文頭部的ACL)實現訪問控制的功能;通過狀態防火墻保證內部網絡不會被外部網絡非法接人。所有的處理都是在網絡層,而應用層攻擊的特征在網絡層次上是無法檢測出來的。IDS、IPS通過使用深包檢測的技術檢查網絡數據中的應用層流量,與攻擊特征庫進行匹配,從而識別出已知的網絡攻擊,達到對應用層攻擊的防護。但是對于未知攻擊和將來才會出現的攻擊,以及通過靈活編碼和報文分割來實現的應用層攻擊,DS和IPS不能有效防護。
常見的Web攻擊分為兩類:一是利用Web服務器的漏洞進行攻擊,如CGI緩沖區溢出,目錄遍歷漏洞利用等攻擊;二是利用網頁自身的安全漏洞進行攻擊,如SQL注人,跨站腳本攻擊等。
常見的針對Web應用的攻擊有:
堆棧中的惡意指令。緩沖區溢出一攻擊者 利用超出緩沖區大小的請求和構造的二進制代碼讓服務器執行謚出Cookie假冒一精心修改Cookie數據進行用戶假冒。認證逃避一攻擊者利用 不安全的證書和身份管理。
強制訪問一訪問 未授權的網頁。非法輸人一在動態網頁的輸人中使用各種非法數據, 獲取服務器鍬感數據。
隱藏變量幕改一一對網頁中的隱藏變量進行修改,欺騙服務器程序拒絕服務攻擊一構造大量的非法請求,使Web服務器不能響應正常用戶的訪問。
跨站腳本攻擊一提交非法腳本, 其他用戶瀏覽時盜取用戶賬號等信息。SQL注人一構造 SQL代碼讓服務器執行,獲取敏感數據。下面列舉簡單的兩個攻擊手段進行說明。SQL注入:
對于和后臺數據庫產生交互的網頁,如果沒有對用戶輸人數據的合法性進行全面的判斷,就會使應用程序存在安全隱患。用戶可以在提交正常數據的URL或者表單輸人框中提交-段精心構造的數據庫查詢代碼,使后臺應用執行攻擊者的SQL代碼,攻擊者根據程序返回的結果,獲得某些他想知道的敏感數據,如管理員密碼,保密商業資料等。
跨站腳本攻擊:
由于網頁可以包含由服務器生成的、并且由客戶機瀏覽器解釋的文本和HTML標記。如果不可信的內容被引人到動態頁面中,則無論是網站還是客戶機都沒有足夠的信息識別這種情況并采取保護措施。攻擊者如果知道某一網站 上的應用程序接收跨站點腳 本的提交,他就可以在網上上提交能夠完成攻擊的腳本,如JavaScript. VBScript、 ActiveX、HTML或Flash等內容,普通用戶一旦點擊了網頁上這些攻擊者提交的腳本,那么就會在用戶客戶機上執行,完成從截獲賬戶、更改用戶設置、竊取和篡改Cookie到虛假廣告在內的種種攻擊行為。
隨著攻擊網站制作應用層發展,傳統網絡安全設備不能有效解決目前的安全威脅,網絡中的應用部署面臨的安全問題必須通過一一種全新設計的安全防火墻-一應用防火墻來解決。應用防火墻通過執行應用會話內部的請求來處理應用層。應用防火墻專門保護Web應用通信流和所有相關的應用資源免受利用Web協議發動的攻擊。應用防火墻可以阻止將應用行為用于惡意目的的瀏覽器和HTTP攻擊。這些攻擊包括利用特殊字符或通配符修改數據的數據攻擊,設法得到命令串或邏輯語句的邏輯內容攻擊,以及以賬戶、文件或主機為主要目標的目標攻擊。
本文地址:http://knowyourextract.com//article/3786.html