監測方式
本地和遠程:檢測可以是在本地運行一個監測端,也可以在網絡上的另一臺主機。如果是本地的話,監測端進程需要足夠的權限讀取被保護目錄或文件。監測端如果在遠端的話,WWW服務器需要開放一些服務并給監測端相應的權限,較常見的方式是直接利用服務器的開放的WWW服務,使用HTTP協議來監測被保護的文件和目錄。也可利用其它常用協議來檢測保護文件和目錄,如FTP等。采用本地方式檢測的優點是效率高,而遠程方式則具有平臺無關性,但會增加網絡流量等負擔。
定時和觸發:絕大部分保護軟件是使用的定時檢測的方式,不論在本地還是遠程檢測都是根據系統設定的時間定時檢測,還可將被保護的網頁分為不同等級,等級高的檢測時間間隔可以設得較短,以獲得較好的實時性,而將保護等級較低的網頁文件檢測時間間隔設得較長,以減輕系統的負擔。觸發方式則是利用操作系統提供的一些功能,在文件被創建、修改或刪除時得到通知,這種方法的優點是效率高,但無法實現遠程檢測。
比較方法
在判斷文件是否被修改時,往往采用被保護目錄和備份庫中的文件進行比較,比較最常見的方式全文比較。使用全文比較能直接、準確地判斷出該文件是否被修改。然而全文比較在文件較大較多時效率十分低下,一些保護軟件就采用文件的屬性如文件大小、創建修改時間等進行比較,這種方法雖然簡單高效,但也有嚴重的缺陷:可以通過精心構造,把替換文件的屬性設置得和原文件完全相同,。另一種方案就是比較文件的數字簽名,最常見的是MD5簽名算法,由于數字簽名的不可偽造性,數字簽名能確保文件的相同。
恢復方式
恢復方式與備份庫存放的位置直接相關。如果備份庫存放在本地的話,恢復進程必須有寫被保護目錄或文件的權限。如果在遠程則需要通過文件共享或FTP的方式來進行,那么需要文件共享或FTP的帳號,并且該帳號擁有對被保護目錄或文件的寫權限。
備份庫的安全
當黑客發現其更換的主頁很快被恢復時,往往會激發起進一步破壞的欲望,此時備份庫的安全尤為重要。網頁文件的安全就轉變為備份庫的安全。對備份庫的保護一種是通過文件隱藏來實現,讓黑客無法找到備份目錄。另一種方法是對備份庫進行數字簽名,如果黑客修改了備份庫的內容,保護軟件可以通過簽名發現,就可停止WWW服務或使用一個默認的頁面。
通過以上分析比較我們發現各種技術都有其優缺點,需要結合實際的網絡環境來選擇最適合的技術方案。
三、網站保護的缺陷
盡管網站保護軟件能進一步提高系統的安全,仍然存在一些缺陷。首先這些保護軟件都是針對靜態頁面而設計,而現在動態頁面占據的范圍越來越大,盡管本地監測方式可以檢測腳本文件,但對腳本文件使用的數據庫卻無能為力。
另外,有些攻擊并不是針對頁面文件進行的,前不久泛濫成災的"Red Code"就是使用修改IIS服務的一個動態庫來達到攻擊頁面的目的。另一個方面,網站保護軟件本身會增加WWW服務器的負載,在WWW服務器負載本身已經很重的情況下,一定好仔細規劃好使用方案。
四、結論
本文討論了網站常用的保護方法,詳細地分析比較了專用網站保護軟件采用的各種技術實現和優缺點,并指出了其缺陷。安全雖不是使用某個工具或某些工具就可以解決的,但使用這些工具能幫助提高安全性,減少安全風險。