Friday, January 30, 2015

[How To] Tor Browser Bundle:匿名網路瀏覽器

現在如果提到匿名網路,最廣為人知的大概就是洋蔥路由(The Onion Router),當初美國海軍為了建立一個不被監聽的網路以保護政府通訊而贊助Tor Project,其隱匿性之高連NSA內部的簡報檔:Tor Stinksa(完整版由衛報提供)都認為要辨識Tor的使用者困難重重,在透過人工一一比對之後能真正成功辨識出的使用者也只佔了極小的比例。這樣的一個特性使得Tor受到許多人士的歡迎,包括非得經由Proxy連上網路的使用者、ISP受到國家權力監控的人民、還有從事高度隱匿性工作的人,或許不久的將來台灣人也會面臨不得不使用Tor的處境。

講那麼多,那使用者到底要如何才能使用Tor上網呢?早期使用者需要經過一系列的設定才能順利讓瀏覽器連上Tor,這對End User而言是一道很高的門檻,但是現在Tor Project已經推出以Firefox ESR(這是什麼?)為基礎的專屬瀏覽器:Tor Browser Bundle(簡稱TBB),使用者只需要到Tor Project的網站下載解壓縮以後,就可以立即使用而無須繁複的設定。

更新:更新網路設定、從BridgeDB取得Bridge的教學,以及更多的Hidden Service清單。

基本資訊

注意事項

  1. 為什麼無法使用Google?我相信這是使用者剛開始用TBB時最不習慣的地方,其實道理很簡單,因為每個出口節點(Exit Nodes)同時有許多的使用者在共享,因此自然會判定該IP對Google有異常的流量。雖然沒辦法使用Google,但另一個知名搜尋引擎Bing.com並未禁止Tor的使用者,而另一個因為隱私權爭議而崛起的匿名搜尋引擎DuckDuckGo也是不錯的選擇。

  2. 不要使用TBB連上Facebook(Facebook有提供Tor專用的.onion網址)、G+等社群網站:我想大家或許還有印象,有段時間Facebook和Google帳號被盜用的相當嚴重,因此讓這兩家公司先後推出兩階段是驗證的服務,同時若帳號登入的地點出入太大,就會暫時禁止該帳號的活動以確保資料安全,而使用Tor的話很可能因為這點而遭到Facebook與Goolge禁止帳號活動,因此務必注意。

  3. 不要透過Tor使用P2P:會提出這點並非基於法律的考量,只是Tor的結點都是由使用者自願提供,同時會有許多使用者共享,若使用P2P會影響到其他使用者且造成自願提供者的困擾,因此切勿這麼做。

  4. 不要用TBB來點擊Google Adsense廣告,NSA當初就是用DoubleClickID來辨識TBB的使用者。

  5. 相信很多人很好奇,為什麼TBB不安裝其他Ad-blockingc或Anti-tracking的擴充套件?FAQ中是官方這樣回應:「Tor Browser aims to provide sufficient privacy that additional add-ons to stop ads and trackers are not necessary. Using add-ons like these may cause some sites to break, which we don't want to do?. Additionally, maintaining a list of "bad" sites that should be black-listed provides another opportunity to uniquely fingerprint users. 」簡而言之,這麼做違反了Tor的初衷,另外維持黑名單,可能讓有心人士有機會產生一組Tor用戶專屬的fingerprint,導致tor使用者被辨識出來,因此官方不願意這麼做。但我個人傾向安裝Ghostery來防止網路追蹤,只是在使用的時候會採全部封鎖的方式,不會另外允許某些特定tracking,這部分由使用者自行判斷。

  6. TBB的更新通常與安全性與隱匿性的修補有關,因此務必保持TBB在最新版本,否則會失去使用TBB的意義。

網路設定

在剛安裝好Tor Browser Bundle的時候,會出現NetWork Setting的視窗,一般的使用者其實直接選擇Connect就可以開始使用,但我們這裡就稍微介紹一下Configure的部分

一開始Network Setting會問你是否有經過Proxy,這裡請依照使用者自身的狀況做選擇,一般家庭用戶連線是沒有經過Proxy的。

如果你上一步點選「是」,下一步就會要求使用者輸入Proxy相關資訊。

假設是否有經過Proxy那個問題選擇「否」,下一個問題是:你的網路服務提供者(ISP)是否有封鎖或監視與Tor網路之間的連線?這裡官方的建議是這樣,如果你無法確定這個選項的答案,那請你選擇「否」。假如使用者選擇「是」,那接下來會被要求設定Tor Bridge,這會使得到Tor網路的連線更難被ISP封鎖,但相對的是比其他Tor使用者犧牲掉更多的連線速度,對此Tor Project團隊在官方文件中提到一種可行的解決方案,那就是透過BridgeDB來獲得Tor Bridge。

