暗網:Tor(洋蔥路由)的故事

說到暗網,就不得不提到暗網的關鍵系統Tor(洋蔥路由)。它是如何產生的?如何運作的?有哪些特點?本文將為您揭開洋蔥路由的層層面紗。

暗網:Tor(洋蔥路由)的故事

洋蔥路由催生了暗網的產生

1995年,美國海軍研究實驗室的科學家開始開發一套匿名系統,可以避免人們在互聯網上的行跡被追蹤到。由於在該系統中,數據被層層密碼保護,因此這個技術被稱為叫作“洋蔥路由”。該技術最初由美國海軍研究辦公室和國防部高級研究項目署(DARPA)資助。早期的開發由Paul Syverson、Michael Reed和David Goldschla領導。這三個人都是供職美國軍方的數學家和計算機系統的研究人員。“洋蔥路由”的最初目的並不是保護隱私,或者至少不是保護大部分人認為的那種“隱私”,它的目的是讓情報人員的網上活動不被敵對國進行監控。在美國海軍研究實驗室1997年的一篇論文中指出,“隨著軍事級別的通信設備日益依靠公共通訊網絡,在使用公共通信基礎設施時如何避免流量分析變得非常重要。此外,通信的匿名性也非常必要。”該項目初期進展緩慢,到2002年,來自海軍研究機構的Paul Syverson還留在項目裡,兩個MIT的畢業生Roger Dingledine和Nick Mathewson加入了項目。這兩個人不是海軍研究實驗室的正式僱員。而是作為DARPA和海軍研究實驗室的高可靠性計算系統的合同工方式加入的。在後來的幾年裡,這三個人開發了一個新版的洋蔥路由,也就是後來的Tor(The Onion Router)。

對於Tor是如何從軍方走向民間的,有兩種說法。一是研究人員也意識到,不能僅僅讓美國政府自己使用這個系統,那等於向別人表明身份,必須讓其他人也能夠使用這個系統,才能夠實現真正意義的隱藏。因此,Tor面向大眾推出了普通用戶版本,並且允許每個人使用Tor的節點,把政府情報人員的流量與志願者的流量混在一起,以達到隱藏的目的。二是由於美國海軍研究實驗室陷入財政緊缺的狀態,主動終止了對Tor的資金支持並將其開源,後由一個名為電子前哨基金會(EFF)的組織接管了Tor的後續研發和支持。

無論出於何種原因,基於Tor的暗網從此便建立了起來,並日趨龐大。由於Tor匿名的特點,很快得到了大量的青睞,其中不乏異見人士、記者、學生、公司職員等,人們可以在暗網上發表自己的觀點而無需擔心被報復。也正是因為Tor匿名的特點,暗網很快成為毒品、槍支和非法色情交易的溫床。暗網中逐漸出現了很多交易網站,販賣槍支、毒品、違禁藥品、被盜的身份、色情物品,僱傭黑客,甚至僱傭殺手、販賣人口等形形色色的非法交易,如Agora、Silk Road、Evolution等。有些交易網站採用比特幣交易,因此不受傳統金融渠道的控制,並且像我們常用的交易平臺一樣,買賣雙方還能進行評價,甚至提供售後服務。現在,Tor中繼節點已經遍佈全球,每年有近5000萬人次下載Tor,以至於連Tor的發明者都承認“自己也無力摧毀Tor”了。

並非所有暗網都使用了Tor技術,但Tor在暗網的發展歷程中是一個至關重要的部分。目前Tor以志願中繼節點的方式廣泛地部署在Internet中,是Internet中最成功的公共匿名通信服務,目前在全球有超過1600箇中繼節點。

暗網:Tor(洋蔥路由)的故事

Tor是如何隱藏暗網的用戶和網站的

普通的網絡訪問,用戶與服務器之間的記錄都是可以回溯的,理論上說,某個用戶訪問了某個網站,只要網站的系統內部部署了流量監視程序,就能找到這位用戶的IP地址,進而根據行政力量找到他的真實身份。而普通的代理服務器雖然能夠在一定程度上更改訪問來源,但是代理服務器本身卻無法隱藏自己,如果將代理服務器攻陷,就還是能夠找到訪問者的信息,甚至可以利用被攻陷的代理服務器來釣魚陷阱。Tor是如何實現匿名的呢?Tor官網上簡單介紹了Tor的原理。Tor是一個三重代理,Tor客戶端先與目錄服務器通信獲得全球活動中繼節點信息,然後再隨機選擇三個節點組成電路(circuit),用戶流量跳躍這三個節點(hop)之後最終到達目標網站服務器,這樣Tor網絡中就有兩種實體,分別是用戶和中繼節點。當用戶需要匿名訪問網絡時,首先訪問目錄服務器,得到全球的Tor中繼節點的信息,包括IP地址、公鑰、出口策略、帶寬和在線時間等。然後再隨機選擇三個節點組成電路(circuit),分別為入口節點、中間節點和出口節點。在構建電路時,用戶和每一箇中繼節點協商共享的會話密鑰,之後將層層加密的信息發送到電路中,每個中繼節點經過一次解密後,將信息發給下一個節點。這樣,中繼節點中只有入口節點知道通信發起者的身份。中間節點知道通道中入口節點和出口節點的身份,但是不知道匿名通信發起者和接收者的身份。出口節點作為網關負責Tor網絡和外部Internet網絡的應用層連接,並充當加密的Tor網絡傳輸流量和非加密的Internet傳輸流量之間的中繼,知道匿名通信接收者的身份。在這種設計下,電路中沒有任何一個節點知道完整的信息,因此實現了匿名通信。

