對于計算機(jī)和互聯(lián)網(wǎng)來說,安全漏洞是揮之不去的幽靈。去年4月份的心臟出血(Heartbleed)漏洞和Bash漏洞引發(fā)了互聯(lián)網(wǎng)的劇烈震蕩,Apache Struts2系列漏洞頻發(fā)讓無數(shù)Java應(yīng)用系統(tǒng)躺著中槍,各類網(wǎng)站CMS和論壇漏洞引發(fā)的諸多拖庫事件讓互聯(lián)網(wǎng)用戶隱私無所遁形。
安全漏洞分類
安全漏洞是在軟件、硬件、協(xié)議的具體實(shí)現(xiàn)或系統(tǒng)安全策略上存在的缺陷,從而可以使攻擊者能夠在未充分授權(quán)的情況下訪問或改變原有系統(tǒng)功能和數(shù)據(jù)信息。由于種種原因,漏洞的存在是無法避免的。
從作用范圍來看,漏洞可以分為本地漏洞和遠(yuǎn)程漏洞。前者利用本機(jī)訪問權(quán)限實(shí)施攻擊,比較典型的是本地權(quán)限提升漏洞,例如Linux的內(nèi)核本地提權(quán)。后者攻擊方可以通過網(wǎng)絡(luò)遠(yuǎn)程進(jìn)行利用,此類漏洞危害較大,并且容易形成大范圍影響,例如很多蠕蟲病毒都是利用遠(yuǎn)程漏洞進(jìn)行傳播擴(kuò)散。
從觸發(fā)條件來看,漏洞利用可分為主動觸發(fā)和被動觸發(fā)。前者,攻擊者可以主動完全控制進(jìn)度,后者需要被攻擊者的交互,比如打開了攻擊者發(fā)送的郵件附件,或者訪問了攻擊者預(yù)置了惡意代碼的網(wǎng)站,例如APT里常見的水坑式攻擊。
從時間維度來看,漏洞可以分為老漏洞,新漏洞,0Day漏洞。老漏洞一般發(fā)現(xiàn)時間較久,各種利用方式都已被詳細(xì)討論,相應(yīng)的補(bǔ)丁和修復(fù)方法也已公開。新漏洞一般剛發(fā)布不久,各種利用技巧正在被討論,相應(yīng)的補(bǔ)丁方案還不成熟或者尚未廣為人知。如果攻擊者利用自動化的攻擊腳本,可以在較短時間內(nèi)成功入侵大量存在新漏洞的系統(tǒng)。0Day漏洞一般都尚未公開,往往會通過地下途徑來交易。被攻擊目標(biāo)范圍狹小,但是對于被盯上的受害者,由于無法防備,可能會造成相當(dāng)大的威脅。普通互聯(lián)網(wǎng)用戶和網(wǎng)絡(luò)信息系統(tǒng)主要受前兩種漏洞影響更大。不過隨著時間的推移,同一個漏洞,身份也會發(fā)生0Day漏洞-新漏洞-老漏洞的變遷。漏洞掃描是基于已知漏洞數(shù)據(jù)庫,通過掃描等手段對指定的遠(yuǎn)程或者本地計算機(jī)系統(tǒng)的安全脆弱性進(jìn)行檢測,發(fā)現(xiàn)可利用的漏洞的一種安全檢測行為,漏洞掃描一般對老漏洞的發(fā)現(xiàn)比較有效。
從威脅級別來看,安全漏洞可以分為高中低三類。高危漏洞影響范圍廣,發(fā)現(xiàn)利用難度低,較容易獲得高級系統(tǒng)權(quán)限。中危漏洞需要交互才能拿到部分系統(tǒng)信息,熟練的攻擊者才能利用,有一定利用門檻。低危漏洞影響范圍小,利用條件極為苛刻,泄露系統(tǒng)信息有限。不過實(shí)際攻擊滲透過程往往是一系列漏洞的組合,防御方首先需要盡可能提前發(fā)現(xiàn)各種安全漏洞的存在,再根據(jù)威脅等級對應(yīng)處理。
高危漏洞是需要嚴(yán)格杜絕的,一旦發(fā)現(xiàn)就需要無條件第一時間安排修復(fù)。雖然由于某些應(yīng)用業(yè)務(wù)客觀要求,個別高危漏洞可能無法及時修復(fù),也需要采取多種加固方式來提高漏洞利用門檻,降低潛在威脅。中低危漏洞是普遍存在的,可以說無法完全杜絕,我們也同樣需要掌握其具體數(shù)量和存在位置,并了解其可能產(chǎn)生的威脅,根據(jù)自身的防護(hù)等級要求做對應(yīng)修復(fù)和處理規(guī)劃。
這些年整體上的漏洞數(shù)量是在持續(xù)增加的,2014年更是達(dá)到了一個頂峰。從去年的7946個CVE漏洞來看,敏感信息泄露類漏洞數(shù)量最多,超過了2000個,這說明黑客對于用戶隱私信息的關(guān)注。拒絕服務(wù)類(DOS)漏洞數(shù)量緊跟其后,超過了1500個。通過拒絕服務(wù)攻擊,可以破壞業(yè)務(wù)系統(tǒng)的可用性和穩(wěn)定性。此外,高危的遠(yuǎn)程代碼執(zhí)行漏洞數(shù)量也非常多,攻擊者可以利用此類漏洞遠(yuǎn)程進(jìn)一步獲取系統(tǒng)控制權(quán)。
應(yīng)對安全漏洞
漏洞挖掘有多種方法和技巧。常規(guī)的有基于Fuzzing技術(shù)等的黑盒測試,基于源代碼審計等的白盒測試,基于逆向反編譯技術(shù)等的灰盒測試,基于動靜態(tài)程序分析的的漏洞查找,以及基于補(bǔ)丁源碼或程序逆向比較的漏洞發(fā)現(xiàn)。針對Linux等開源軟件的漏洞挖掘可以通過閱讀源代碼進(jìn)行,對于網(wǎng)絡(luò)型閉源程序使用Fuzzing則比較有效。除了有自動化的工具和分析手段輔助,漏洞挖掘人員的多領(lǐng)域經(jīng)驗(yàn)積累和天馬行空的思路也非常重要。
新的漏洞不斷被挖掘和曝光,進(jìn)而被修復(fù),對整個網(wǎng)絡(luò)信息系統(tǒng)的整體安全性提升是有顯著積極作用的。但是隨著漏洞數(shù)量的不斷增加,特別是高危漏洞的層出不窮,對高校信息化團(tuán)隊的壓力也越來越大。漏洞防護(hù)對高校安全運(yùn)維人員來說有幾個關(guān)鍵點(diǎn)要注意:
1.對已有老漏洞情況是否已經(jīng)全面掌握并按威脅等級對應(yīng)整改處理,而且需要定期進(jìn)行復(fù)查。漏洞普查和消防安全普查一樣要經(jīng)常進(jìn)行,才能防患于未然。根據(jù)我們的實(shí)踐經(jīng)驗(yàn),大部分攻擊入侵利用的都不是最新漏洞。
2.每當(dāng)新高危漏洞被曝光出來后,能否在第一時間獲得漏洞情報成為關(guān)鍵。需要建立順暢的漏洞信息通報渠道,消息靈通可以保證你和全球絕大多數(shù)的攻擊者保持在同一條起跑線上,不至于被動挨打還一無所知。
3.需要快速準(zhǔn)確評估爆發(fā)的高危漏洞對學(xué)校內(nèi)部網(wǎng)絡(luò)、服務(wù)器以及應(yīng)用系統(tǒng)的影響程度,這直接決定了后繼處理的方向和力度。
4.確認(rèn)新高危漏洞對學(xué)校網(wǎng)絡(luò)和信息系統(tǒng)安全產(chǎn)生重大影響之后,就需要第一時間進(jìn)行修復(fù)。即使短期沒有完美的補(bǔ)丁方案,也要果斷采取限制訪問等其他措施,和時間賽跑,晚處理幾個小時都有可能引發(fā)嚴(yán)重的安全事件。
5.除了通用型的漏洞利用,對于事件型的漏洞利用需要和第三方進(jìn)行合作。國內(nèi)目前較知名的有烏云漏洞報告平臺和補(bǔ)天漏洞響應(yīng)平臺,每天都接受大量的高校安全漏洞事件報告,需要引起各高校的重視和關(guān)注。
基于以上幾點(diǎn),對每所高校來說,需要有負(fù)責(zé)安全運(yùn)維的團(tuán)隊處理本地化的安全漏洞。對于教育行業(yè)來說,全國需要有一支專業(yè)的安全研究隊伍,負(fù)責(zé)跟蹤和研究分析最新的漏洞資訊。當(dāng)一個高危漏洞剛被曝光時,安全研究人員需要迅速響應(yīng),對漏洞進(jìn)行分析評估,匯集各方面情報,獲取漏洞攻擊利用的細(xì)節(jié)并給出應(yīng)對防護(hù)的通用方案。如果評估其對教育行業(yè)將產(chǎn)生重大影響,就需要通過郵件列表、內(nèi)部工作微信群、內(nèi)部QQ交流群等諸多途徑及時發(fā)布漏洞預(yù)警信息,提醒其他高校關(guān)注該漏洞的存在。對于事件型的漏洞,也同樣需要通過和國家有關(guān)安全監(jiān)管部門、民間安全機(jī)構(gòu)、商業(yè)安全公司的情報共享機(jī)制獲取高校安全漏洞事件信息。與此同時,為了驗(yàn)證這些漏洞在整個教育網(wǎng)的分布狀況,有必要進(jìn)行全網(wǎng)監(jiān)測和無害化安全掃描,及時發(fā)現(xiàn)存在該漏洞的學(xué)校,再有針對性地通知到位。這樣才能形成一套完整的漏洞監(jiān)測,評估,應(yīng)急和處置體系。
安全漏洞會長期伴隨在我們身邊,如影隨形。面對日益嚴(yán)峻的安全形勢,我們唯有思想上高度重視,把全國高校有限的安全力量集中起來,形成一個分工協(xié)作的整體,真正了解掌握其發(fā)展規(guī)律和趨勢,才有可能控制其實(shí)際威脅和破壞程度。如果掩耳盜鈴,等到了身陷窘境的那一天就悔之晚矣。
分享到微信 ×
打開微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁分享至朋友圈。