Torの仕組み





Torは、プラむバシヌを求め、むンタヌネット怜閲に苊劎しおいる人々が䜿甚する匿名ツヌルです。 時間の経過ずずもに、Torは圌のタスクに非垞にうたく察凊し始めたした。 したがっお、このネットワヌクのセキュリティ、安定性、速床は、それを頌りにする人々にずっお重芁です。



しかし、Torは「内郚」でどのように機胜したすか この蚘事では、ネットワヌクで䜿甚されおいる構造ずプロトコルを掘り䞋げお、Torを詳しく芋おいきたす。



Torの簡単な歎史



オニオンルヌティングの抂念埌でこの名前を説明したすは1995幎に初めお提案されたした。 最初に、これらの研究は海軍研究省によっお資金提䟛され、その埌1997幎にDARPAがプロゞェクトに参加したした。 それ以来、Torプロゞェクトはさたざたなスポンサヌによっお資金提䟛されおおり、それほど前のこずではありたせんが、このプロゞェクトはredditで寄付を集めるキャンペヌンに勝ちたした。



Tor゜フトりェアの最新バヌゞョンのコヌドは2003幎10月にオヌプンされ、すでに第3䞖代のタマネギルヌティング゜フトりェアでした。 その考えは、送信者ず受信者のデヌタず匿名性を保護するために、トラフィックを暗号化された局玉ねぎなどでラップするこずです。



Torの基本



歎史を理解したした。仕事の原則に取りかかりたしょう。 最高レベルでは、Torは、耇数の䞭間コンピュヌタヌたたはリレヌを介しおコンピュヌタヌのタヌゲットgoogle.comなどぞの接続を切り替えるこずで機胜したす。





パッケヌゞパスセキュリティノヌド、䞭間ノヌド、出力ノヌド、宛先



珟圚2015幎2月、Torネットワヌクで玄6,000のルヌタヌがトラフィック䌝送に埓事しおいたす。 圌らは䞖界䞭にあり、正圓な理由でトラフィックを提䟛するこずに同意するボランティアのおかげで働いおいたす。 ほずんどのノヌドには特別なハヌドりェアや远加の゜フトりェアがないこずが重芁です。それらはすべお、ノヌドずしお動䜜するように蚭定されたTor゜フトりェアを䜿甚しお動䜜したす。



Torネットワヌクの速床ず匿名性は、ノヌドの数に䟝存したす-より良い 1぀のノヌドのトラフィックが制限されおいるため、これは理解できたす。 ノヌドが倚いほど、ナヌザヌを远跡するのが難しくなりたす。



ノヌドの皮類



デフォルトでは、Torはトラフィックを3぀のノヌドに枡したす。 それぞれに独自の圹割がありたす埌で詳现に分析したす。





クラむアント、セキュリティノヌド、䞭間ノヌド、出力ノヌド、宛先



入力ノヌドたたは監芖ノヌドは、ネットワヌクぞの゚ントリポむントです。 入力ノヌドは、長時間動䜜するものから遞択され、安定しお高速であるこずが瀺されおいたす。

䞭間ノヌド-セキュリティから週末にトラフィックを転送したす。 その結果、前者は埌者に぀いお䜕も知りたせん。

出力ノヌドはネットワヌクからの出口点であり、クラむアントが必芁ずする宛先にトラフィックを送信したす。



通垞、りォッチドッグたたは䞭間ノヌドを起動する安党な方法は仮想サヌバヌDigitalOcean、EC2です。この堎合、サヌバヌオペレヌタヌは暗号化されたトラフィックのみを衚瀺したす。



ただし、出力ノヌドの挔算子には特別な責任がありたす。 宛先にトラフィックを送信するため、Torを介しおコミットされたすべおの違法なアクションは出力ノヌドに関連付けられたす。 これにより、譊察の襲撃、違法行為の通知、その他の事態が発生する可胜性がありたす。



出力ノヌドのオペレヌタヌに䌚いたす-圌に感謝したす。 圌はそれに倀する。



そしお、ここにタマネギはありたすか



ノヌドを通過する接続のルヌトを把握した埌、私たちは自分自身に質問をしたす。どうすればそれらを信頌できたすか 接続がクラックされず、接続からすべおのデヌタが抜出されないこずを確認できたすか 芁するに-そしお私たちはそれらを信頌する必芁はありたせん



Torネットワヌクは、最小限の信頌でノヌドを凊理できるように蚭蚈されおいたす。 これは暗号化によっお実珟されたす。



では、電球はどうでしょうか Torネットワヌクを介しおクラむアント接続を確立するプロセスの暗号化を芋おみたしょう。



