服務(wù)器保衛(wèi)戰(zhàn):它在網(wǎng)絡(luò)空間里堅(jiān)守最后一道防線

2021-03-29 13:35:26來(lái)源:威易網(wǎng)作者:

網(wǎng)絡(luò)安全的保衛(wèi)者們要隨時(shí)做好準(zhǔn)備,同入侵者在每一臺(tái)服務(wù)器甚至每一個(gè)進(jìn)程里展開(kāi)“巷戰(zhàn)”,并將他們徹底消滅。

網(wǎng)絡(luò)安全的保衛(wèi)者們要隨時(shí)做好準(zhǔn)備,同入侵者在每一臺(tái)服務(wù)器甚至每一個(gè)進(jìn)程里展開(kāi)“巷戰(zhàn)”,并將他們徹底消滅。

——題記

兵敗莫斯科城下后,德國(guó)人把眼光放在了蘇聯(lián)的中南部地區(qū)。

作為連接中南部地區(qū)的重要樞紐,斯大林格勒一旦被德軍控制,蘇聯(lián)不僅僅將損失大量的作戰(zhàn)部隊(duì),還將損失大量的糧食、石油、礦產(chǎn)、軍工廠以及國(guó)際援助,從而失去對(duì)德作戰(zhàn)的戰(zhàn)爭(zhēng)潛力。

說(shuō)斯大林格勒是最后一道防線絕不為過(guò)。

慘烈的斯大林格勒保衛(wèi)戰(zhàn)

1942年7月17日,德軍攜優(yōu)勢(shì)地空火力逼近斯大林格勒,蘇德雙方在斯大林格勒接近地展開(kāi)了激烈的交戰(zhàn),二戰(zhàn)歷史上規(guī)模最大、傷亡最慘烈的戰(zhàn)役——斯大林格勒保衛(wèi)戰(zhàn)正式打響。

為了增強(qiáng)守軍斗志,斯大林發(fā)布了第227號(hào)命令,嚴(yán)厲要求蘇聯(lián)紅軍部隊(duì)“絕對(duì)不許后退一步!”

遺憾的是,在會(huì)戰(zhàn)初期,蘇聯(lián)方面似乎并沒(méi)做好準(zhǔn)備。德軍迅速突破了其外圍防線,攻入斯大林格勒城內(nèi)。

慘烈的巷戰(zhàn)開(kāi)始了。

在占領(lǐng)市中心后,德軍的推進(jìn)只能用米來(lái)衡量,德第6集團(tuán)軍的一位叫漢斯·德?tīng)柕能姽僭凇哆M(jìn)軍斯大林格勒》一書(shū)中寫(xiě)到:“敵我雙方為爭(zhēng)奪每一座房屋、車間、水塔、鐵路路基,甚至為爭(zhēng)奪一堵墻、一個(gè)地下室和每一堆瓦礫都展開(kāi)了激烈的戰(zhàn)斗。”

1943年2月2日,歷時(shí)近200天的斯大林格勒戰(zhàn)役以德軍的失敗而告終。自此軸心國(guó)集團(tuán)元?dú)獯髠僖矡o(wú)力在歐洲東線戰(zhàn)場(chǎng)發(fā)動(dòng)大規(guī)模攻勢(shì),并逐漸走向滅亡。

據(jù)統(tǒng)計(jì),在會(huì)戰(zhàn)最激烈的階段,雙方投入兵力超過(guò)二百萬(wàn),坦克兩千輛,飛機(jī)兩千三百多架,火炮兩萬(wàn)五千門(mén)。

絕不可迷信邊界防御

讓人沒(méi)想到的是,在二戰(zhàn)結(jié)束后的幾十年間,原本是美國(guó)軍方為了計(jì)算這些武器彈道軌跡而定制的計(jì)算機(jī),取得飛速發(fā)展,使其成為了互聯(lián)網(wǎng)的重要終端載體,網(wǎng)絡(luò)空間悄然誕生。而在最近的十年里,云計(jì)算、移動(dòng)互聯(lián)網(wǎng)和物聯(lián)網(wǎng)技術(shù)的應(yīng)用,讓網(wǎng)絡(luò)空間的外延不斷擴(kuò)大。

網(wǎng)絡(luò)空間的利益紛爭(zhēng),讓同樣烈度的戰(zhàn)役也時(shí)常在網(wǎng)絡(luò)空間上演。

斯大林格勒保衛(wèi)戰(zhàn)給人們的第一條啟示就是不能過(guò)度迷信邊界防御。

邊界防御重要嗎?毫無(wú)疑問(wèn),它是網(wǎng)絡(luò)安全防御的第一道防線。否則是德國(guó)人絕不會(huì)在蘇德戰(zhàn)爭(zhēng)初期的幾個(gè)月內(nèi),閃擊到莫斯科城下;在希特勒下達(dá)“藍(lán)色行動(dòng)”的作戰(zhàn)命令后,德軍也不至于很快就打穿了斯大林格勒的外圍防線。

但過(guò)度依賴是有問(wèn)題的。

面對(duì)攻守及其不平衡的局面,攻擊者利用強(qiáng)大的情報(bào)搜集能力,找出目標(biāo)防守的薄弱點(diǎn),從而輕而易舉的攻破目標(biāo)的外圍防線。在內(nèi)網(wǎng)中如入無(wú)人之境,直面網(wǎng)絡(luò)空間里的“斯大林格勒”——服務(wù)器,存儲(chǔ)重要數(shù)據(jù)、核心代碼或者運(yùn)行著核心應(yīng)用的地方。

從去年的攻防演習(xí)來(lái)看,攻擊方也不磨嘰,上來(lái)就祭出殺手锏武器——0day漏洞。這就如同攻擊方拿到了目標(biāo)的“布防圖”,任你邊界布防再嚴(yán)密,他們也能一擊命中薄弱環(huán)節(jié)。

果不其然,演習(xí)的第一天,就有一眾目標(biāo)被0day攻擊打穿。

物理斷網(wǎng)聽(tīng)起來(lái)夠安全了吧。2017年5月12日,永恒之藍(lán)勒索病毒以迅雷不及掩耳之勢(shì)穿透網(wǎng)絡(luò)安全邊界,安全工程師們不得不在每一臺(tái)中招的機(jī)器上,與勒索病毒展開(kāi)“貼身肉搏”。

值得注意的是,隔離網(wǎng)的中招情況,要比普通家用電腦嚴(yán)重的多。

在付出數(shù)百萬(wàn)臺(tái)機(jī)器中招和不計(jì)其數(shù)的經(jīng)濟(jì)損失后,安全工程師們才暫時(shí)遏制住了永恒之藍(lán)傳播的勢(shì)頭。

做好打“巷戰(zhàn)”的準(zhǔn)備

既然不能迷信邊界防御,防守方就要時(shí)刻做好和入侵者“打巷戰(zhàn)”的準(zhǔn)備,逐臺(tái)服務(wù)器展開(kāi)爭(zhēng)奪。

做好準(zhǔn)備首先就是要知己,這也是斯大林格勒戰(zhàn)役中的第二點(diǎn)啟示。

事實(shí)上,在戰(zhàn)役之初,朱可夫元帥并不夠了解自己的部隊(duì),以至于抵達(dá)前線后才發(fā)現(xiàn)他們處于“缺糧少?gòu)?rdquo;的狀態(tài)。

就網(wǎng)絡(luò)安全防御而言,CIO或者CISO們也可能沒(méi)有掌握自己?jiǎn)挝环⻊?wù)器情況的全貌,例如有多少臺(tái)服務(wù)器,各臺(tái)服務(wù)器上都裝什么版本的操作系統(tǒng)和應(yīng)用軟件,存儲(chǔ)了哪些數(shù)據(jù),更不要說(shuō)軟硬件配置是否正確、都有哪些漏洞、漏洞是否已經(jīng)安裝補(bǔ)丁了。

在這種情況下,防守方很難組織起有效的抵抗。攻擊者在突破網(wǎng)絡(luò)邊界后,就可以任選一臺(tái)防守薄弱的服務(wù)器下手,并以此為據(jù)點(diǎn),向其他服務(wù)器橫向滲透。

那把自己服務(wù)器的這點(diǎn)事情梳理清楚容易嗎?說(shuō)難那肯定難。

在云計(jì)算出現(xiàn)以前,大家多用的是物理服務(wù)器,簡(jiǎn)而言之就是一臺(tái)性能極強(qiáng)的電腦。那么大一臺(tái)機(jī)器擺在那里,想搞不清楚都難,F(xiàn)在不一樣了,在云計(jì)算模式下,一臺(tái)物理機(jī)可以生成很多臺(tái)虛擬服務(wù)器或者云服務(wù)器,創(chuàng)建他們只需要用戶在控制臺(tái)點(diǎn)幾下,前后也就不過(guò)一分鐘時(shí)間,這讓管理難度加大了許多。

并且,云服務(wù)器看不見(jiàn)也摸不著,這讓管理員十分頭疼,經(jīng)常會(huì)發(fā)現(xiàn)莫名其妙多了幾臺(tái)服務(wù)器,也不知道是誰(shuí)創(chuàng)建的,上面跑著什么應(yīng)用,用的還是123456這種弱口令。

不過(guò),這件事情說(shuō)容易也容易,和大象放進(jìn)冰箱一樣總共也就三步:放一雙眼睛——盯著他們——記下來(lái)。

那么問(wèn)題來(lái)了,這雙眼睛從何而來(lái)?簡(jiǎn)單,交給研發(fā)就好了。一行行代碼背后噼里啪啦的鍵盤(pán)聲,工程師們卻掏出了一把鎖,叫做云鎖,全稱是奇安信云鎖服務(wù)器安全管理系統(tǒng)。

顧名思義,這就是給服務(wù)器上鎖的一款產(chǎn)品,看就要把服務(wù)器給看得清清楚楚。

云鎖能深度洞察,包括都有哪些服務(wù)器,登錄口令是不是弱口令,上面裝了什么操作系統(tǒng)、跑著什么應(yīng)用,開(kāi)放了哪些端口,都有什么樣的漏洞,這些漏洞是不是都有補(bǔ)丁,補(bǔ)丁是不是都安裝了等等這些情況,凡是能被黑客利用的弱點(diǎn),云鎖都要看到,并把他們記在“小本本”上,不安全的地方就給出整改建議,沒(méi)打補(bǔ)丁的地方給打上補(bǔ)丁。

這個(gè)過(guò)程,業(yè)界習(xí)慣叫做“資配漏補(bǔ)”,也就是“資產(chǎn)、配置、漏洞和補(bǔ)丁。”

但服務(wù)器并不是靜止不動(dòng)的,上面有有網(wǎng)絡(luò)在連接、有應(yīng)用在運(yùn)行、還有數(shù)據(jù)在傳輸,因此在看的基礎(chǔ)上,云鎖還能把看到的行為學(xué)習(xí)下來(lái),也記在一個(gè)“小本本”上,形成用戶行為畫(huà)像,這個(gè)“小本本”就是大家口中的白名單。

凡是不在白名單上的,都可以認(rèn)為是可疑的。

這有什么用呢?一臺(tái)服務(wù)器上面運(yùn)行的程序、經(jīng)常訪問(wèn)的IP地址基本上是固定的,就那么幾類,如果突然運(yùn)行了一個(gè)從來(lái)沒(méi)見(jiàn)過(guò)的應(yīng)用,或者訪問(wèn)了從來(lái)沒(méi)訪問(wèn)的IP地址,那就可能出問(wèn)題了,就需要后續(xù)進(jìn)行研判是否中招。

比如你知道你的一個(gè)朋友從來(lái)不喝酒,但有一天晚上他喝的酩酊大醉,那他沒(méi)準(zhǔn)就遇到了什么不如意的事情。

戰(zhàn)斗在每一間房屋、每一片瓦

斯大林格勒戰(zhàn)役還有第三個(gè)啟示。

受到極寒天氣影響,德國(guó)人在進(jìn)攻莫斯科的時(shí)候遇到了嚴(yán)重的補(bǔ)給困難,機(jī)械化部隊(duì)難以發(fā)揮作用,士氣也非常低落。盡管蘇聯(lián)軍隊(duì)在莫斯科城下挫敗了德國(guó)人的進(jìn)攻,但依然沒(méi)有扭轉(zhuǎn)敵強(qiáng)我弱的局面。

