內網應用安全以及服務器的安全一直是眾多中小企業網絡管理員所關心的話題,大多數企業服務器上都會運行企業網站,不管是ASP類站點還是PHP類站點,不管是Windows 2000 server還是windows 2003,也不管是基于MYSQL的數據庫還是access又或是SQL server數據庫,我們都可能遇到最為頭疼的利用數據庫及動態頁面語言漏洞而采取的注入攻擊。每當出現注入攻擊后我們都無法快速定位到底是哪個語句哪條指令出現了問題,注入是不可避免的但是如何才能夠做到在第一時間發現漏洞彌補漏洞呢?下面筆者就從個人實際應用出發為各位IT168安全頻道的讀者介紹如何在服務器上搭建一套防注入系統。
一 注入入侵采取的手段:
所謂注入入侵實際上就是通過動態頁面編程語言對數據庫的操作來實現入侵的目的,大多數入侵是建立在動態頁面編程語言不完善而在對數據庫執行查詢,寫入,讀取等操作時存在問題的基礎上產生的。要知道通過查詢數據庫返回的錯誤信息可以分析出目的站點對應數據庫中表的具體信息來,通過窮舉法完成數據庫,數據表以及字段等信息的暴力破解。
二 防注入系統建立思路:
不管怎樣注入入侵都必須建立在對數據庫執行查詢等操作的基礎上完成的,所以我們可以通過分析和記錄數據庫操作來完成對注入入侵的監控,從而知道到底是什么時候什么操作造成的漏洞。
防注入系統正是基于上述思路完成的,我們通過建立一套監控系統針對服務器上站點各個頁面的訪問,特別是修改操作進行記錄;再針對數據庫關鍵數據表關鍵字段的讀取和訪問進行記錄,從而快速定位出問題的頁面(被訪問和修改的頁面)和被攻擊的時間(數據庫字段讀取訪問時間),從而最大限度的防范注入攻擊的入侵,而另一方面也大大減少了被攻擊站點存活的時間,在第一時間恢復原有系統。
三 用防注入系統統籌管理服務器群:
筆者使用的防注入系統正是通過上述思路建立起來的,通過一臺專門的WEBGUARD服務器對企業所有服務器進行監控,建立時由于這臺服務器只負責防注入以及監控,所以一定要把這臺WEBGUARD服務器放置到企業內網中,不要裸露在外網,從而避免該服務器被惡意攻擊。
通過WEBGUARD服務器上的監控系統實現對多臺服務器上網頁文件,數據庫程序的讀寫與查詢進行監控和記錄,從而對入侵者的攻擊一目了然。再針對漏洞進行相應的彌補操作即可。
在系統應用時我們可以根據服務器的安全級別選擇不同的監控方式,每個站點可以分別設置安全級別,并且結合網站監測時間間隔達到“準實時”監控的目的,同時可以指定上載文件時的用戶名和密碼。另外我們還要指定要監測的文件類型,例如ASP,PHP,DB等格式的文件都在被監控范圍內,當然為了保證服務器上站點的快速恢復,我們可以指定不同站點的頁面備份路徑以及自動備份的周期,這樣可以實現出問題后的自動快速恢復。
由于這里涉及到相關產品的使用,所以不適合在這里放過多的文字內容,感興趣的讀者可以自行搜索相關產品和相關防注入系統資料。
四,總結:
本文主要是從防注入系統的建立角度來討論如何有效的保護服務器上網站和數據庫的安全,通過建立一套防注入監控體系來保證頁面文件和數據庫文件的安全,確保我們企業網絡和注入漏洞,向注入攻擊說再見。
更多信息請查看IT技術專欄