具體來說,當用戶啟動Tor之後,Tor客戶端會在本機上運行一個Onion Proxy(OP),之後開始和存有全球中繼節點信息的目錄服務器取得聯繫,獲取全球的中繼節點信息。OP獲取到中繼節點信息後,OP會隨機選取三個節點,組成電路,並分別協商會話密鑰。在這個過程中,每層會話都是被加密一次的信息,一直到被三重加密,只有出口節點能看到明文。當電路被確認建立後,才開始發送真正的用戶訪問信息。此外,為了加強安全性,Tor每隔十分鐘就會再重新選擇三個節點以規避流量分析和蜜罐節點。仔細分析這一過程,會發現一個問題,由於出口節點能夠獲得明文信息,因此這個過程中只保障了用戶的訪問不能被攻擊者完全地獲知。也就是說,只保障了用戶訪問表層網絡時的匿名性。而對於想要隱藏自己IP的暗網網站來說,這個方法是不行的,因為出口節點會獲知用戶的訪問請求和服務器的IP地址。那麼,如果用戶匿名訪問暗網網站時,情況又是怎樣的呢?與表層網絡中可以通過URL和域名解析服務器獲得目標網站的IP地址不同,暗網中的服務器IP地址是不能夠暴露的。暗網中有一個類似於DNS功能的分佈式散列表,其中存儲著一些站點的相關信息。在暗網中,想要建立一個網站,首先要隨機選擇幾個介紹點(introduction point),並與之建立電路,方式與前文所述基本一致,因此介紹點並不知道服務器的真實IP。然後服務器組合起一個描述符,裡面包括了公鑰和各個介紹點的摘要,然後用私鑰簽名,最後把描述符上傳到前面提到的分佈式散列表中,網站就建立好了。網站的域名就是一個從公鑰中派生出的16位字符,通常採用頂級域名.onion。

當有人需要訪問暗網站點時,在設置好Tor的瀏覽器中輸入網址,OP就通過電路與分佈式散列表建立連接,開始查詢目標網址的描述符。之後會隨機選擇一個節點作為匯合點(rendezvous point),並生成一個隨機的一次性cookie。OP用站點的公鑰加密cookie和匯合點IP,再把密文發送給介紹點,介紹點接到數據之後就通過Tor電路回傳給服務器。服務器用私鑰解密信息,獲得匯合點IP和cookie,之後通過Tor電路與匯合點建立連接,並回傳cookie。用戶收到cookie之後確認已經和站點建立了連接,之後開始正式訪問該站點。最終在用戶和暗網服務器之前有六個中繼節點,分別是用戶的入口節點、中間節點、匯合點、服務器的出口節點、中間節點、入口節點,並且其上的通信全都是TLS加密的,這樣就同時保障了用戶的匿名訪問和站點服務器IP的隱藏。

暗網:Tor(洋蔥路由)的故事

Tor真的安全嗎

Tor的研究人員很早就意識到,更多的用戶將帶來更好的匿名能力,因此在Tor設計之初,就將易用性和可部署性作為重要目標。他們認為,Tor不應該需要用戶修改任何的應用,不應該需要用戶進行復雜的系統配置,不應該要求用戶修改操作系統。最終,Tor也確實成為一個多平臺的、配置簡單的軟件,因此Tor的使用並不複雜。Tor網絡可以由The Tor Project提供的Tor軟件訪問,Tor是軟件的核心,Vidalia是配合Tor使用的可視化軟件,可以更方便地使用Tor。但是Tor真的絕對安全麼?這可能是每一個使用Tor的用戶關心的問題。首先,Tor是開源的,任何人都可以去驗證Tor中是否存在著後門,而至今沒有後門被發現的報道,但這隻能說明Tor並沒有“故意的不安全”。在2015年的USENIX安全研討會上,麻省理工學院和卡塔爾計算研究所的研究人員表示,通過分析志願人員在獨立電腦上的Tor網絡上進行的加密數據傳輸,攻擊者可以推斷出隱藏服務器的位置,或者通過信息源找到指定的Tor用戶信息。在一個電路的建立過程中,Tor網絡上的計算機們將大量的來回地傳遞數據。研究人員發現,通過一個guard可以很簡單地找到在各個方向上傳遞的數據包流量。利用機器學習算法,就能以99%的準確率分辨出這是一個普通的網頁環路,introduction-point circuit還是一個rendezvous-point。此外,通過使用Tor的電腦連接到一系列不同的隱藏服務,類似於流量分析模式可以以88%的準確率確定這些服務。這意味著一個幸運的攻擊者進入到了隱藏服務的guard的位置時,它將有88%的把握,確定它就是該隱藏服務的主機。而如果一個Tor迴路中使用的是普通的瀏覽器,這一精度甚至可以提升到99%以上。該研究結果也印證了EFF(電子前哨基金)的觀點,在密碼學層面上,是無法被破譯的,最可能的攻擊方式是利用瀏覽器漏洞單邊信道攻擊、用戶錯誤配置、流量相關性攻擊。同時EFF也承認,如果有人能夠同時獲得通信雙方的數據,通過統計的方法,是有辦法確認你的流量的。此外,Tor在設計時的威脅模型是針對單點不可靠情況的,而當某一組織掌握足夠多的節點時,Tor的匿名效果就會大打折扣。因此2011年,在一個有關Tor的安全性的討論上,Tor的開發人員Mike Perry承認,Tor在對付強大的有組織、有能力監控大量互聯網流量的攻擊者(也就是政府)方面並不那麼有效。

