你安全嗎?丨虎云系統(tǒng)“后門”

作者:黑蛋
在電視劇《你安全嗎?》中,馬平川這個(gè)人物已經(jīng)慢慢浮出水面,算是此部電視劇幕后的最大反派,他明面上是虎迫集團(tuán)的技術(shù)總監(jiān),是虎云系統(tǒng)的負(fù)責(zé)人,開(kāi)發(fā)者。背后卻在泰曼達(dá)有著詐騙基地,同時(shí)與一名“將軍”聯(lián)系密切,在國(guó)內(nèi)又多次參與反派事件。在虎迫公司決定更換虎云負(fù)責(zé)人的時(shí)候,馬平川和另一位反派在江邊聊天:


說(shuō)起了新來(lái)的技術(shù)總監(jiān)胡德正已經(jīng)發(fā)現(xiàn)了馬平川在虎云系統(tǒng)留的后門,并已經(jīng)報(bào)告給了虎迫老大徐,隨后馬平川說(shuō)道他會(huì)盡快把漏洞補(bǔ)齊,避免被發(fā)現(xiàn)漏洞與自己的關(guān)系:

而補(bǔ)齊漏洞后果,就是沒(méi)辦法查看飲料廠內(nèi)部資料:

這里我來(lái)解釋一下,為什么補(bǔ)全漏洞,就沒(méi)有辦法查看飲料場(chǎng)內(nèi)部資料。首先虎云系統(tǒng)是一個(gè)防御系統(tǒng),而這個(gè)防御系統(tǒng)被飲料場(chǎng)所使用,所以馬平川方可以隨時(shí)通過(guò)虎云系統(tǒng)的漏洞,入侵飲料廠服務(wù)器,竊取資料。接下來(lái)我們聊一聊什么是漏洞,什么是后門。其實(shí)后門和漏洞是一個(gè)東西,倆者不同的是,一個(gè)是作者故意為之,一個(gè)是作者無(wú)意為之。
簡(jiǎn)單舉個(gè)例子:
printf("輸入口令");
scanf(“%s”,口令);
if(口令正確){
打開(kāi)大門}else if(作者喊出的口令){
打開(kāi)大門}else{
打開(kāi)大門失敗};
在這里我們可以看到,如果輸入正確口令,那么就可以打開(kāi)大門,但是如果是作者喊出的口令,無(wú)論對(duì)錯(cuò),都會(huì)打開(kāi)大門,這里可以看做作者給自己留的后門,而這個(gè)后門是其他人不知道的,如果其他黑客發(fā)現(xiàn)這個(gè)地方,那么就可以模擬作者聲音喊出口令,打開(kāi)大門。對(duì)作者而言,這里是后門,對(duì)其他不知情黑客而言,發(fā)現(xiàn)這里,那么這里可以稱之為漏洞。接下來(lái)我們來(lái)了解一下漏洞到底是什么東西,首先是來(lái)自《0day安全》這本書對(duì)于漏洞和bug進(jìn)行了解釋區(qū)分:
隨著現(xiàn)代軟件工業(yè)的發(fā)展,軟件規(guī)模不斷擴(kuò)大,軟件內(nèi)部的邏輯也變得異常復(fù)雜。為了保證軟件的質(zhì)量,測(cè)試環(huán)節(jié)在軟件生命周期中所占的地位已經(jīng)得到了普遍重視。在一些著名的大型軟件公司中,測(cè)試環(huán)節(jié)(QA)所耗費(fèi)的資源甚至已經(jīng)超過(guò)了開(kāi)發(fā)。即便如此,不論從理論上還是工程上都沒(méi)有任何人敢聲稱能夠徹底消滅軟件中所有的邏輯缺陷——bug。在形形色色的軟件邏輯缺陷中,有一部分能夠引起非常嚴(yán)重的后果。例如,網(wǎng)站系統(tǒng)中,如果在用戶輸入數(shù)據(jù)的限制方面存在缺陷,將會(huì)使服務(wù)器變成?SQL?注入攻擊和?XSS(Cross Site Script,跨站腳本)攻擊的目標(biāo);服務(wù)器軟件在解析協(xié)議時(shí),如果遇到出乎預(yù)料的數(shù)據(jù)格式而沒(méi)有進(jìn)行恰當(dāng)?shù)漠惓L幚?,那么就很可能?huì)給攻擊者提供遠(yuǎn)程控制服務(wù)器的機(jī)會(huì)。我們通常把這類能夠引起軟件做一些“超出設(shè)計(jì)范圍的事情”的?bug?稱為漏(vulnerability)。
(1)功能性邏輯缺陷(bug):影響軟件的正常功能,例如,執(zhí)行結(jié)果錯(cuò)誤、圖標(biāo)顯示錯(cuò)誤等。
(2)安全性邏輯缺陷(漏洞):通常情況下不影響軟件的正常功能,但被攻擊者成功利用后,有可能引起軟件去執(zhí)行額外的惡意代碼。常見(jiàn)的漏洞包括軟件中的緩沖區(qū)溢出漏洞、網(wǎng)站中的跨站腳本漏洞(XSS)、SQL?注入漏洞等。
我們只需要知道,軟件漏洞是可以引起額外的惡意代碼的執(zhí)行,達(dá)到做些軟件不可控的事情。而對(duì)于防御系統(tǒng)的漏洞,其實(shí)本質(zhì)和軟件漏洞并沒(méi)有什么區(qū)別,都可以讓不法份子執(zhí)行惡意代碼從而控制目標(biāo),竊取資料等。防御系統(tǒng)本質(zhì)是帶來(lái)了一層保護(hù)層,而如果知道系統(tǒng)漏洞,就可以直接繞過(guò)保護(hù),類似于家門口上的鎖,我用了某家的鎖來(lái)鎖門,來(lái)防止小偷,但是制造鎖的人卻知道如何簡(jiǎn)單的撬開(kāi)鎖,甚至有一把備用鑰匙,可以讓鎖形同虛設(shè)。這也就是為什么馬平川之前可以利用虎云系統(tǒng)后門來(lái)查看飲料廠內(nèi)部資料,而補(bǔ)全漏洞,意味著制造鎖的人完善了這種簡(jiǎn)單撬開(kāi)鎖的缺陷,自己也無(wú)法打開(kāi)鎖,所以也就不能再看到飲料廠的內(nèi)部資料。