接下來,使用者需要選擇使用的Bridge,官方建議使用obfs3,但另外還有Meek-amazon和Meek-azure(微軟)以及Meek-google,至於使用哪一個就由使用者自行決定,如果是在中國的使用者Meek-google自然不會是選項。

按下連線之後就是等待了

成功連線到Tor之後,會顯示如下圖般的About:tor頁面,但如果失敗About:tor就會是紅色的。

如果不滿意方才的網路設定,使用者在Tor Browser的畫面,點一下Tor洋蔥的圖示,然後選擇"Opne Network Settings"這個選項。

這樣就可以依照自己的需求調整設定了!

透過BridgeDB來獲得Tor Bridge

前面提到,為了使得網路監控更加困難,Tor的使用者會透過Tor Bridge來連上Tor網路,但是有Tor Bridge使用經驗的使用者應該很清楚,Tor Bridge的連線品質不是一個慘字足以形容的,對此問題Tor Project團隊建議使用者上BridgeBD取得Birdge來改善連線品質。

  1. 首先連到BridgeDB的首頁,然後點選一下步驟二:取得橋接(Bridge)
  2. 在取得橋接的頁面,建議使用者選擇obfs3這種Transport類型,在中國的使用者則要注意千萬不可以選擇obfs2。
  3. 為了預防有心人士透過機器人大量取得Bridge,這裡需要輸入驗證碼。
  4. 這就是我這次獲得的三個Bridge
  5. 接下來,在洋蔥瀏覽器點一下Tor洋蔥的圖示,然後選擇"Opne Network Settings"這個選項。
  6. 勾選"My Internet Service Provider (ISP) blocks connection to the Tor network",然後選擇Enter custom bridges,然後將方才取得的Birdge貼上,這樣設定就告一段落了。
    注意:這裡每一個bridge必須獨立一行,否則會無法正確讀取bridge。

瀏覽器設定

雖然Tor Browser Bundle已經順利連接上Tor,但在開始瀏覽網頁之前我們還有其他事情要完成。

  1. NoScript
  2. 相信很多人跟我一樣,剛開始用TBB的時候發現NoScript的預設竟然是允許的!這個疑惑我後來在官網的FAQ中找到答案,Tor Project對這部分的說法是:首先是因為現代有許多網站是需要JavaScript才能正常運作,這樣做會流失掉許多不知道怎麼樣解除JavaScript封鎖的使用者。雖然將封鎖JavaScript作為預設更能保護TBB的安全(這裡就是指NSA幹的那檔事),但這樣一來可能會增加被辨識的風險(透過白名單的Cookies與黑名單的Cookies進行比對),在安全性與隱匿性上TBB選擇了後者。不過就我個人的看法而言,NSA才是TBB被辨識出來最大的風險,因此NoScript應該要預設封鎖JavaScript才是。不過在FAQ中我還得到另一個重要的訊息,那就是TBB現在是可以與Sandboxie相容的,在3版以前的TBB是無法搭配Sandboxie使用的!

    接著我們來NoScript Option,在General分頁找到Automatically Reload affected pages when permissions change,並將這一項打勾,這樣NoScript的許可改變後會立刻重新整理網頁。

    之後在Advanced分頁,找到其中的HTTPS子分頁。在Behavior的地方,有一項是Forbid active web content(主動式內容) unless it comes from a secure connects,這裡選"When Using a Proxy",可以避免主動式內容在非加密連線時洩漏使用者的隱私。

  3. Torbutton
  4. Torbutton Preference的部分,我們直接看到Security Settings分頁:第一項是讓TBB保持在隱私瀏覽模式,第二項則是停用一切瀏覽器外掛(Flash、JAVA),第三項是限制第三方Cookies的存取(所以與G+有關的服務都不能使用了[可參考:])與其他Tracking Data,最後一項則是TBB為了要避免瀏覽器遭到辨識而進行的細部修改。

  5. HTTPS-Everywhere
  6. 在HTTPS Everywhere Preference這裡看SSL Observatory,上半部是對SSL Observatory這個功能進行說明,內文提到啟用該功能的原因有二,其一是可以防止中間人攻擊,其二則是當使用者在不安全連線或遭到攻擊時可以得到警告。因此我建議使用者啟用SSL Observatory這個功能,並且選擇在使用Tor時檢查憑證。

  7. 切換節點
  8. 在TBB裡面最重要的就是使用者能切換節點(IP),但是在新版TBB裡要怎麼做?點一下TBB上Torbutton的洋蔥圖示就可以了,或者對洋蔥圖示按右鍵,然後執行: New Identity

