近期資安事件頻傳,犯罪者為避免遭到追緝,會盡可能地不留下犯罪跡證,例如使用洋蔥瀏覽器(Tor Browser)。為更了解洋蔥瀏覽器的運作原理,本文將說明洋蔥路由的組成及運作,並利用案例實作,使用鑑識工具來進行洋蔥瀏覽器使用之偵測,以掌握並分析犯罪者的動態。
然而,根據路卡交換原理(Locard Exchange Principle),凡走過必留下痕跡,因此越來越多的研究著重於Tor殘留跡證之分析,進而達到去匿名化的調查目的。這裡將利用數位鑑識工具,對比出使用過Tor Browser後,對於客戶端所造成的影響,進一步來取得證實犯罪者有使用Tor Browser進行非法行為的證據。
相關知識介紹
以下說明洋蔥路由的組成及運作、何謂洋蔥瀏覽器(Tor Browser),並介紹鑑識相關工具FTK Image以及HxD。
洋蔥路由的組成及運作
洋蔥路由的組成包括傳送端(Originator或Initiator)、接收端(Responder)、目的端(Destination)、目錄節點(Directory Node(s))、鏈/線路(Circuit/Chain)、入口節點(Entry Node)、出口節點(Exit Node)以及中繼節點(Relay Node(s))幾個部分。
洋蔥路由的運作方式如下所述,首先,其命名緣由在於訊息會經一層一層的非對稱式加密包裝後,形成類似洋蔥形狀的資料結構,其層數取決於到目的端中間會經過的節點數。
其次,每經過一個節點,會將封包加∕解密,因此任一個節點都無法確切知道傳送端與目的端的位置,使發送者達到匿名的效果,其過程可分為「網路拓樸建立」、「連結建立」、「訊息傳遞」、「訊息解密」等四大主要步驟,以下加以說明。
網路拓樸建立
確認網路拓樸已建立,相鄰的網路拓樸有提供長期且穩定的連線的環境。
連結建立
傳送端會由目錄節點所提供的節點目錄中選取一些節點,例如入口、中繼、出口節點。
目錄節點同時也會傳送給傳送端,各個選取節點的公開金鑰,以利後續進行非對稱式加密使用,如圖4所示。
|
▲圖4 目錄節點選取經過。 |
傳送端也會傳送對話金鑰(Session Key)給選取節點,以利後續傳送端與各節點傳送訊息時,所使用的對稱式加密使用。
傳送端將本身的私鑰以入口節點的公開金鑰加密後傳送至入口節點,入口節點接收後進行解密,並將本身的私鑰結合傳送端的私鑰,形成共享性對話金鑰(Shared Session Key),如圖5所示。
|
▲圖5 共享性對話金鑰形成經過。 |
入口節點將所得的共享性對話金鑰進行Hash後,再將其Hash值連同共享性對話金鑰一併回傳回傳送端,如圖6所示。
|
▲圖6 回傳共享性對話金鑰。 |
回傳共享性對話金鑰後,傳送端與入口節點便建立連結。
建立連線後,傳送端可透過此連線傳送加密過的訊息至鏈上的第二個節點,該訊息將只有第二個節點可以解密。
當第二個節點收到此訊息後,便會與前一個節點(也就是入口節點)建立同樣的連線,讓發送者的加密連線延伸到第二個節點,然而第二個節點並不曉得前一個節點在鏈中的身分,如圖7所示。
|
▲圖7 延長鏈結過程。 |
當鏈上節點之連線建立完成之後,即形成與洋蔥一樣一層層的加密結構。
訊息傳遞
洋蔥路由形成後,發送者可透過其傳送資料並保持匿名性,為確保發送者的匿名性,任一節點都無法得知在鏈中自己的前一個節點是傳送端,還是鏈上的另一節點。同理,任一節點也無法知道在鏈中的下一節點是目的端,還是鏈上另一節點。只有鏈上的最後一個節點,知道本身是鏈上最終節點,亦即出口節點。
訊息解密
訊息封包經洋蔥路由層層加密後,傳送至目的端,目的端再層層解密,而其目的端回傳的訊息亦須經此傳遞鏈。
洋蔥瀏覽器(Tor Browser)
洋蔥瀏覽器(圖8)為洋蔥路由的應用,是由Mozilla Firefox ESR瀏覽器修改而成,並由Tor Project的開發人員做了許多安全性和隱私保護的設定調整,為開源軟體,可在多種作業系統上運行,如Windows、Mac OS X、Linux、Unix、BSD以及Android手機,現今亦能於iOS使用,只要下載Tor Browser即可使用。
|
▲圖8 Tor Browser開啟畫面。 |