Torは、匿名化されたネットワーク接続のために、あらゆるLinuxアプリケーションをTorネットワークを介して安全にルーティングするための新しいコマンドラインツール、Oniuxを発表した。
ユーザー空間のトリックに依存するtorsocksのような古典的な方法とは異なり、OniuxはLinuxの名前空間を使用して、各アプリケーションに完全に隔離されたネットワーク環境を作成し、アプリが悪意のあるものであったり、誤った設定であったりしても、データの漏えいを防ぎます。
Linuxの名前空間はカーネルの機能で、プロセスが分離された環境で実行され、それぞれがネットワーク、プロセス、ファイルマウントなどの特定のシステムリソースの独自のビューを持つことができます。
Oniuxは、カーネルレベルでアプリを分離するためにLinuxの名前空間を使用し、すべてのトラフィックがTorを経由するように強制されます。
「私たちはoniuxを紹介できることに興奮しています。Linuxの名前空間を使ってサードパーティのアプリケーションにTorネットワーク分離を提供する小さなコマンドラインユーティリティです。
「Artiとonionmasqをベースに構築されたoniuxは、あらゆるLinuxプログラムを独自のネットワーク名前空間にドロップシッピングしてTorを経由させ、データリークの可能性を排除する。
これは、各アプリをホストのインターフェイスにアクセスできない独自のネットワーク名前空間に配置し、代わりにonionmasqを使ってTorを経由する仮想インターフェイス(onion0)をアタッチすることで実現する。
また、マウント名前空間を使って、TorセーフDNS用のカスタム/etc/resolv.confを注入し、ユーザー/PID名前空間を使って、最小限の権限で安全に環境をセットアップする。
このセットアップにより、あらゆるLinuxアプリに対して、リーク防止、カーネルによるTorの隔離が保証される。
一方、Torsocksは’LD_PRELOAD’ハックを使って、動的にリンクされたLinuxアプリケーションのネットワーク関連の関数呼び出しを傍受し、Tor SOCKSプロキシを通してリダイレクトすることで動作する。
このアプローチの問題点は、生のシステムコールがTorsocksに捕捉されないことであり、悪意のあるアプリは、リークを引き起こすlibc関数の使用を避けることができる。
さらに、Torsocksは静的バイナリでは全く機能せず、アプリがホストの実際のネットワークインターフェースにアクセスするため、真の分離を提供しない。
Torプロジェクトは、2つのソリューションの質的な違いを強調した比較表を公開している。
oniux | トルソックス |
---|---|
スタンドアロン・アプリケーション | Torデーモンの実行が必要 |
Linuxの名前空間を使用 | ld.soプリロードハックを使用 |
すべてのアプリケーションで動作 | libcを通してシステムコールを行うアプリケーションでのみ動作 |
悪意のあるアプリケーションはリークできない | 悪意のあるアプリケーションは、生のアセンブリを通してシステムコールを行うことでリークできる |
Linuxのみ | クロスプラットフォーム |
新しく実験的 | 15年以上の実績 |
Artiをエンジンとして使用 | エンジンにCTorを使用 |
Rustで記述 | C言語 |
Oniuxの利点は明らかだが、Torはこのプロジェクトがまだ実験的なものであり、複数の条件やシナリオで広範囲にテストされていないことを強調している。
つまり、このツールは期待通りに動作しない可能性があるため、重要な業務での使用は推奨されていない。
その代わりにTorは、Oniuxをテストし、遭遇した問題を報告してくれる熱狂的なユーザーを募集している。
Torプロジェクトはソースコードを公開しており、Oniuxのテストに興味がある人は、まずLinuxディストリビューションにRustがインストールされていることを確認し、コマンドを使ってツールをインストールする必要がある:
cargo install --git https://gitlab.torproject.org/tpo/core/oniux oniux@0.4.0
Torは、.onionサイトへのアクセス(oniux curl http://example.onion), シェルセッションの「torifying」(oniux bash), デスクトップ環境でのTor経由のGUIアプリの実行(oniux hexchat)などの使用例を示している。
.ia_ad { background-color:#width: 95%; max-width: 800px; margin: 15px auto; border-radius: 8px; border:1px solid #d6ddee; display: flex; align-items: stretch; padding: 0; overflow: hidden; }:0; overflow: hidden; } .ia_lef { flex: 1; max-width: 200px; height: auto; display: flex; align-items: stretch; } .ia_lef a { display: flex; width: 100%; height: 100%; } .ia_lef a img { width: 100%; height: 100%; object-fit: cover; border-radius: 8px 0 0 8px; margin: 0; display: block; } .ia_rig { flex: 2; padding:display: flex; flex-direction: column; justify-content: center; } .ia_rig h2 { font-size: 17px !important; font-weight: 700; color:#line-height: 1.4; font-family:margin: 0 0 14px 0; } .ia_rig p { font-weight: bold; font-size: 14px; margin: 0 0 clamp(6px, 2vw, 14px) 0; } .ia_button { background-color:#border:1px solid #3b59aa; color: black; text-align: center; text-decoration: none; border-radius: 8px; display: inline-block; font-size: 16px; font-weight: bold; cursor: pointer; padding:10px 20px; width: fit-content; } .ia_button a { text-decoration: none; color: inherit; display: block; } @media (max-width: 600px) { .ia_ad { flex-direction: column; align-items: center; text-align: center; } .ia_lef { max-width: 100%; } .ia_lef a img { border-radius: 8px 8px 0 0; } .ia_rig { padding:15px; width: 100%; } .ia_button { width: 100%; } .
攻撃の93%を支えるMITRE ATT&CK©テクニック・トップ10
1,400万件の悪意のあるアクションの分析に基づき、攻撃の93%の背後にあるトップ10のMITRE ATT&CKテクニックとその防御方法をご覧ください。
Comments