【安全科普】之惡意代碼與病毒
惡意代碼能有多惡?這樣說吧,從理論上看,它想有多惡,就能多惡!
如果說普通代碼(或善意代碼)是佛,那么,惡意代碼就是魔。佛與魔除了分別代表正義和邪惡之外,其它本領(lǐng)其實都不相上下。伙計,請注意,我這里只在說惡意或善意代碼,可并沒僅限于計算機代碼喲。實事上,如今代碼已被植入了幾乎所有通信、控制類設(shè)備之中,絕不再是電腦的專利了。
你看,若佛能使無人駕駛汽車,在滿大街自如穿梭,那魔就能讓車中的你魂飛魄散,或下河,或砸鍋;若佛能讓機器美女溫良恭儉讓,魔就能讓她打滾撒潑,讓你不得活;佛能使衛(wèi)星上天,魔就能讓火箭轉(zhuǎn)彎;佛能讓飛機自動續(xù)航,魔能讓機長撞墻;佛讓數(shù)控車床精準加工,魔讓機器失控發(fā)瘋;佛讓你輕松轉(zhuǎn)賬,魔讓你無法上網(wǎng);……若佛能送你上天堂,那魔就可送你下地獄,讓你這輩子白忙。
總之,從惡意代碼的作惡能力來看,只有你想不到,沒有它做不到;你若今天想到,也許明天它就能做到?;镉?,真不是我嚇唬你,還是讓事實來說話吧:
聽說過波斯帝國嗎?對,就是現(xiàn)在的伊朗!它可不得了啦:中東霸主,亞洲經(jīng)濟強國,石油出口總量世界第二,聯(lián)合國創(chuàng)始成員,軍隊人數(shù)全球第9,懸在以色列頭上的一把尖刀;除了核武器,其它殺手锏應(yīng)有盡有……。更可怕的是,它公開宣稱有權(quán)開發(fā)、利用核技術(shù),而且,濃縮鈾的提純進展突飛猛進,眼看就要逼近原子彈了。嚇得猶太鄰居寢食難安,無計可施:若像多年前對付另一緊鄰敘利亞那樣,派飛機把工廠炸掉吧,又怕惹怒對方,收不了場;想送幾個特工去施美人計吧,結(jié)果傳統(tǒng)長袍一穿,縱然是楊貴妃,妹妹魅力也瞬間煙消云散,只剩下那對滴溜溜轉(zhuǎn)的兩眼睛,誰看都一樣;想策反幾個特務(wù)吧,結(jié)果保安太嚴,全然近不了身;無奈之下,趕緊求助山姆大叔吧,卻也只是徒增一位嘆氣的伙伴,因為,在核電站背后,還橫刀立馬,矗立著一頭巨獸,北極熊!
怎么辦呀,怎么辦?!突然,“一休哥”靈光乍現(xiàn),終于想出了一條妙計:請惡意代碼幫忙嘛!
但是,核電站與世隔絕,根本沒接通因特網(wǎng),無法遠程入侵;工廠內(nèi)部的設(shè)施結(jié)構(gòu)等一點也不知;要害在哪,如何攻擊,連門都摸不到;總之,雖然能找到東、南、西,可就是找不到北!
不過,有幾點可以肯定:廠內(nèi)一定有電腦,靠算盤是不可能建設(shè)核電站的,而且很可能用了視窗操作系統(tǒng),畢竟全世界的電腦幾乎都在用微軟嘛;要么有內(nèi)部局域網(wǎng),要么至少某臺電腦上有U盤接口;當然還會用工業(yè)控制系統(tǒng),否則咋能提純核原料呢,而世界主流的工業(yè)控制軟件也就只那幾家,不難一網(wǎng)打盡。于是,僅僅基于這幾條猜測,“一休集團”經(jīng)過努力,開發(fā)出了現(xiàn)在叫“震網(wǎng)”的那幾行惡意代碼,就無聲無息地將伊朗的核電站給搞癱了:1/5的離心機報廢、約3萬終端被感染、監(jiān)控錄像被篡改、放射性物質(zhì)被泄漏,危害不亞于切爾諾貝利核電站事故……。終于,伊朗被迫關(guān)閉核電站,并于2015年7月14日,承諾永不尋求獲取核武器。
其實,惡意代碼“震網(wǎng)”能夠成功的關(guān)鍵,是它同時調(diào)用了幾個所謂的“零日漏洞”,即,新發(fā)現(xiàn)的還未被他人惡意利用過的軟件漏洞,或軟件缺陷。這幾個漏洞分別叫RPC遠程執(zhí)行漏洞、快捷方式文件解析漏洞、打印機后臺程序服務(wù)漏洞、內(nèi)核模式驅(qū)動程序漏洞、任務(wù)計劃程序漏洞。如果你搞不懂這些漏洞的細節(jié),也沒關(guān)系;形象地說吧,這幾個漏洞家伙,既分工又合作:有的打掩護感染U盤;有的四下偵探,尋找攻擊目標;有的假冒長官,向其它電腦發(fā)號施令,讓它們胡作非為;有的蒙騙操作人員,讓他們以為平安無事;有的消除痕跡,讓網(wǎng)絡(luò)巡警麻痹大意,甚至事后都找不到蹤跡,至今也不知“一休”是何方神圣。終于,一場精妙絕倫的科幻電影,就這樣實實在在地,被幾行代碼就給演繹了。
雖然“震網(wǎng)”被吹噓成無比精準的“網(wǎng)絡(luò)導(dǎo)彈”,但實際上,它在攻擊伊朗核電站時,還是造成了大面積的誤傷,比如,感染了全球超過45000臺電腦;其中,伊朗遭受的損失最為慘重(占60%),同時,也殃及印尼、印度、阿塞拜疆、巴基斯坦,甚至連美國的某些電腦也被躺槍,真是“子彈不長眼睛”呀!
“震網(wǎng)”雖然也許是,專門為攻擊伊朗核電站量身打造的,但是,千萬別以為它的歷史使命已經(jīng)結(jié)束。其實,它還能進入多種工業(yè)控制軟件,并奪取一系列核心生產(chǎn)設(shè)備的控制權(quán);能夠攻擊石油運輸管道、發(fā)電廠、大型通信設(shè)施、機場等多種工業(yè)和民用基礎(chǔ)設(shè)施;能夠威脅鋼鐵、汽車、電力、運輸、水利、化工、石油等核心領(lǐng)域。雖然它對你口袋里的那幾個銀子不感興趣,但是,還是要提醒你,別被惡意代碼盯上,否則,你將成為免費提款機。
如果說伊朗還不夠強大,還有某些全球或地區(qū)超級大國膽敢聯(lián)合起來,用惡意軟件修理它,破壞它的國家戰(zhàn)略,搗毀“伊朗夢”;那么,美國怎么樣?!它可是全世界拳頭最硬、錢包最鼓、底氣最足、脾氣最暴躁的世界警察兼老大喲。美國的網(wǎng)絡(luò)攻防水平無與倫比,而且還常?!奥芬姴黄揭宦暫?,不該出手也出手”;比如,前幾年,人家“金總書記”才剛有點不服氣,它就稀里嘩啦,用惡意代碼把朝鮮全境的網(wǎng)絡(luò)給“墻”了。美國還曾經(jīng)像潑婦那樣,叉腰擺擂,對天發(fā)誓:誰要是從網(wǎng)上攻擊我,老子就導(dǎo)彈侍候!請問,哪個國家敢說半個“不”!結(jié)果怎么樣?還不是常常被惡意代碼,給打得鼻青臉腫,滿地找牙嗎!遠的不說,就說上個月吧:
不知山姆大叔得罪了何方神圣,2016年10月22日凌晨,只聽得一聲慘叫,美國域名服務(wù)器管理服務(wù)供應(yīng)商Dyn倒在了血泊中,捂著胸口,吐出最后一口氣道:我被DDOS攻擊了……!頓時,半個美國的網(wǎng)絡(luò)癱瘓,東海岸的許多網(wǎng)站斃命,能說得出姓名的著名網(wǎng)站,諸如Twitter、Tumblr、Netflix、亞馬遜、Shopify、Reddit、Airbnb、PayPal和Yelp等都橫尸街頭。陰風瑟瑟,網(wǎng)友鬼哭狼嚎;鬧市變墳場,互聯(lián)網(wǎng)直接從天堂墜入擴建后的第十九層地獄。
DDOS
啥叫DDOS攻擊呢?DDOS就是“分布式拒絕服務(wù)攻擊”的簡稱(在本章結(jié)束時徐志摩的《再別康橋》詩中,我們將更加簡單地稱為“拒服攻擊”)形象地說,它意指黑客借用惡意代碼,從世界各地,無償雇傭了一大批“農(nóng)民工”,讓他們同時擠向Dyn公司的大門,使其水泄不通;于是,Dyn便無法像以往那樣,出門向正常客戶提供服務(wù)了。
據(jù)事后權(quán)威調(diào)查,本次這批“農(nóng)民工”,人數(shù)多達上千萬,主要包含被惡意代碼控制了的常規(guī)設(shè)備,其中,幾百萬主力是物聯(lián)網(wǎng)中的“智能家居”產(chǎn)品,沒準還包括你家的冰箱或電視呢。不信你就回家去審問一下,看看它們是否曾經(jīng)被惡意代碼變成過“僵尸”,被人指揮著,糊里糊涂地在人家Dyn門口靜坐過。
為啥Dyn一死,其它眾多公司就會亡呢?這就是由該公司的特殊使命所決定的了,它可不像一般燒餅鋪,關(guān)門幾天后,顧客可以改吃油條。Dyn提供的是“域名服務(wù)器管理服務(wù)”,也就是說,它是網(wǎng)絡(luò)連接的中轉(zhuǎn)站。想想看,中轉(zhuǎn)站都關(guān)門了,農(nóng)貿(mào)市場都倒閉了,你買賣雙方還有啥好瞎忙的,只能歇業(yè)嘛。你也許會很聰明地建議:為啥不多搞幾個中轉(zhuǎn)站?!伙計,如果滿世界都是農(nóng)貿(mào)市場了,城管還夠用嗎,還不亂套了嗎!
雖然美國國土安全部和FBI等機關(guān),現(xiàn)在都在忙著尋找兇手,并研究惡意代碼到底是如何出招,是不是屬于違法行為等;但是,我們只想強調(diào)的是:像世界超級大哥這樣的鐵漢,都會被莫名其妙地調(diào)戲,更不用說你我等普通小弟、小妹了。你說惡意代碼,它還不夠惡嗎!
那么,惡意代碼為什么能有這么惡呢?這就得從電腦說起了:
電腦由硬件和軟件兩部分組成,前者決定了它的體力,后者決定了它的智力。軟件的具體表現(xiàn)形式,其實就是稱作代碼的東西,它們不過只是一些邏輯命令而已,讓電腦第一步這樣,第二步那樣,……等等。電腦也很聽話,指令讓它干什么,它就干什么;讓它做好事,它就做好事;讓它做壞事,它就做壞事;甚至讓它自殺,它也會毫不猶豫地遵令行事。雖然人類一相情愿地,將做好事的代碼稱為善意代碼,簡稱為代碼;將做壞事的代碼稱為惡意代碼,但是,從電腦角度來看,它們都是代碼,都是應(yīng)該一視同仁地執(zhí)行的命令。
對于人類想要做的任何事情,只要能夠被分解成一連串邏輯指令,即代碼,那么,電腦就能夠完成任務(wù);只不過,有時會因為“體力”不夠,致使完工時間會很長,甚至拖延到猴年馬月。
如果人類本來是想做善事,那么,他們完成相應(yīng)的(善意)代碼后,便可敲鑼打鼓、名正言順地將這些代碼,植入現(xiàn)行的所有電腦和其它設(shè)備中,讓它們?yōu)槿祟愒旄!H绻腥吮緛砭褪窍胱鲪?,那么,他們完成相?yīng)的(惡意)代碼后,便只能偷偷摸摸、神不知鬼不覺地,將這些惡意代碼植入目標設(shè)備中,讓它們行兇。這正應(yīng)驗了王陽明的心學(xué)四訣:無善無惡心之體,有善有惡意之動;知善知惡是良知,為善去惡是格物。
在當今信息時代,電腦已不再是過去那種,方方正正的盒子了:從形態(tài)上,它們已經(jīng)千變?nèi)f化,既可大如房屋,也可小如芝麻;從擺放的位置來看,既可以攤在桌上辦公,又可以植入電表、車船、手表等幾乎所有電子和電器設(shè)備中,甚至還可以植入你的體內(nèi)。因此,凡是電腦可以做的事情,即,(善意)代碼可做的善事,都可以由惡意代碼,轉(zhuǎn)換成惡事。這就是惡意代碼“其惡無邊”的理論根據(jù)。
僅僅從代碼的角度來看,編寫惡意代碼更容易,編寫善意代碼更難,因為,善意代碼的目標是要把某些工作做成,而惡意代碼則是要把這些工作搞砸;而普遍規(guī)律是:敗事容易,成事難。當然,善意代碼也有自己的優(yōu)勢,特別是善意代碼之間,原則上是互相協(xié)調(diào)、互相幫助的,并且后來者可以獲得先前代碼的主要細節(jié),甚至前輩和后生們,可能同心協(xié)力來把事情做好。
惡意代碼的優(yōu)勢和劣勢,卻幾乎與善意代碼完全相反。其優(yōu)勢是,只需要把事情搞砸就行了。其劣勢是,一方面,目標系統(tǒng)的已有(善意)代碼,不會主動配合,當然,如果事先已被埋入的“間諜”代碼除外;另一方面,即使是惡意代碼已經(jīng)被成功植入目標系統(tǒng),操作(善意)代碼的用戶,也不會主動去點擊明知是有害的按鈕。
為了克服惡意代碼的天生劣勢,黑客必須花大力氣,做下面這兩件事情:
其一,讓被攻擊的對象代碼,配合惡意代碼來攻擊自己。猛地聽起來,這好像是天方夜譚一樣,世界上哪有這種傻瓜?!別說,還真有,沒準你就是。為什么會出現(xiàn)這樣怪事呢?
主要原因有三個:
1)冗長的(善意)代碼肯定是人編的,是人就一定會犯錯誤,哪怕他再認真,工作再負責。據(jù)統(tǒng)計,平均每千行代碼,就會出現(xiàn)10-20個錯誤。而這些錯誤當中,有些雖不關(guān)痛癢,但有些卻可能是重大缺陷,或稱為致命漏洞;比如,在前面“震網(wǎng)”案例中,就是有五個這樣的致命漏洞,被黑客發(fā)現(xiàn)并利用了。
2)編寫(善意)代碼的目的是“把事情做成”,而不是“剛好把事情做成”,所以,已有的(善意)代碼難免還會有“余熱”可被利用,使得黑客可趁機為非作歹。類似的情況,在我們?nèi)粘I钪幸矊乙姴货r,比如,本來用于切菜的工具,也可發(fā)揮余熱,用來殺人,這顯然防不勝防。
3)在電腦看來,它并不區(qū)分善意或惡意代碼,只要是代碼,它就遵令而行。
其二,將惡意代碼植入目標系統(tǒng),并按時啟動“爆炸”按鈕。這又是一道初看起來,無法解決的難題。不過,別急,人性始終是有弱點的;充分利用這些弱點,就沒有辦不成的事!解決該難題的法寶,就隱藏在一門名叫“社會工程學(xué)”(本書將有專門章節(jié)來論述)的學(xué)問中。
例子
利用“好奇害死貓”定律,總有某個用戶會自愿點擊有害按鈕,將惡意代碼下載到自己的電腦中;然后,該“活雷鋒”會通過網(wǎng)絡(luò)將此惡意代碼,幫你傳遍其親朋好友;又比如,總有許多機會,你的電腦會落入他人手中(修理環(huán)節(jié)、外出辦公、遺失、被盜等),于是,把事先準備好了的“內(nèi)應(yīng)”或“定時炸彈”植入你的電腦,且不是易如反掌嗎?還比如,許多聯(lián)網(wǎng)終端本來就在野外(特別是眾多傳感器設(shè)備),黑客當然有大把的時間,來做自己想做的事情;退一萬步講,就算你是鐵板一塊,如何保證你身邊的所有人都不是木板一塊呢?!
所以,惡意代碼只要能克服其劣勢,那么,它的危害程度,怎么說也都不過分了。
惡意代碼的代表
惡意代碼肯定不是一根獨苗,而是一個龐大的家族,甚至已經(jīng)形成了一個個黑色部落。為突出重點,我們只介紹幾種“罪大惡極”的代表:
1病毒
病毒,全稱“計算機病毒”,光聽這名字就讓人不寒而栗,不得不聯(lián)想起那埃博拉病毒、馬爾堡病毒、漢坦病毒、拉沙熱病毒、狂犬病病毒、天花、登革熱等。媽呀~,好可怕!沾上則死,碰到就亡呀!
其實,如果把生物病毒比喻成惡意代碼,那么,細菌就可以比喻為普通(善意)代碼;有缺陷或漏洞的代碼,就約等于被感染的細菌了。別看細菌個頭小,它們可是自然界中分布最廣、個體數(shù)量最多的有機體,是大自然中,物質(zhì)循環(huán)的主要參與者。除了細菌專家外,普通百姓都嚴重忽略了細菌為人類做過大量好事,比如,若沒有細菌的發(fā)酵,就沒有奶酪、泡菜、醬油、醋、酒等美食;細菌還能降解多種有機化合物,從而幫助人類處理廢水,清潔環(huán)境污染等;細菌還能發(fā)電、增強腸胃的消化功能;細菌還能充當個體識別的“指紋”,因為,每個人身上的細菌都各不相同。當然,與帶漏洞的(善意)代碼類似,細菌一旦被感染,其危害相當嚴重,比如,熟知的破傷風、傷寒、肺炎、梅毒、霍亂和肺結(jié)核等的病因,都是細菌感染。
計算機病毒是惡意代碼的祖師爺,其家族形成已快70年了,不過其破壞力一點也不顯老;而且還時不時地,表現(xiàn)出返老還童的跡象。它雖然不是生物病毒,但是,在行為特征方面,與其同名惡友相比,有過之而無不及,比如,傳播性、隱蔽性、感染性、潛伏性、可激發(fā)性、表現(xiàn)性等破壞性一個也不少,也能自我繁殖、互相傳染和激活再生等。它能夠像寄生蟲那樣,把自己附著在各種類型的文件上,當文件被復(fù)制或在網(wǎng)上傳播時,病毒也就隨同文件一起快速蔓延。由于其獨特的復(fù)制能力,而且還很難從正常文件中將其切割,所以病毒對資源的消耗和破壞能力都很強,并且不易根除。
有一個事實,可能被長期忽略了,本章在此借機提醒一下,但愿有用。那就是,維納創(chuàng)立《賽博學(xué)》(過去稱為《控制論》)的終極目標本來是:研制出能夠自我繁殖的機器!而能自我繁殖的計算機病毒,不正是這個終極目標的一個里程碑嗎!當軟件已能自我繁殖之后,如果今后某天,硬件也能自我繁殖了,那么,《賽博學(xué)》的初心就實現(xiàn)了。
自1949年馮·諾伊曼預(yù)見到了病毒可能性;1986年,該家族的第一個成員以“大腦”為名,在巴基斯坦誕生;次年,其弟弟“小球”和“石頭”等降世;隨后,計算機病毒就越生越多,并開始為害全球,一發(fā)不可收拾了。
按其感染策略,病毒家族可分為如下兩支:
非常駐型病毒,它由偵察尖兵連和主力部隊組成。一旦摸清了敵情,病毒們便一哄而上,有的感染文件,有的繁殖自身,有的趕緊作惡,然后撤退。
常駐型病毒,它隱藏在受害者的“體內(nèi)”,一旦時機成熟,比如,當操作系統(tǒng)運行某個特定的動作時,病毒們就像癌癥細胞那樣,不斷分裂,不斷復(fù)制自身,不斷感染并消耗系統(tǒng)資源,不斷作惡。甚至有時,它們還竟然能將殺毒軟件都給感染了,這真是膽敢“在太歲頭上動土”!為了不被殺毒軟件發(fā)現(xiàn),它們也學(xué)會了“靜若處子,動若脫兔”。
當然,與生物分類的多樣性類似,病毒也有千奇百怪的分類法,比如,按照破壞性的大小,可分為良性病毒、惡性病毒、極惡性病毒、災(zāi)難性病毒;按照傳染方式,可分為引導(dǎo)區(qū)型病毒、文件型病毒、混合型病毒、宏病毒;按照連接方式,可分為源碼型病毒、入侵型病毒、操作系統(tǒng)型病毒、外殼型病毒;按照病毒存在的媒體,可分為網(wǎng)絡(luò)病毒、文件病毒、引導(dǎo)型病毒以及它們的混合;按照病毒傳染渠道,可分為駐留型病毒、非駐留型病毒;按照實現(xiàn)的算法,可分為伴隨型病毒、蠕蟲型病毒、寄生型病毒、練習型病毒、詭秘型病毒、變型病毒等。如果你記不住這么多病毒名稱和分類,也沒關(guān)系;只要你知道“病毒很多,離它們遠一點”就行了。
2蠕蟲
蠕蟲,是我們要介紹的第二種典型的惡意代碼,這倒不是因為它的名字聽起來特別惡心,當然,確實很惡心:想想看,糞便肉蛆或毛毛蟲,僅靠肌肉收縮著,在你脖子上爬呀爬呀,蠕來蠕去,你有啥感覺?!
此處單獨為蠕蟲立小傳,主要是因為,作為病毒的一種,歷史上它們確實太作惡多端了。如果你喜歡聽新聞,那么,下面這些臭名昭著的家伙,都是其家族成員:莫里斯蠕蟲、美麗殺手、愛蟲病毒、紅色代碼、求職信、Sql蠕蟲王等等。
不過計算機蠕蟲病毒,還真能夠像生物蠕蟲那樣,既可無限再生,又可迅速傳播。蠕蟲病毒是能夠獨立作戰(zhàn)的“自包含程序”,它能將其自身功能的全部或部分,傳染到網(wǎng)上的其他終端。與一般病毒不同,蠕蟲不需要寄生到宿主代碼上,就能開始干壞事了。
蠕蟲主要包括主機蠕蟲和網(wǎng)絡(luò)蠕蟲,前者完全包含在其運行的主機中,并且通過網(wǎng)絡(luò)將自身拷貝到其他終端。一旦它完成拷貝動作后,就會自殺,讓其克隆物繼續(xù)作惡;因此,在任何時刻,都只有一個蠕蟲拷貝在運行。蠕蟲病毒對一種特有的漏洞,行話稱為“1434端口漏洞”,情有獨鐘。蠕蟲有時也會換一個比較好聽的名字,叫野兔。
3僵尸
僵尸,這又是一個讓人膽戰(zhàn)心驚的名字。雖然字典對僵尸的解釋,“僵硬的死尸”,顯得很中性;但是,電影、電視、小說和故事等對僵尸的演繹,就陰森恐怖了:想想看,在某個月黑風高的夜晚,當你路過八寶山時,只聽見密林中,“咚~咚~咚~”,不時傳出陣陣怪響?;貞浧鹎疤靹倓偵系醯睦贤酰情L長的紫色舌頭,在你眼前晃呀~晃呀~。你倒吸一口涼氣,緊了緊衣服,加快步伐,目不斜視,想盡早沖出墳場野地。突然,一陣陰氣從背后襲來,你下意識一回頭,只見幾條鬼影,直著膝蓋就朝你快速蹦來。你轉(zhuǎn)身剛要想跑,結(jié)果一抬頭,卻見另一條僵尸擋住了去路!“媽呀~”一聲還未說出口,你的頭就被生吞了!
關(guān)于僵尸,還有另一種傳說:過去交通十分不暢,客死他鄉(xiāng)的外地人,如何才能“落葉歸根”呢?于是,便產(chǎn)生了一種特殊的職業(yè)“趕尸”,即,把死者的尸體運回老家。據(jù)說,這些從業(yè)者,也稱為“趕尸者”,會念一種恐怖的魔咒;深夜,僵尸們只要一聽到這種魔咒,便會蹦著僵硬的膝蓋,自動往家跳;黎明,當?shù)谝槐殡u叫時,僵尸們便又躺下不動了。
雖然僵尸病毒并沒有傳說中的僵尸那么可怕,但是,勸你也別輕視它。
僵尸病毒,又稱為僵尸網(wǎng)絡(luò),它通過“互聯(lián)網(wǎng)中繼聊天服務(wù)器(IRC)”來控制一大群計算機;其實,此時這些所謂的“計算機”已不再是計算機了,它們應(yīng)該更形象地被稱為“僵尸”,因為,它們早已失去了獨立的行動能力,而只能聽由“趕尸者”,即黑客,指揮。只要黑客一念咒語,叫干什么,成群結(jié)隊的僵尸就干什么;只要黑客一叫停,它們就會立馬原地躺下不動,隱藏起來。回憶一下,在前面美國Dyn遭受攻擊的案例中,“趕尸者”一下子就把上千萬的“僵尸”,趕到了公司的服務(wù)器門口。所以,僵尸病毒往往被用來,發(fā)起大規(guī)模的網(wǎng)絡(luò)攻擊,如,DDoS和海量垃圾郵件等。同時,黑客還可以隨時取用“僵尸計算機”中的信息,竊取大量機密;就像趕尸者可以隨時掏取僵尸衣袋,取走銀子那樣。
因此,無論從網(wǎng)絡(luò)安全運行,還是從用戶數(shù)據(jù)保護方面來說,僵尸都極其危險。然而,試圖發(fā)現(xiàn)一個僵尸網(wǎng)絡(luò),卻是非常困難的;因為,黑客通常遠程、隱蔽地控制著,分散在全世界網(wǎng)絡(luò)上的“僵尸主機”,而這些主機的用戶卻并不知情。目前,僵尸已經(jīng)成為互聯(lián)網(wǎng)上,黑客最青睞的作案工具之一了。據(jù)不完全統(tǒng)計,歷史上,包括金融、能源、政府等部門在內(nèi)的,全球近百萬家機構(gòu)和個人,都曾經(jīng)被僵尸蹂躪過,涉及190多個國家,尤以美國、沙特阿拉伯、埃及、土耳其和墨西哥等為甚。
針對手機用戶,僵尸的攻擊更加傳奇。輕者,其手機被莫名扣費、朋友被廣告短信深夜騷擾;重者,存款泡湯、為害八方。手機僵尸的擴散特點很像傳銷組織,一級感染一級,時間越長,被感染和控制的手機也就越多,呈指數(shù)級爆炸型增長。即使是電信運營商,也很難發(fā)覺這種僵尸,更甭說普通用戶了。而且,它還在不斷變異。有些變異后,竟然能夠在關(guān)機或鎖定的情況下,讓手機仍然自動發(fā)送信息;甚至,還能反過來將“試圖殺死它的殺毒軟件”給滅了!
4特洛伊木馬
我們要介紹的第四種惡意代碼,總算有一個不太壞的名字,木馬,或全稱“特洛伊木馬”。
對古希臘感興趣的讀者朋友,也許知道這樣一個故事:
傳說很久~很久~以前,在殖民地特洛伊,有一位王子,名叫帕里斯。他來到希臘,在斯巴達王,墨涅拉俄斯,的皇宮中做客。并受到了麥尼勞斯的盛情款待,但是,這位王子(帕里斯)太不地道,竟然反客為主,拐走了主人家麥尼勞斯的老婆,海倫。朋友妻不可欺!于是,麥尼勞斯和他的兄弟阿伽門農(nóng),決定討伐特洛伊。由于特洛伊城池堅固,易守難攻,結(jié)果十年未能如愿。終于,一個英雄,奧德修斯,獻計:讓邁錫尼士兵燒毀營帳,登上戰(zhàn)船離開,造成放棄攻城、撤退回家的假象,并故意在城下留下一匹巨大的木馬。特洛伊人不知是計,便把木馬當作戰(zhàn)利品拖進城內(nèi)。結(jié)果,當晚正當特洛伊人酣歌暢飲、歡慶勝利時,藏在木馬中的邁錫尼士兵悄悄溜出,打開城門,放進早已埋伏在城外的希臘軍隊;于是,一夜之間特洛伊城化為廢墟,老婆是否“物歸原主”也不得而知。
現(xiàn)在人們常用“特洛伊木馬”來表示“害人的禮物”,或比喻“在敵方陣營里埋下伏兵”或“里應(yīng)外合的計謀”。黑客也將借用該計謀的一種惡意代碼,取名為“特洛伊木馬”,或簡稱為“木馬”。
木馬,也稱木馬病毒。它通過特定程序(木馬程序)來控制另一臺計算機,因此,又有點像是一個主人(控制端),遠遠地牽著一匹馬(被控制端)。木馬與一般病毒不同,它不會自我繁殖,也并不刻意感染其他文件,相反它卻要盡量別動,貓在那里,盡量偽裝自己,別引起外界的注意,讓某個倒霉蛋在不知不覺中,將其植入自己的電腦,使其成為“被控制端”。待到?jīng)_鋒號響起后,黑客在控制端發(fā)出命令,于是“隱藏在木馬中的士兵”就開始行動,或毀壞被控制端,或從中竊取任何文件、增加口令,或瀏覽、移動、復(fù)制、刪除、修改注冊表和計算機配置等,甚至遠程操控那位倒霉蛋。
僅從行為上來看,木馬與網(wǎng)絡(luò)中常見的“遠程控制軟件”很相似,只不過,后者是“善意”的,是為了遠程維修設(shè)備或遙控等正當活動,因此不需隱瞞;木馬則完全相反,隱蔽性不強的木馬毫無價值;這再一次應(yīng)證了:邪惡最怕陽光。
木馬病毒并不像其原型“特洛伊木馬”那么巨大,甚至可容納許多士兵,相反,它十分精巧,運行時也不需太多資源,因此若無專用殺毒軟件,就很難發(fā)現(xiàn)它的蹤跡。它一旦啟動,就很難被阻止,因為,它會將自己加載到核心軟件中,系統(tǒng)每次啟用,它就自動開始運行;干完壞事后,它還會立刻隱形(自動變更文件名),或馬上將自身復(fù)制到其他文件夾中,還可以不經(jīng)用戶準許就偷偷獲得使用權(quán)。
木馬發(fā)展史
木馬家族人丁興旺,至今已經(jīng)N世同堂了,包括但不限于,第一代,祖爺爺,主要通過電子郵件竊取密碼;
第二代,好心辦了壞事的意外產(chǎn)物,能實現(xiàn)遠程訪問和控制;
第三代,利用畸形報文傳遞數(shù)據(jù),使其查殺識別更難;
第四代,隱藏技巧大幅度提高;
第五代,升級為驅(qū)動級木馬,甚至可干掉其天敵(殺毒防火墻);
第六代,不但能盜取和篡改用戶敏感信息,而且威脅最新的身份認證法寶:動態(tài)口令和硬證書。等等。
木馬的種類
從種類上看,名目繁多的木馬,也讓人眼花繚亂。像“網(wǎng)游木馬”和“網(wǎng)銀木馬”等這樣的木馬,單從名稱上就能猜出其大概。
另外,還有下載類木馬,專門負責從網(wǎng)上獲取其他病毒程序或安裝廣告軟件;
代理類木馬,它拿倒霉蛋當“跳板”,以被感染用戶的身份進行破壞活動,既能隱藏自己,又更能嫁禍于人;
FTP木馬,它可進行最高權(quán)限的上傳和下載操作,竊取受害者的機密文件;
通訊軟件類木馬,包括發(fā)送消息型(通過即時通訊軟件自動發(fā)送含有惡意網(wǎng)址的消息)、盜號型(盜竊即時通訊軟件的登錄賬號和密碼)、傳播自身型;網(wǎng)頁點擊類木馬,它能惡意模擬用戶點擊廣告等動作,在短時間內(nèi)便可產(chǎn)生數(shù)以萬計的點擊量。
普通個人用戶,應(yīng)該如何防范惡意代碼呢?
好吧,作為忠實讀者,既然您已經(jīng)耐著性子,看到此處,快看完本章了,那我現(xiàn)在就教您幾招吧,但愿有效。
第1招,永遠不要執(zhí)行任何來歷不明的軟件或程序,除非您確信自己的防毒水平已登峰造極;
第2招,永遠不要相信你郵箱不會收到含有惡意代碼的郵件;
第3招,用電郵給朋友發(fā)軟件時,記得叮囑對方先查毒,因為,在你電腦上不發(fā)作的病毒,沒準在朋友電腦上就復(fù)活了;
第4招,永遠不要因為對方是你的好朋友,就輕易執(zhí)行他發(fā)過來的軟件或程序,因為你無法確信他是否安裝過病毒防火墻,也許你的朋友中了黑客程序還不知道,還以為是什么好東西寄來與你分享呢!
第5招,千萬不要隨便留下你的個人資料,因為你永遠不會知道是否有人會處心積慮地收集起來,用于今后找你麻煩;第6招,千萬不要輕易相信網(wǎng)絡(luò)上認識的新朋友,因為“在網(wǎng)絡(luò)上,沒有人會知道你是一只狗!”你無法判斷,對方是否想把你當做實驗品;等等。
最后,讓我們借用著名詩人徐志摩的《再別康橋》,來歸納并結(jié)束本章。
悄悄的我走了,
正如我悄悄的來;
我悄悄一動手,
就劃走你的錢財。
你電腦的秘密,
是夕陽中的新娘;
騎上無形的木馬,
瘋狂奔向我心房。
軟件上的蠕蟲,
悠悠的在網(wǎng)上招搖;
在互聯(lián)的世界里,
你甘心不如菜鳥!
那云端下的一潭,
不是清泉,是病毒宏;
揉碎在代碼間,
正為你沉淀著噩夢。
尋夢?像一只僵尸,
向青草更青處漫溯;
滿載一船嘍啰,
在拒服攻擊里放歌。
但你不能放歌,
悄悄躲著淚流成河;
夏蟲也為你沉默,
沉默因今晚的事故!
輕輕的我走了,
正如我輕輕的來;
我抹一抹蹤跡,
不帶走一片云彩。
來源:http://wap.sciencenet.cn/blogview.aspx?id=1014544

提交