Hidden Service

如果各位還記得我前面所講的,Tor的目的是建立一個不被監聽的網路,但我現在所介紹的TBB只是Client端的部分,其實Tor也提供伺服器的匿名,也就是頂級網域.onion,只是若要存取該隱匿伺服器的內容,Client端也必須要使用Tor才行。這種做法的好處除了隱匿性之外,由於不需要公開的IP,因此在防火牆與NAT背後也可以正常運作。很多Tor使用者其實並非是需要匿名的網路瀏覽,而是受到這些.onion底下的Hidden Service吸引才使用Tor的,畢竟這可是名符其實的地下網路。以下是一些比較有名的Hidden Service:

更多關於.Onion的問題,請自行到http://www.reddit.com/r/onions/找答案。

本著作依據Creative Commons 姓名標示-非商業性-相同方式分享授權條款釋出

內容如有錯誤 煩請不吝指教

19 comments :

HSG said...

限制蠻多的,使用性也下降,一般使用者也不會去碰這個。

Ting-Hsuan Lin said...

沒辦法,Tor的資訊安全是在犧牲許多東西下換來的,至於得失權衡全由使用者自己拿捏。至於我自己嘛...其實還蠻常用到這東西的XD

梧一 said...

有聽說過有假的洋蔥 或者應該說是加料的 該如何分辨?

Anonymous said...

請問怎解安裝此程式?

Ting-Hsuan Lin said...

TBB的安裝實際上只是解壓縮而已,所以如果不想用TBB的話,把資料夾砍掉即可。

Anonymous said...

someone said that it is not safe to browse deep web even you use tor, is that true?

Anonymous said...

你所留下的hidden service 網站全部都上不了, 是否要用tor 才可連上這些網站?

Ting-Hsuan Lin said...

本頁面的Hidden Service必須要使用Tor以後才連得上,用一般的網路瀏覽器是無法連線的。

Anonymous said...

不好意思 想問一下
最近看到一個TOR2WEB服務
是onion.cab
它讓我用GOOGLE CHROME也能上DW
請問這個匿蹤性好嗎??

Ting-Hsuan Lin said...

Tor2Web在首頁有一串警告標語是這樣:
Tor2web only protects publishers, not readers. As a reader installing Tor will give you much greater anonymity, confidentiality, and authentication than using Tor2web. Using Tor2web trades off security for convenience and usability.


簡單來說,Tor2Web的方便性和可用性是犧牲安全性之後換來的,如果使用者將匿蹤和安全性放在首要位置上,自然就不應該選擇Tor2Web而是要以Tor Browser作為瀏覽工具。

黃彥儒 said...

有沒有考慮寫一個tor雙重代理的文章呢?
亦或是tor架站

Timshan Lin said...

Tor跟VPN不同,TOR本身就屬於多重代理了,沒必要再額外掛proxy。至於有沒有想寫架站的文章?我應該會先考慮寫一篇關於中繼點的

Anonymous said...

請問 .onion 通常是甚麼內容的, 是一些正常網絡不被容許的內容, 還是有平常正經東西的?

Anonymous said...

請問下當我用TOR想連到特定網站時`,會跳出這個訊息
If your computer or network is protected by a firewall or proxy, make sure that Tor Browser is permitted to access the Web.
我已經讓防火牆允許TOR執行了,要怎麼辦才好

Nesterov S. said...

安全隱私瀏覽VPN網絡TOR包括!
新的瀏覽器的Globus
VPN+ TOR+防火牆
https://privacybrowser.org/
手機版
https://play.google.com/store/apps/details?id=com.globus.vpn
https://itunes.apple.com/en/app/globus-pro-vpn/id903074490?mt=8

anonymous redcult oliver said...

請問電腦有辦法把proxy改成tor嗎?

像是:用steam時使用tor來連steam(不管是否成功連上)

york.hung said...

"不要透過Tor使用P2P:會提出這點並非基於法律的考量,只是Tor的結點都是由使用者自願提供,同時會有許多使用者共享,若使用P2P會影響到其他使用者且造成自願提供者的困擾,因此切勿這麼做。"

想請教一下,"終點都是由使用者自願提供"的使用者是指裝了TBB client的end user? 還是說是tor公司在各地設的代理伺服器亦或是裝了TBB server的人? 這樣是說我們ISP給我們使用的ip 也會被拿出來共享嗎?

ZIAN LI said...

請教一下為什麼中國的用戶不能用obfs2?

Ryan Wu said...

為甚麼我開啟TOR時跑出意外退出的畫面
unexpectedly exited