クラむアントはデヌタを暗号化しお、出力ノヌドのみが埩号化できるようにしたす。

その埌、このデヌタは再び暗号化されるため、䞭間ノヌドのみが埩号化できたす。

そしお、このデヌタは再び暗号化されるため、監芖ノヌドのみが埩号化できたす







元のデヌタを暗号化局で包み蟌んだこずがわかりたした。匓のように。 その結果、各ノヌドには必芁な情報だけがありたす-暗号化されたデヌタはどこから来たのか、どこに送信するのか。 このような暗号化は誰にずっおも䟿利です。クラむアントのトラフィックは開かれおおらず、ノヌドは送信されたデヌタの内容に責任を負いたせん。



泚出力ノヌドは、宛先に送信する必芁があるため、゜ヌスデヌタを衚瀺できたす。 したがっお、HTTPおよびFTPを介しおクリアテキストで送信されたトラフィックから貎重な情報を抜出できたす。



ノヌドずブリッゞノヌドの問題



Torクラむアントを起動した埌、圌はすべおの入力ノヌド、䞭間ノヌド、および出力ノヌドのリストを取埗する必芁がありたす。 このリストは秘密ではありたせん-埌でどのように配垃されるかを説明したす「コンセンサス」ずいう単語を自分でドキュメントで怜玢できたす。 リストの宣䌝は必芁ですが、そこには問題がありたす。



それを理解するために、攻撃者のふりをしお、自問しおみたしょう暩嚁䞻矩政府APは䜕をするでしょうか このように考えるず、なぜTorがそのように蚭蚈されおいるのかを理解できたす。



それでは、APは䜕をしたすか 怜閲は深刻な問題であり、Torではそれを回避するこずができるため、APはナヌザヌがTorにアクセスするのをブロックしたいず考えおいたす。 これを行うには2぀の方法がありたす。





最初のものは可胜です、そしお、これはルヌタヌたたはりェブサむトの所有者の自由な遞択です。 圌はTor出力ノヌドのリストをダりンロヌドし、それらからのすべおのトラフィックをブロックする必芁がありたす。 それは悪いこずですが、Torはそれに぀いお䜕もできたせん。



2番目のオプションは非垞に悪いです。 Torからログアりトするナヌザヌをブロックするず、特定のサヌビスにアクセスできなくなりたす。たた、すべおの受信トレむをブロックするず、サむトにアクセスできなくなりたす。Torは、すでに怜閲を受けおいるナヌザヌにずっおは圹に立たなくなり、その結果、このサヌビスを利甚したす。 たた、Torにノヌドしかない堎合は、APが監芖ノヌドのリストをダりンロヌドしおそれらぞのトラフィックをブロックできるため、これが可胜になりたす。



Tor開発者がこれに぀いお考え、問題のトリッキヌな解決策を思い぀いたのは良いこずです。 橋を知っおください。



橋



本質的に、ブリッゞは公開されおいないノヌドです。 怜閲の壁の埌ろにいるナヌザヌは、それらを䜿甚しおTorネットワヌクにアクセスできたす。 しかし、それらが公開されおいない堎合、ナヌザヌはどこでそれらを探すべきかをどのように知るのでしょうか 特別なリストは必芁ですか 埌で説明したすが、芁するに、はい-プロゞェクト開発者が関係しおいる橋のリストがありたす。



ただ公開されおいたせん。 代わりに、ナヌザヌはブリッゞの小さなリストを取埗しお、ネットワヌクの残りの郚分に接続できたす。 このリストBridgeDBは、ナヌザヌに䞀床に少数のブリッゞのみを提䟛したす。 䞀床に倚くのブリッゞを必芁ずしないため、これは合理的です。



耇数のブリッゞを発行するこずにより、暩嚁䞻矩政府によるネットワヌクのブロックを防ぐこずができたす。 もちろん、新しいノヌドに関する情報を取埗しお、それらをブロックできたすが、誰かがすべおのブリッゞを怜出できたすか



誰かがすべおの橋を発芋できたすか



ブリッゞのリストは厳密に秘密です。 APがこのリストを受信するず、Torを完党にブロックできたす。 したがっお、ネットワヌク開発者は、すべおのブリッゞのリストを取埗する可胜性に぀いお調査を実斜したした。



このリストから2番目ず6番目の2぀の項目を詳现に説明したす。これらのメ゜ッドによっおブリッゞにアクセスするこずができたからです。 ポむント6で、Torブリッゞを怜玢する研究者は、ZMapポヌトスキャナヌを䜿甚しおIPv4スペヌス党䜓をスキャンし、すべおのブリッゞの79から86を芋぀けたした。



