Torの設定によるパスセレク ションの変化 環境情報学部 2年 佐々木 峻 ログイン名 tatti 背景 • 最近、アメリカのNSAはGoogleがyahooなどのWebサービスから情報 を集めているというニュースが流れた。そういったニュースなどから 情報の匿名化ということでTorが注目されている。 • また、遠隔操作事件にもTorが用いられており、Torの悪用事例もいく つか確認されている。 Torの概要 • Torとは、オニオンルーティングを用いた匿名通信方式である。 • SOCKS5プロトコルのプロキシとして動作している。 • オニオンルータ同士の通信にはTLS/SSLv3を用いている。 • 通信の終端は暗号化していないのであくまで通信経路の秘匿が目 的 Torの概要(2) 世界中にあるOnion Router(OR)を中継して、パケットを送受信することによって、 サーバ側からクライアントの身元が分からないようにする。 OR Client OR OR Server OR OR OR Torの動作 Tor clientのAからOR(Onion Router)1,2を通してWeb ServerのBまで通 信する場合 1.AはまずORの情報を保持しているDirectory Serverに対してORのリス トを要求する。 2.Aはそのリストの情報に従って、まずOR1とDiffie-Hellman方式でセッ ション鍵を作成する。 3.Aはそのセッション鍵で暗号化した、次にリレーするノード(OR2)の情 報とOR2とのセッション鍵作成のための値を、OR1に送信する。 4.OR1は受信したデータを復号し、OR2の情報を読み取り、同じくDiffieHellman方式でOR2とセッション鍵を作成する。 Torの動作(2) 5.OR1は作成したセッション鍵を暗号化して、Aに送る。この時点で仮 想回線の構築は完了 6.リクエストはOR1,2の2つのセッション鍵で2重に暗号化して送信する。 そのリクエストを各ノードが復号する。 7.逆にレスポンスはOR1,2が暗号化して、Aが復号する。 参照資料「Tor:The Second-Generation Onion Router」 http://www.onion-router.net/Publications/tor-design.pdf Torに対する攻撃① • 指紋攻撃 攻撃者は特定のwebページの指紋情報(トラフィックのサイズ、分散 など)をデータベースにためておく。そのあと、Tor上を流れるトラフィッ クを監視することで、クライアントが閲覧するWebサイトを特定するとい う攻撃手法 参考文献 匿名通信システムTorにおける指紋攻撃とその対策の検討 ー横山 絵美里 宗 裕文 川端 良樹 久保田 真一郎 岡崎 直宣 Torに対する攻撃② • トラフィック解析攻撃 Torのノードに悪意あるノードを配備し、そのノードにパケットキャプチャさ せて、Tor上を流れるトラフィックを解析することによって、クライアントのIPア ドレスとその接続先を特定するという攻撃 参考資料Tor security advisory: "relay early" traffic confirmation attack https://blog.torproject.org/blog/tor-security-advisory-relay-early-traffic-confirmation-attack Torに対する攻撃③ • パスセレクション攻撃 ②の攻撃の派生で、より少ないリソースで攻撃を成功させようという 攻撃方法。Torのノード選択アルゴリズムを利用し、虚偽の帯域を報告 し、パスを誘導するというもの。 参考文献:Low-Resource Routing Attacks Against Tor University of Colorado 目標 • Torのネットワークの挙動を理解する。 • Torの設定ファイルであるtorrcの設定によってどのように、Torの動作 が変わるのか、実際に見てみる。 • パスセレクション攻撃に対して、設定でリスクを下げられないか試す。 手法 ① Torの設定ファイルである/etc/tor/torrcに設定を書き込む ② そのあと、Torを経由して、10秒ごとにリクエストを送り、ログをとる。 ③ そして、そのログファイルの中からonion_extend_cpath()のログを 抜き取り、回路に使用された入口のノードと出口ノードのIPアドレス を記録する。 logファイル Feb 02 17:07:21.000 [debug] onion_extend_cpath(): Chose router $1B89A79F50A9B3F46A8AB07B14C5662DA3364ED3~4Privacy at 89.163.224.10 for hop 1 (exit is 4Privacy) Feb 02 17:07:21.000 [debug] onion_extend_cpath(): Path is complete: 1 steps long 試した設定 • MaxCircuitDirtness 次のパスを構築するまでの時間 今回は10に 固定 • NumEntryGuards パスに使用するガードノードの数 • GuardLifetime 入口ノードを選ぶとき起動し続けている時間が何日 以上のもの選ぶことができる。 結果 • 設定なし 使用されたノード数 入口ノード 2個 ‘37.187.198.53’ ‘89.163.224.168‘ 出口ノード 83個 最も多く重複してるものでも10回 全 496回 結果② • 設定はNumEntryguard を10に設定 使用されたノード数 入口ノード 7個 それぞれあまり使用回数には差がなかった 出口ノード 169個 なにも設定していないときと同じように使用 頻度はどれもおおむね同じだった。 全594回 結果③ • NumEntryguardを10にしたうえで、GuardLifetimeを10に設定した 使用されたノード数 入口ノード 6個 一つを除き、使用頻度はほとんど差異はなかっ た 出口ノード 143個 一つだけ27回使用されているノードがあった それ以外はおおむね均等に使用されていた。 27回使用されているノードは特別高い帯域を示 していた 全370回 結果④ • NumEntryGuardsの数字は変えずに、GuardLifetimeを1 monthsとせ設定し た。 使用されたノード数 入口ノード 9個 どのノードもほとんど同じ回数使用された。 出口ノード 209個 一つだけ23回使用されたものがあり、そ れ以外はどれも使用された回数は10回以下 だった。回数が多かったノードは特別多い帯 域を示した。 全512回 まとめ • やたらと多く使用されているノードはuptimeの値はそれほど高くない が、bandwidthの値が他よりも特別多くなっている。 • 今回試した設定では,bandwidthによって使用される回数に偏りが生 じてしまった。 • Uptimeによる設定はその時のTor全体のノードにより、反映されづら い 今後 • パスセレクション攻撃を実際に仕掛けてみて、この実験とは逆にど のような設定で攻撃が成功しやすいのかを試すことにより、安全な 設定を探す。 参考文献 • 「Tor:The Second-Generation Onion Router」 http://www.onion-router.net/Publications/tor-design.pdf • TorノードにOpenSSLの脆弱性、通信内容の平文流出も • http://www.itmedia.co.jp/enterprise/articles/1404/18/news046.html How the NSA Attacks Tor/Firefox Users With QUANTUM and FOXACID • https://www.schneier.com/blog/archives/2013/10/how_the_nsa_att.html Tor security advisory: "relay early" traffic confirmation attack • https://blog.torproject.org/blog/tor-security-advisory-relay-early-traffic-confirmation-attack 匿名通信システムTorにおける悪用ユーザ特定手法の検討 • 宮崎大学工学部川端良樹 Predicting Tor Path Compromise by Exit Port • Kevin Bauer, Dirk Grunwald, and Douglas Sicker Department of Computer Science, University of Colorad
© Copyright 2024 Paperzz