貓捉老鼠遊戲升級:利用匿名網絡的下一代僵屍網絡將更難防範
什麼是僵屍網絡(Botnet)?僵屍網絡就是在互聯網上相互對話的計算機程序。很多僵屍網絡都是惡意的,往往會進行發送垃圾郵件、發動DDoS攻擊這樣的事情。
遏制惡意僵屍網絡氾濫是一場全球性的運動。第一代僵屍網絡往往是由Web上面的單台計算機控制的,因此只需找到控制主機並將其幹掉即可。如果殭屍程序裏面包含有與控制主機的通信信息的話,順藤摸瓜就可以直搗老巢。
不過,道高一尺魔高一丈。近年來這場貓捉老鼠的遊戲開始變得非常複雜。僵屍網絡現在開始不斷地想方設法隱藏控制主機的位置。方法之一是快速稀釋,即創建一長串(數百甚至數千個)IP地址,然後讓這些地址同時指向同一個域名。而控制主機的實際IP地址可以是其中的任意一個,而且還會經常變換。哪怕你順藤摸瓜好不容易追到控制主機的IP了,它可能已經換了。如此,狡兔三窟令追捕者疲於奔命。
而且最近僵屍網絡還開始利用Tor網絡的匿名性來加大難度。再加上比特幣這樣不可跟蹤的電子貨幣的出現,導致網上的勒索行為愈發的難以追溯,哪怕錢付出去了也無法追索。
美國波士頓東北大學的Amirali Sanatinia和Guevara Noubir認為,僵屍網絡最重要的的創新將會發生在匿名性的利用方面。而洋葱路由(onion routing)技術則是利用匿名性的關鍵。所謂的洋葱路由,是指將消息封裝進不同的加密層當中,要想還原消息,就得一層層地進行解密,其過程就像剝洋葱一樣。
在洋葱路由中,消息從源到目的地的發送過程中會經歷一系列的服務器傳遞,每個服務器只能拆包解密一層數據,然後獲知下一站的目的地,這個過程持續到最後一層揭開時,消息即抵達最終目的地。這個過程的匿名性體現在,除了最終目的地以外,中間的服務器無人知道消息是什麼(因為是加密的)。
Sanatinia和Noubir把利用洋葱路由技術的下一代僵屍網絡命名為OnionBot(洋葱殭屍),並解釋了洋葱殭屍怎樣才能最好地利用洋葱路由技術。等等,這不是助紂為虐嘛。幸好,他們同時也提供了抵消這類僵屍網絡的辦法。
其基本思路是以其人之道還治其人之身。利用洋葱殭屍自身的能力(比方説IP地址與宿主的解耦)來對付洋葱殭屍。其手段是首先利用受感染主機或蜜罐系統找出殭屍機器的洋葱地址(.onion address);然後注入攻擊程序,以此為跳板滲透入僵屍網絡,找出鄰接的殭屍主機;接着不斷複製被控制的殭屍主機,每次新的克隆體都會與鄰居殭屍主機建立一條點對點連接,同時斷開該鄰居的某一條原有的連接關係,這樣下去直到鄰居殭屍被克隆體完全包圍起來,所有原有連接都被斷開,從而成為孤島。這個過程不斷反覆就可以抵消僵屍網絡的作用。
當然,研究者坦誠這一名為肥皂攻擊(Sybil Onion Attack Protocol ,SOAP)的辦法並不能100%阻止洋葱殭屍的攻擊,但是他們提出這一辦法可以拋磚引玉,讓大家主動提前去思考如何防禦將來可能出現的新型僵屍網絡的攻擊。感興趣者可以下載他們的論文看看。
[消息來源:technologyreview.com]
資料來源:36Kr