【海の向こうの“セキュリティ”】 第46回:中国のグレートファイアウォールを乗り越える「西廂計劃」 ほか -INTERNET Watch(情報元のブックマーク数)

グレートファイアーウォールの話。これはある意味わが国がやろうとしている、児ポ規制の手法の超進化系なのですな。

中国国内のインターネットユーザーを「有害情報」から守る目的で中国政府が設置した(とされる)「防火長城(The Great Firewall of China、以下GFW)」の話題です。
GFWの技術的な仕様は当然ながら公開されていませんが、中国国内外の研究者らによる調査・分析によれば、単純なアクセス制限(特定IPアドレスへのアクセス遮断)の他に、以下のような仕組みがあるようです。
1)フィルタリング対象のホスト名解決に対しては偽のDNS情報を返す。
2)TCP接続においてフィルタリング対象となる内容を含む通信が行なわれた場合には、クライアントとサーバーにRST(Reset)パケットを送り付ける。
このうち、2)に関しては、サーバー/クライアントともにGFWからのRSTパケットを無視すれば、理論上、TCP接続が切断されることなく継続できることが、以前から指摘されていますが、もちろん、これは現実的な方法ではありません。
一方、これまでも中国国内からGFWを越えて国外のさまざまな情報に自由にアクセスしようという試みは数多くありました。例えば、プロキシーVPNSSHトンネリングなどを使い、国外にある「踏み台」を経由するというものです。しかし、これらの手法の場合、GFWにおいて「踏み台」へのアクセスを遮断されてしまえばおしまいです。また、そもそもこれらの技術はGFWを越えるための技術ではなく、既存の技術を流用しているに過ぎません。

【海外セキュリティ】 第46回:中国のグレートファイアウォールを乗り越える「西廂計劃」 ほか - INTERNET Watch Watch

ステートフルな製品で止めればいいのだが、どうもセッションを持たずに3ウェイハンドシェイクを見ている?!のかな

「西廂計劃」の手法自体は比較的シンプルです。簡単に説明すると、まず3ウェイハンドシェイクの途中で意図的にダミーのパケットを送ることで、GFWに対して当該TCP接続が確立せずに終了したと認識させます。GFWは一度接続が未完で終わった(と判断した)接続に対しては、その後どのようなパケットも素通ししてしまう仕様(恐らくパフォーマンスを確保するため)らしく、これにより実質的にGFWがないかのように通信が行なわれるようになるのです。ただし、これは手法から明らかなように、先ほど紹介したGFWの仕組みのうち、2)を回避できるものであり、特定IPアドレスへのアクセス制限を回避できるものではありません。
なお、「西廂計劃」の手法を実現するツールは当初、Linuxのnetfilterを前提に開発されていましたが、その後、Windows用のツールも開発され、ソースはGPLv2で配布されています。

【海外セキュリティ】 第46回:中国のグレートファイアウォールを乗り越える「西廂計劃」 ほか - INTERNET Watch Watch

screenshot