如筆者企業,把OA系統、郵箱系統的入口都捆綁在WEB伺服器上。故WEB伺服器安全是筆者眾多工作中的重中之重。
為了提高WEB伺服器的安全性,有眾多的方法。在這裡,筆者要向大家推薦的主要是三種方法。如果只想通過這三種方法來保障WEB伺服器的安全當然是遠遠不夠的。但是,若公司資訊化管理員若疏忽了這三個方面的內容,則WEB伺服器的安全性是很難保障的。
利器一:為WEB應用建立獨立的伺服器。
由於WEB伺服器可能遭受到的攻擊,比ERP系統、辦公自動化系統等應用伺服器的幾率高的多。所以,若把這些應用放在WEB應用同一個伺服器中,則弱WEB伺服器遭受到攻擊,則很有可能殃及到ERP等關鍵應用。
筆者企業中雖然把OA系統的介面綁定在WEB伺服器上,但是,OA系統與WEB應用仍然在不同的應用伺服器上。這主要是為了方便員工從企業外部存取 OA系統。如此的好處,就是當WEB服務遭受到攻擊不能使用時,最多員工無法從企業外部存取OA系統;而不影響企業內部員工的正常訪問。
不過,筆者以前就犯過類似的錯誤。那時,企業由於資金緊張,就把WEB伺服器與ERP系統伺服器部署在同一個伺服器上。突然有一天企業的WEB伺服器遭受到了不明身份的人的攻擊。他們可能只是出於好玩吧,沒有對WEB伺服器產生多大的危害。只是CPU與記憶體的使用率居高不下。當把WEB伺服器跟外網斷開好,就恢複正常了。但是,這就使得同一個伺服器上的ERP應用無法運作。企業員工每次輸入一張銷售訂單,從原來的3分鐘變為現在的30分鐘。這麼慢的速度顯然很難讓人接受。從這個事件中,讓筆者懂得了一個真理,把企業內部應用放在WEB伺服器上是一個非常不明智的做法。由於WEB伺服器其面向的是互連網,所以,其很容易遭受到別人的惡意攻擊。殃及池魚,受到攻擊後,連企業內部的應用服務都會受到牽連。
所以,筆者第一個要提醒大家的就是,在部署伺服器的時候,做好讓WEB等面向互連網的應用服務跟其他面向內部的應用服務在不同的伺服器上部署。這在保障WEB伺服器安全的同時,也提高了企業其他應用服務的安全性。
利器二:交易記錄,讓你對WEB健全狀態了如指掌。
其實,WEB伺服器只要採取一定的保護措施,則攻擊就需要一個過程,不是說在一個短時間內就可以完成的。通常情況下,這個攻擊的過程往往會在WEB 伺服器的交易記錄中留下蛛絲馬跡。如非法攻擊者視圖通過密碼字典破解工具,嘗試網站管理員的口令與密碼的時候,就會在WEB伺服器的日誌中留下紀錄。如果我們在事務審核中,設定當使用者密碼最多輸入錯誤次數的話,則當超過這個最大次數的時候,伺服器就會在自己的日誌中紀錄這條資訊。此時,若網站管理員可以看到這條資訊,則他們就可以及時的採取措施,如更改複雜密碼等手段,來提高伺服器的安全性。
所以,每一個WEB伺服器的管理員都必須要重視交易記錄的重要性。同時,為了讓交易記錄發揮更大的作用,往往需要啟用審核功能。通過審核事件跟系統日誌結合起來,可以讓Log Service器紀錄一些常見的攻擊行為。從而給企業安全人員提供參考。否則的話,企業安全人員都不知道那裡受到攻擊了,那麼他們也就根本無法進行及時的應對。
不過話說話來,有些高手攻擊企業WEB服務後,不會再交易記錄上留下任何痕迹。這並不是說交易記錄不管用了。而是因為他們在結合攻擊後,會修改交易記錄的資訊。如某個攻擊者竊取了管理使用者與密碼後訪問企業網站中的機密資訊。一般情況下,這個訪問紀錄會在交易記錄中有所顯示。但是,一些高手會在推出之前修改交易記錄。刪除這些訪問資訊,或者更改訪問者。讓企業安全管理員無從查起。為了讓他們無法更改交易記錄檔,則最好的方法就是更改交易記錄檔的路徑,並對其進行及時的備份。由於不知道路徑的真確位置,所以,及時不法攻擊者想攻擊想修改日誌隱藏自己的蹤跡,都不可能。
筆者現在的做法是,更改WEB伺服器的日誌的預設路徑。並且每隔三個小時對交易記錄進行異地備份。同時,結合事件審核功能,當Log Service器捕捉到一些異常資訊時,如某個使用者一直在試圖登陸WEB伺服器的管理站時,就會像企業管理員遞交這個異常資訊。通過日誌的管理,可以把WEB伺服器的一些安全隱患及時的告知給管理員。
所以筆者這裡要向大家推薦的第二把利器就是WEB伺服器的日誌管理 。管理員為了提高日誌的安全性,要修改伺服器日誌的預設路徑,並且定時對其進行異地備份。同時,要跟其他的功能,如安全性稽核、賬戶安全性原則等工具,結合使用,可以起到事半功倍的作用。
利器三:代碼,影響WEB伺服器安全的最大殺手。
對於WEB伺服器來說,代碼是其安全的最大殺手之一。很多WEB伺服器被攻破,大部分是由於代碼設計不當所引起的。故管理好WEB伺服器的代碼,是保障WEB伺服器安全的首要任務。
為了提高代碼的安全性,網站開發人員要養成一些好的代碼編寫習慣。
一是不要直接採用網路上的代碼。
有些開發人員為了工作上的便利,會直接拷貝其他網友提供的代碼。但是,不幸的是,天下沒有白吃的午餐。有些人免費提供這些代碼往往帶有不可告人的秘密。如現在網路上提供的一些電子商務平台與網站論壇代碼,代碼提供者很有可能會在代碼中預留一個後門。當他覺得有必要的話,則就可以很輕易的採用這個後門對其進行攻擊。所以,若企業要在WEB伺服器上實現一些關鍵應用,如客戶線上下單等等,則最好不要採用網路上現成的編碼。只可以借鑒,不可以抄襲。最好的話,自己開發。
二是增加的新功能不要在WEB服。
企業在發展,WEB應用也逐漸在完善。企業市場會提出一些新的需求。當開發人員在開發某個功能的時候,最好不要直接在WEB伺服器上直接進行測試。有條件的企業,最好專門配置一個測試伺服器,以方便程式開發人員測試新功能。特別是若把這個程式開發外包給外面的企業的話,不能夠為了貪圖方便,直接讓對方在現用的WEB伺服器上進行測試。俗話說,知人知面不知心。對方很可能在你不知情的情況下,植入一個木馬都說不定。所以,防人之心不可無。企業在新功能的開發測試上還是要小心為妙。
三是盡量不要採用不安全的控制項。
企業WEB應用跟娛樂網站不同。企業門戶網站強調的是快速、穩定、安全;而娛樂網站則強調的是美觀、靚麗、特效。為了吸引眼球,提高點擊率,娛樂網站往往會採用比較多的特效。為此,他們會在WEB服務上採用比較多的控制項來達到這個效果。但是,這些控制項往往都有安全性漏洞,跟WEB伺服器的安全背道而馳。如FLASH控制項等等。針對這種控制項的攻擊,互連網上可能每天都在發生。還說不定哪一天就落到企業的頭上了。所以,企業網站只追求穩定、安全,沒有必要過多的採用控制項來實現特技效果。
筆者向大家推薦的第三把利器就是要做好代碼的安全設計,盡量減少採用不安全的控制項。企業網站應該追求穩定、反映速度等等。而過多的採用控制項,跟這兩個目標都是背道而馳的。