Mullvad VPNのセキュリティ監査レビュー
(x41-dsec.de)- X41はソースコードへのアクセスを含むホワイトボックス侵入テストでMullvad VPNアプリを検証し、軽量な脅威モデルもあわせて策定
- 監査対象はAndroid 2024.8-beta1、iOS 2024.8、Desktop 2024.6のコードで、Linux、Windows、macOS、Android、iOSの5プラットフォームでの動作を前提としている
- テストでは6件の脆弱性が発見されたが、Mullvad VPNアプリは報告書の脅威モデル基準で全体的に高いセキュリティ水準を示した
- 最も深刻な問題は、シグナルハンドラの競合状態と時間的安全性違反によるメモリ破損だが、攻撃者が先に別の欠陥でシグナルを発生させる必要があるため深刻度は下がる
- 一部の脆弱性は、隣接ネットワーク上の攻撃者によるユーザー識別情報の漏えいや、特定条件下でのサイドチャネル攻撃につながる可能性があったが、Mullvad VPN ABは修正を迅速に反映した
監査範囲と対象の特性
- X41はMullvad VPNアプリケーションを対象にホワイトボックス侵入テストを実施
- ソースコードへのアクセスがあり、軽量な脅威モデルの策定も含まれていた
- 監査対象のソースコードは以下のバージョン
- 対象アプリは大規模で5つのプラットフォームで動作するため、監査の難度が高い
- 対応プラットフォームはLinux、Windows、macOS、Android、iOS
- Mullvad VPNは定期的に監査を実施しており、既存コードで新たな脆弱性が見つかったことは、製品の複雑性を踏まえて継続的なセキュリティレビューが必要であることを示している
- 成熟した対象では、発見事項がアプリケーション開発チームの直接的な管理や焦点の外にある領域へ移る傾向がある
- OSの動作特性
- 異なるネットワーク層とプロトコルの相互作用
発見結果とセキュリティ評価
- X41のテストでは合計6件の脆弱性が発見された
- Mullvad VPNアプリケーションは、報告書の脅威モデル基準で高いセキュリティ水準を示した
- 安全なコーディングおよび設計パターン
- 定期監査と侵入テスト
- 強化された実行環境
- 最も深刻な脆弱性は、シグナルハンドラコードの競合状態と時間的安全性違反によるメモリ破損
- シグナルハンドラコードがいったんトリガーされると、悪用可能性は低くないとみられる
- ただし、攻撃者は先に別の欠陥を使ってシグナルを発生させる必要があるため、全体的な深刻度は下がる
- 他の脆弱性は、隣接ネットワーク上の攻撃者がユーザーの身元情報を漏えいさせたり、特定条件下でクライアントが現在アクセスしているサイトを明らかにするサイドチャネル攻撃を可能にするおそれがある
- サイドチャネル攻撃の大半は緩和されている
- 例外は、NATや最新HTTPプロトコルの変種のように複数技術の組み合わせから生じるプロトコルレベルの攻撃で、これはMullvad VPN ABの制御範囲外にある
- より高いセキュリティとプライバシーが必要なユーザーは、保護されたVPN内部の難読化技術やプロキシサービスを選択肢にできる
- Mullvad VPN ABは発見事項を迅速に修正し、修正も正常に機能することが監査で確認された
1件のコメント
Hacker News の意見
発見された問題のタイトルは、シグナルハンドラ用代替スタックの不足、非同期安全でない関数の使用、トンネルデバイスの仮想 IP アドレス漏えい、NAT による匿名性解除、MTU による匿名性解除、インストール過程でのサイドローディングなど
全体的にはかなり直感的な内容で、DAITA(AI トラフィック分析防御)にかなり依存している。まだ完全には理解できていないが、さらに読む価値はありそう: https://mullvad.net/en/vpn/daita
OpenSSH でさえ関連する問題があり https://blog.qualys.com/vulnerabilities-threat-research/2024...、明示的な関数カラーリング(function coloring)メカニズムなしでは、どの言語でも良い抽象化を作るのは難しそう
Haskell のような純粋関数型言語なら可能かもしれない
非同期安全でない関数の使用はよくある問題だが、実際の悪用は難しく、シグナルハンドラを扱ったことのある開発者なら、再現が極めて難しいタイミング問題のせいで一度はやってしまうミス
ARP アドレス漏えいは Mullvad 自体の問題というよりローカルネットワークでのみ悪用可能で、匿名性解除攻撃はすべての VPN に当てはまり、さらに匿名化することはできるがコストがかかる
サイドローディングはおそらく最も悪い問題だが、単独では悪用されない
ただし、Rust プログラムのヒープ破損脆弱性を実際に引き起こせる形で見つけたのは良い発見
とはいえ、その次の脆弱性に高い深刻度を付けたのは理論的で、概念実証もなさそうで、メモリ破損でもないため、レーティングのインフレに見える
独立した脅威モデルセクションは、多くの監査会社がレポートで省略する部分
Cure53、Assured、Atredis のような以前の監査者たちも、Mullvad と事前に適切な脅威モデルを立てていたはずだと確信しているが、読者に明示されていないと結果を誤解する余地が生まれる
対象が監査や攻撃方法に発言権を持つと、結果が対象に有利に偏らないようにするのは難しい
最もバイアスが少ない方法は、監査者が何をするのかを対象がまったく知らないことではないかと思う
Mullvad が方法に関与したりテスト範囲を制限したりしたのなら、結果には結局価値がない
OpenVPN サポート終了も自分にはあまり良くなく、それが必要なユースケースがいくつかあるので他へ移る予定
長年よくやってきたところなので残念
ポートフォワーディングの廃止は、対処すべき悪用を大きく減らし、ごく少数の超 nerd なユーザーにしか影響しない
Mullvad でトレントをしばらく使ってきて、シードが少ないトレントはときどき開始まで長くかかるが、最終的には取得できる
もっとマイナーなメディアは、数日前から考えておく必要があることもある
正直、OpenVPN 非対応のプロバイダーはそもそも検討しないと思うし、それなら何の意味があるのかと思う
なぜか自分のルーターでは、サイト間 VPNとしてはずっとよく動き、安定している
man wg)よく動いており、匿名性のために Bitcoin で月単位の購入も可能
何か誤解しているのでは?
ときどき VPN を使っているという事実を隠したいわけではなく、ISP はトンネルを見て、訪問先のウェブサイトは VPN IP を見て、NetFlow には時刻、期間、転送量などが残る
VPN の使用自体は秘密ではない
ほとんどの VPN ユーザーは自分のように、オンライン広告会社やデータ収集会社からのプライバシーを求める普通の人だと思う
VPNプロバイダーからのプライバシーは望んでも期待してもいない
どうせ自分名義のアカウントの家庭用ISPのIPから、そのVPNサービスに接続するのだから
VPNの支払いをどう隠しても、彼らにはあなたが誰なのか分かることになる
技術者、特にセキュリティ系の人たちは、こういう問題で行き過ぎて非現実的になりがちで、現実の脅威モデルやユースケースから離れているように感じる
James Mickensの短い文章「This World of Ours」がこのテーマをうまく扱っている: https://www.usenix.org/system/files/1401_08-12_mickens.pdf
試したVPNアプリの中で最も安定していて、1アカウントあたり最大5台のデバイスまで使える
主張どおりログを保存していないなら、あなたについて何を知っていようと、警察が尋ねているIPは数千人の顧客の誰が使っていた可能性もあるので、望んでも当局に渡せない
何か見落としているのだろうか?
かなり多くのたわごとがあるように見えるし、「イケてる」VPNはスカンジナビア諸国発であるべきだという雰囲気もあるが、実際には大半はそうではない
好意的に見ても本文とは周辺的な関連しかなく、表現が曖昧なので、主題であるMullvadが何か悪いことをしているように聞こえる
Mullvadはスウェーデン拠点だと明らかにしているが、そうではないということなのか?サーバーの所在地と所有者も公開している
VPNをなぜ使うべきか、または使うべきでないかについての情報もかなり提供しており、顧客データを記録せず、RAM専用インフラに移行していて、単一の定額料金で安価だ
正確には何がたわごとなのか、何を違う形にしてほしいのか気になる
なぜそうあるべきなのかも、なぜ事実ではないのかも理解できない
公平に言えば、私が知る強いプライバシー志向のVPNでスカンジナビアではないものはProtonVPNくらいだ
数年前にNordを使っていたとき、接続済みと表示しながら実際にはVPNに接続していないサイレントな失敗を見つけ、報告したら既知の問題なので心配するなという返事を受けた
私の知る限り、彼らはセキュリティ告知を出さなかった
YouTubeやアフィリエイトサイトに莫大な広告費を使っていない点が、むしろ安心材料だ
怪しい会社の避難所のような法域ではない場所にあることも好ましい
要するに、たわごとが少なく、まともに見えるので気に入っている
PIAやそういう会社を信頼できるとは思えない
攻撃的なブロックは悪用のせいではなく、VPNが追跡とデータマイニングにとって実際の問題になったからだとかなり確信している
出口サーバーがどちらか一方では使えるが両方では使えないことが多く、YouTubeとRedditの間である程度IPブロックが調整され、VPN利用を面倒にして抑止しようとしているのではないかと疑っている
VPNユーザーに対してソーシャルメディア間の行き来を邪魔するのは、行動に影響を与える効果的な戦略に見えるし、どちらも事実上の自然独占なので、そうしてもユーザーを失うリスクはほとんどない
クッキーバナーが、データマイニングに有利になるようプライバシー規制に対する人々の感情を変えるために悪用されているのと似ている
技術者の多くでさえ、うっとうしいクッキーバナーはEUのせいだと信じているが、実際の運用は悪意ある遵守だったり、不要だったり、露骨に違法だったりする場合が多い
いずれにせよ本当にうっとうしく、ウェブ全体のエンシッティフィケーションと急速に大きくなる不満の一つの側面のように感じる
事実上好ましからざる人物扱いで、多くのCAPTCHAは単なるブロックなのに、無料の訓練を期待しているように見える