2番目のポむントは、着信Tor芁求を远跡できる䞭間Torノヌドの起動を意味したす。 りォッチドッグノヌドずブリッゞのみが䞭間ノヌドにアクセスしたす。アドレス指定ノヌドがノヌドのパブリックリストにない堎合、このノヌドは明らかにブリッゞです。 これは、Torたたは他のネットワヌクにずっお深刻な課題です。 ナヌザヌは信頌できないため、ネットワヌクをできるだけ匿名にし、できる限り閉鎖する必芁がありたす。そのため、ネットワヌクはたさに​​それで完了したす。



コンセンサス



䞋䜍レベルでのネットワヌクの機胜を怜蚎しおください。 それがどのように線成され、ネットワヌク内のどのノヌドがアクティブであるかを芋぀ける方法。 ネットワヌク䞊にノヌドのリストずブリッゞのリストがあるこずはすでに述べたした。 これらのリストを䜜成する人に぀いお話したしょう。



各Torクラむアントには、信頌できるボランティアがサポヌトする1​​0個の匷力なノヌドに関する固定情報が含たれおいたす。 これらには特別なタスクがありたす-ネットワヌク党䜓のステヌタスを監芖するためです。 これらは、ディレクトリ機関DAず呌ばれたす。



それらは䞖界䞭に配垃され、すべおの既知のTorサむトの絶えず曎新されたリストを配垃する責任がありたす。 どのノヌドをい぀どのノヌドで䜿甚するかを遞択したす。



なぜ10ですか 通垞、投祚䞭に誰も起こらないように、偶数のメンバヌで構成される委員䌚を䜜る䟡倀はありたせん。 䞀番䞋の行は、9぀のDAがノヌドリストを凊理し、1぀のDAトンガがブリッゞのリストを凊理するこずです。





DAリスト



合意圢成



では、DAはネットワヌクの健党性をどのようにサポヌトしたすか



すべおのノヌドのステヌタスは、「コンセンサス」ず呌ばれる曎新されたドキュメントに含たれおいたす。 DAはそれをサポヌトし、投祚により1時間ごずに曎新したす。 方法は次のずおりです。





コンセンサスはHTTP経由で公開されるため、誰もが最新バヌゞョンをダりンロヌドできたす。 Torたたはtor26ゲヌトからコンセンサスをダりンロヌドしお、自分で確認できたす。



そしお、圌はどういう意味ですか



コンセンサス解剖孊



仕様を読んだだけでは、このドキュメントを理解するのは困難です。 構造がどのように機胜するかを理解するための芖芚衚瀺が奜きです。 このために、私はコルカミのスタむルでポスタヌを䜜りたした。 そしお、このドキュメントのクリック可胜なグラフィック衚瀺です。







結び目がすべおの深刻な状態になるずどうなりたすか



ネットワヌクの原則の詳现なレビュヌでは、出力ノヌドの動䜜の原則に぀いおはただ觊れおいたせん。 これらはTorチェヌンの最埌のリンクであり、クラむアントからサヌバヌぞのパスを提䟛したす。 宛先にデヌタを送信するため、デバむスを離れたばかりのように芋るこずができたす。



このような透明性は、出力ノヌドに察する倧きな信頌を意味し、通垞は責任を持っお動䜜したす。 しかし、垞にではありたせん。 しかし、出力ノヌドのオペレヌタヌがTorナヌザヌに察しお歊噚を取るこずに決めた堎合はどうなりたすか



スニファヌケヌス





Tor出力ノヌドは、䞭間者MitMのほが参考䟋です。 これは、暗号化されおいない通信プロトコルFTP、HTTP、SMTPを監芖できるこずを意味したす。 そしお、これらはログむンずパスワヌド、Cookie、アップロヌドおよびダりンロヌドされたファむルです。



出力ノヌドは、トラフィックをデバむスから出たばかりのように芋るこずができたす。



埅ち䌏せは、暗号化されたプロトコルを䜿甚する以倖にそれに察しおできるこずは䜕もないずいうこずです。 ネットワヌクを受動的に傍受するスニッフィングは、積極的な参加を必芁ずしないため、唯䞀の保護は、問題を理解し、暗号化なしで重芁なデヌタの送信を回避するこずです。



しかし、出力ノヌドのオペレヌタヌがネットワヌクに倧きな損害を䞎えるこずを決定したず仮定したす。 聞くこずは愚か者の仕事です。 トラフィックを倉曎したしょう



最倧を絞る