即便是在理論層面,Tor能夠保護的也僅僅是用戶匿名的安全,而非用戶數據或信息的安全。出口節點就是一個重大的安全隱患。由於用戶的數據包需要通過出口節點傳送到網絡上,而在Tor網絡中,出口節點是不能被用戶控制的,因此在這些節點上,用戶的流量很容易在不知情的情況下被窺探。瑞典的安全研究人員Chloe通過蜜罐網站測試了Tor出口節點,證實了信息在出口節點確實被竊取了。

所以,並不是在暗網中就可以做到絕對的隱藏身份,前段時間臭名昭著的“絲綢之路”創始人被抓獲就是一個最好的例證。

此外,一方面是技術上的問題使得Tor的安全性受到質疑,而另一方面,Tor來源於軍方項目的身份也使得一部分人相信Tor的匿名完全是一個假象。

據國外媒體報道,Tor項目被美國軍方轉讓後,還一直通過各種相關機構的資助和政府合同受到官方的支持,其中五角大樓的資金資助的項目描述裡這樣描述Tor的,“這是一個在海軍命令、控制、通信、計算機、情報、監控方面的基礎和應用研究項目。”

2013年,華盛頓郵報報道了NSA掌握了破解匿名Tor網絡的若干種辦法,其中提到“根據一份名為‘Tor’的研究論文,從2006年,NSA就在研究如何能夠在大規模網絡上破解匿名流量的不同方法。例如,其中的一種方法可以通過他們的計算機利用Tor網絡的速度變化來分析辨別用戶。從斯諾登解密的NSA文件來看,NSA似乎已經掌握了若干方法,‘比較有把握’”。

事實上,美國的執法機構就曾經抓獲過多起利用Tor網絡的網絡犯罪分子。其中最典型的例子要數2013年年底哈佛大學學生Eldo Kim用Tor網絡發佈炸彈威脅信息被捕的例子。也許是受斯諾登的影響,Kim高估了Tor的“隱身”能力,通過Tor發佈了炸彈襲擊的假警報,試圖以此拖延期末考試的日期,但不幸的是FBI的探員很快就找到了Kim同學。此外,在2013年,美國的執法機構還搗毀了託管在Tor網絡上的兒童色情站Free Hosting和網絡黑市Silk Road,並在2014年搗毀了Silk Road2.0。這些事件本身也說明Tor並不是絕對的安全。

Tor

暗網:Tor(洋蔥路由)的故事

安全防範措施

  • 確保正確的配置了Tor。正確的配置Tor是安全使用暗網的基礎。
  • 不定期的更新。Tor和其它軟件一樣,會出現一些小的bug,所以需要定期更新來解決這個問題。
  • 使用HTTPS。增強終端到終端的加密協議,其中最有用的一般是HTTPS。Tor網站默認支持HTTPS的功能。在你發送任何敏感信息之前檢查一下HTTPS按鈕是否為綠色。
  • 使用匿名服務。您也可以使用不會記錄活動的網站和服務提高你的安全。例如,使用像Duck DuckGo瀏覽器,它有一個服務功能就是不會保留任何關於你信息。你也可以結合Cryptocat加密聊天功能進行私人會話。
  • 避免傳輸個人信息。避免個人信息洩漏的最安全的方式就是在使用的時候就避免發送信息。
  • 避免登錄。和上一條同理,儘量避免使用需要你登錄的網站。

需要注意的問題

  • 不要將其用於BT下載等P2P應用。拋開合法性不談,Tor的轉發節點都是網絡上的志願者們使用自己的服務器和網絡帶寬建立起來的,如果通過Tor網絡來進行鉅額數據的傳輸,會影響服務性能。
  • 不要利用Tor發送垃圾郵件。Tor的加密功能可以幫助實現匿名電子郵件的發送,請不要使用這一功能發送垃圾郵件,給別人造成麻煩。
  • 不要用Tor進行惡意攻擊。由於加密和層層轉發的特性,通過Tor進行攻擊很難被發現,為了Tor可以一直提供服務,請不要將其用於這類違法活動。當然Tor在設計時也考慮到這些問題,具備上述特性的網絡活動很可能會在Tor的內部環路中被過濾掉,不會發送到外網去。
  • 遠離黑暗網絡。


分享到:


相關文章: