信息安全的五大歷史教訓(xùn)
我們從歷史中得到教訓(xùn),然后進步。這是保證我們能夠不斷發(fā)展的核心理念。觀望信息安全的發(fā)展道路,每次我們從IT的困境中逃脫出來都很追悔莫及。所以我們應(yīng)當(dāng)回顧歷史,避免這些事情重復(fù)發(fā)生。
依賴以簽名為基礎(chǔ)的防御
早在上個世紀80年代,當(dāng)計算機病毒首次出現(xiàn)在我們的系統(tǒng)中時,廠商為我們提供一些檢測工具,并將病毒徹底刪除。但是一些很有預(yù)見性的人發(fā)現(xiàn),以簽名為基礎(chǔ)的信息安全產(chǎn)品對于一些更大的問題來說只是短期的有效解決辦法。
到了上個世紀90年代,入侵檢測系統(tǒng)IDS成為流行產(chǎn)品,同樣的問題又出現(xiàn)了。實際上,現(xiàn)有的大部分的IDS和IPS產(chǎn)品仍舊以靜態(tài)簽名數(shù)據(jù)庫為檢測攻擊的基準。
當(dāng)然,產(chǎn)品肯定不可能至今沒有任何改進,簽名引擎已經(jīng)增加了很多功能,如正則表達式解析,幫助更加準確地檢測和防御。但是根源問題始終存在。
直到我們開始訴諸于積極的驗證方法(一種只允許安全的東西通過并阻止一切不安全東西進入的機制)的時候,我們被遇到的新興攻擊所震驚。為了積極驗證問題的存在,我們需要了解下一步該怎么做,這就意味著,解決方案必須與應(yīng)用軟件很相近。什么事情都是說起來比做起來容易,但是我們必須要在行動上表現(xiàn)得更好。
滲透測試不萬能
滲透測試是我們安全問題中的重要組成部分,但是單純依靠滲透測試來決定系統(tǒng)或程序的安全與否就大錯特錯了。
原因在于滲透測試工具和技巧往往只是以網(wǎng)絡(luò)和應(yīng)用掃描為基礎(chǔ)。它本質(zhì)上是從外到內(nèi)的方法,對軟件體系結(jié)構(gòu)、設(shè)計和源代碼的根部問題的深入檢查力不從心。
任何可靠的信息安全測試程序都一定包括適當(dāng)?shù)脑O(shè)計和源代碼審查,除了那些嚴格的動態(tài)測試。但是滲透測試卻沒有。
軟件認識的墮落
當(dāng)我上個世紀80年代進入這個行業(yè)的時候,遇到了一個很不可思議的問題,明顯讓系統(tǒng)管理員去做編程。幾乎這個領(lǐng)域的每個人都有一些扎實的計算機科學(xué)的背景。
回到今天,你會發(fā)現(xiàn)信息安全已經(jīng)成為主要的難題,能讀懂軟件源代碼的人卻少之又少。這是個很大的問題。因為我們很難知道最新出現(xiàn)的攻擊事件和攻擊工具是怎么一回事。我們需要對工作中的一些基礎(chǔ)技術(shù)有很深入的認識。這被認為是安全技術(shù)人員必須要達到的安全技術(shù)水平。
權(quán)宜之計不可喧賓奪主
每當(dāng)我了解到一些新的攻擊工具或技巧的時候,出于本能的反映我都希望我們的企業(yè)的系統(tǒng)能夠適當(dāng)?shù)刈龊梅烙?。如果他們沒有做好,我們就會尋找一些補救的方法。這些都是很自然和可以想到的做法。
但是尋找最快修復(fù)辦法總是讓我們步入“螺旋安全”的怪圈。我們從廠商那買來產(chǎn)品,放在企業(yè)系統(tǒng)的前端,然后希望奇跡很發(fā)生。但是往往相反,我們總是感到失望。
解決問題的權(quán)宜之計本身沒有問題,但是我們要意識到它們只是權(quán)宜之計。如果我們不始終著眼于信息安全系統(tǒng)根源的問題,注定會失敗。
過于樂觀的“代碼”
這觀點有點過于左了,但是這是多次遇到的問題。很多時候,我們所依賴的軟件都被編寫得過于樂觀了。編寫代碼的人肯定不會想到會在這里出現(xiàn)問題。
我所要明確的是,人們在編寫軟件的時候都想當(dāng)然地認為不會有問題。例如,將文件存到磁盤上。我們想當(dāng)然地認為有足夠的空間存入這個文件,以及存盤的過程是沒有病毒的。事實上,計算機環(huán)境經(jīng)常會丟出讓我們意想不到的問題來。很多這種失敗都會出現(xiàn)嚴重的信息安全影響:客戶記錄遭到竊取,認證證書欺騙等等。
在做系統(tǒng)審查的時候,我總是會想到出現(xiàn)問題的一剎那。例如,一個成年人人帶著孩子走在繁忙街道,他的心態(tài)是怎樣的?他要保證孩子的安全。成年人就是我們所謂的軟件開發(fā)者,他們應(yīng)該預(yù)料到可能存在的問題并保證使用者的安全。
【編輯推薦】