因此,面對(duì)德國(guó)人向斯大林格勒發(fā)起的夏季攻勢(shì),想要復(fù)制莫斯科的勝利,把德軍攔在城下是非常困難的,打巷戰(zhàn)幾乎無(wú)法避免。

巷戰(zhàn)是慘烈的,但防守方在面對(duì)優(yōu)勢(shì)敵軍時(shí),很多時(shí)候卻不得不如此。

就像不能迷信邊界防御一樣,做好了戰(zhàn)前準(zhǔn)備,就以為服務(wù)器安全可以高枕無(wú)憂。要能夠在服務(wù)器內(nèi)部的每一個(gè)角落,隨時(shí)同攻擊行為展開(kāi)“巷戰(zhàn)”。尤其是在攻防演習(xí)這種“戰(zhàn)時(shí)狀態(tài)”,面對(duì)攻擊方高頻度的攻擊行為和變幻莫測(cè)的攻擊技巧,單純的“資配漏補(bǔ)”很難奏效,必須要利用技術(shù)手段與攻擊方做持續(xù)對(duì)抗。

巷戰(zhàn)有一個(gè)明顯的特點(diǎn):未知性,你不知道敵軍會(huì)從哪一片墻后面突然跑出來(lái)給你一槍。想要占據(jù)主動(dòng)權(quán),實(shí)時(shí)掌握敵軍視野,并適時(shí)發(fā)起局部進(jìn)攻非常重要。喜歡玩游戲的人都知道,不管是FPS、RPG還是MOBA類游戲,擁有“全圖視野”是多么爽。

云鎖另外一個(gè)強(qiáng)大的功能,就是通過(guò)布滿服務(wù)器內(nèi)部的“眼睛”,幫防守方開(kāi)全圖視野。業(yè)界習(xí)慣把這雙“眼睛”叫做“探針”。

云鎖的探針有四種。

第一種是IN-APP WAF探針。它的工作原理和普通WAF類似,部署在Web應(yīng)用上,監(jiān)控所有進(jìn)入Web應(yīng)用的流量。一旦發(fā)現(xiàn)“壞人”混跡在正常流量中,即可發(fā)出告警。它的優(yōu)勢(shì)在于,云鎖對(duì)于加密流量(可以理解為偽裝后的壞人)檢測(cè)能力更強(qiáng)。

第二種RASP探針。RASP中文全稱是應(yīng)用運(yùn)行時(shí)自我保護(hù),其目的在于讓?xiě)?yīng)用程序擁有自我免疫和防御的能力。它主要的主要能力是hook網(wǎng)絡(luò)流量,細(xì)粒度的監(jiān)控應(yīng)用腳本的行為及函數(shù)調(diào)用上下文信息(程序員都懂的),及時(shí)發(fā)現(xiàn)惡意代碼和漏洞利用行為。

說(shuō)點(diǎn)大白話。假如云鎖發(fā)現(xiàn)躲在墻后的敵人舉槍向你瞄準(zhǔn),他就會(huì)通知你危險(xiǎn)并及時(shí)躲避;假如云鎖發(fā)現(xiàn)敵方通信兵和長(zhǎng)官通話,它會(huì)通知你敵方通信兵可能正在匯報(bào)你方部署情況,要及時(shí)干掉他。也就是云鎖從敵方肢體語(yǔ)言(在IT環(huán)境中就是機(jī)器語(yǔ)言)中發(fā)現(xiàn)危險(xiǎn)信號(hào),為你下一步反制行動(dòng)提供參考。

第三種是內(nèi)核加固探針。內(nèi)核到底是什么?簡(jiǎn)單來(lái)說(shuō)就是底層環(huán)境,也就是操作系統(tǒng)、內(nèi)存這些東西。攻擊者在服務(wù)器內(nèi)每發(fā)起一次攻擊行為,就會(huì)在內(nèi)核上留下一些痕跡(當(dāng)然攻擊者也可以清除痕跡),就像敵人每走一步就會(huì)在地上留下腳印,每開(kāi)一槍就會(huì)留下彈殼一樣。云鎖的內(nèi)核加固探針就是在系統(tǒng)層,通過(guò)觀察這些“痕跡”來(lái)進(jìn)行黑客行為畫(huà)像,監(jiān)控攻擊者的攻擊行為。