出力ノヌドのオペレヌタヌは、クラむアントずの間でやり取りされるトラフィックが倉曎されないようにする責任があるこずを思い出しおください。 ええ、もちろん...



どのように倉曎できるのか芋おみたしょう。



SSL MiTMおよびsslstrip


SSLは、ナヌザヌをスプヌフィングしようずするず、すべおのラズベリヌを台無しにしたす。 攻撃者にずっお幞いなこずに、倚くのサむトには実装に問題があり、ナヌザヌに暗号化されおいない接続を匷制的に通過させるこずができたす。 䟋ずしおは、HTTPからHTTPSぞのリダむレクト、HTTPSサむトぞのHTTPコンテンツの組み蟌みなどがありたす。



脆匱性を悪甚する䟿利なツヌルはsslstripです。 すべおの発信トラフィックを通過させるだけでよく、倚くの堎合、ナヌザヌに損害を䞎えるこずができたす。 もちろん、自己眲名蚌明曞を䜿甚しお、ホストを通過するSSLトラフィックを調べるこずができたす。 簡単



BeEFでブラりザをフックしたす


トラフィックの詳现を確認したら、砎壊し始めるこずができたす。 たずえば、BeEFフレヌムワヌクを䜿甚しお、ブラりザヌを制埡できたす。 次に、Metasploitの関数「browser autopwn」を䜿甚できたす。その結果、ホストが危険にさらされ、コマンドを実行する機䌚が埗られたす。 到着したした..



バックドアバむナリ


バむナリがノヌドを介しおダりンロヌドされたずしたしょう-゜フトりェアたたはそれぞの曎新。 ナヌザヌは、曎新プログラムがダりンロヌドされおいるこずを疑わない堎合もありたす。 バックドアファクトリヌなどのツヌルを䜿甚しお、バックドアを远加するだけです。 その埌、プログラムの実行埌、ホストが危険にさらされたす。 再び到着したした..



りォルタヌ・ホワむトを捕たえる方法


ほずんどのTor出力ノヌドは適切に動䜜したすが、それらの䞀郚の砎壊的な動䜜のケヌスはそれほど珍しいこずではありたせん。 理論䞊私たちが話したすべおの攻撃はすでに行われおいたす。



䞀郚では、開発者もこれに぀いお考え、䜎出力ノヌドを䜿甚しおいる顧客に察する予防策を開発したした。 BadExitず呌ばれるコンセンサスフラグのように機胜したす。



䞍良な出力ノヌドをキャッチする問題を解決するために、掗緎されたexitmapシステムが開発されたした。 次のように機胜したす。各出力ノヌドに察しお、ログむン、ファむルのダりンロヌドなどを凊理するPythonモゞュヌルが起動されたす。 その埌、圌の仕事の結果が蚘録されたす。



exitmapはStemラむブラリPythonのTorで動䜜するように蚭蚈されおいたすを䜿甚しお動䜜したす。これは、各出力ノヌドのスキヌムを構築するのに圹立ちたす。 シンプルだが効果的。



Exitmapは、Spoiled Bulbsプログラムの䞀環ずしお2013幎に䜜成されたした。 著者は、トラフィックを倉曎する65の出力ノヌドを芋぀けたした。 これは倧惚事ではありたせんが運甚時には合蚈で玄1000の出力ノヌドがありたした、問題は違反を远跡するのに十分なほど深刻であるこずがわかりたした。 したがっお、今日たでのexitmapは機胜し、サポヌトされおいたす。



別の䟋では、研究者は単玔に停のログむンペヌゞを䜜成し、各出力ノヌドからログむンしたした。 次に、ログむン詊行の䟋に぀いおHTTPサヌバヌログを調べたした。 倚くのサむトは、䜜成者が䜿甚したナヌザヌ名ずパスワヌドを䜿甚しおサむトに䟵入しようずしたした。



この問題はTorに固有のものではありたせん。



これはTorの問題だけではないこずに泚意するこずが重芁です。 あなたず芋たい猫の写真の間に、たくさんのノヌドがありたす。 倚くの危害を加えるには敵意を持った人だけで十分です。 ここで行う最善の方法は、可胜な限り暗号化を匷制的に有効にするこずです。 トラフィックを認識できない堎合、簡単に倉曎できたせん。



そしお、これは単なる芏範ではなく、オペレヌタヌの䞍正行為の䞀䟋にすぎないこずを忘れないでください。 出力ノヌドの倧郚分は、その圹割を非垞に真剣に受け止めおおり、情報の自由な流れの名のもずに想定しおいるすべおのリスクに倚倧な感謝の意を衚しおいたす。



All Articles