同時(shí),這個(gè)內(nèi)核加固探針還能起到為內(nèi)核加固的作用,增強(qiáng)操作系統(tǒng)自身對(duì)抗黑客攻擊和惡意代碼的能力,限制漏洞利用后的下一步行為。不然攻擊者不知道從什么地方“打個(gè)地道”跑到我后面,豈不是滿盤(pán)皆輸?

第四種是Webshell動(dòng)態(tài)檢測(cè)探針。針對(duì)Web服務(wù)器有一種非常常見(jiàn)的攻擊類型叫Webshell攻擊,它是一種后門(mén)文件,攻擊者將其上傳到服務(wù)器后,就通過(guò)運(yùn)行它獲取控制服務(wù)器的權(quán)限。但通常而言,Webshell文件并不會(huì)在自己腦門(mén)上寫(xiě)著壞人倆字,相反還會(huì)進(jìn)行各種偽裝、加密,防守者可能直到被拿站了才恍然大悟。

那怎么辦?還記得《亮劍》里老李讓國(guó)民黨暫七師師長(zhǎng)常乃超跑那五公里嗎?當(dāng)時(shí)常乃超被俘后混在普通俘虜中,最后因?yàn)榕懿粍?dòng)五公里露餡了。沒(méi)有那五公里,就沒(méi)有后來(lái)南京軍事學(xué)院的常教員。沒(méi)有常教員的潤(rùn)色,老李的畢業(yè)論文可能也沒(méi)有那么氣壯山河。

話說(shuō)回來(lái)。云鎖也會(huì)進(jìn)行全盤(pán)掃描,把包括Webshell在內(nèi)的腳本文件扔到沙箱里“跑五公里”,一旦發(fā)現(xiàn)非法行為就標(biāo)記出來(lái),并把檢測(cè)結(jié)果同步給WAF和RASP探針,下次再發(fā)現(xiàn)一樣的腳本文件,直接干掉就行了。

打贏服務(wù)器保衛(wèi)戰(zhàn)

十幾年前,大家保護(hù)服務(wù)器的主要方法還是在上面裝個(gè)殺毒軟件,殺不殺得了病毒全靠天意。

然而在過(guò)去的十?dāng)?shù)年間,服務(wù)器的形態(tài)發(fā)生了翻天覆地的變化,作為機(jī)構(gòu)承載關(guān)鍵業(yè)務(wù)和敏感數(shù)據(jù)的核心平臺(tái),任何一個(gè)小小的缺陷都會(huì)被攻擊者抓住并無(wú)限放大。無(wú)論你的補(bǔ)丁打的再怎么好、口令設(shè)置的再怎么復(fù)雜,面對(duì)0day、內(nèi)存馬、社工滲透這種形態(tài)的攻擊時(shí),都顯得力不從心。

當(dāng)然,發(fā)現(xiàn)攻擊從來(lái)不是一件容易的事情。有統(tǒng)計(jì)數(shù)據(jù)顯示,針對(duì)服務(wù)器的攻擊平均在99天內(nèi)不會(huì)被發(fā)現(xiàn),超過(guò)53%的受害者是在外部通知后才知道被攻擊的。與攻擊駐留時(shí)間相對(duì)應(yīng)的是防御發(fā)現(xiàn)時(shí)間,防守者平均需要170天才能檢測(cè)到一個(gè)高級(jí)威脅。

好在,云鎖并不是一個(gè)人作戰(zhàn)。在服務(wù)器的外圍,奇安信天眼能夠在流量側(cè),清晰洞察“敵軍的動(dòng)向”。

持續(xù)的檢測(cè)與對(duì)抗,才能打贏網(wǎng)絡(luò)空間里的“斯大林格勒保衛(wèi)戰(zhàn)”。

關(guān)鍵詞:服務(wù)器云鎖