Atlas VPN zero-day vulnerability leaks users’ real IP address
2023/09/05 BleepingComputer — Atlas VPN の Linux クライアントに存在するゼロデイ脆弱性により、Web サイトにアクセスしただけで、ユーザーの実際の IP アドレスが漏えいするという問題が生じている。Atlas VPN とは、WireGuard をベースとした費用対効果の高いソリューションを提供する VPN 製品であり、すべての主要なオペレーティング・システムをサポートしている。ある研究者が Reddit で共有した PoC エクスプロイトにより、Atlas VPN の Linux クライアントにおいて、具体的には最新バージョンである 1.0.3 において、ポート 8076 上で localhost (127.0.0.1) をリッスンする API エンド・ポイントについて、説明が行われている。

この API は、”http://127.0.0.1:8076/connection/stop” を用いる VPN セッションの切断などの、さまざまなアクションを実行するための CLI (Command Line Interface) を提供している。しかし、この API では認証が行われないため、誰もが CLI に対してコマンドを発行できる。それが、たとえ訪問中の Web サイトであってもコマンドを発行できるという。
Atlas VPN API のゼロデイ悪用につながる?
Reddit ユーザーである “Educational-Map-8145” が、Reddit で公開した PoC エクスプロイトは、Atlas VPN Linux API を悪用することで、ユーザーの実際の IP アドレスを明らかにするというものだ。
この PoC は、JavaScript により自動的に送信される隠しフォームを作成し、API エンドポイントである “http://127.0.0.1:8076/connection/stop” に接続するというものだ。
この API エンドポイントにアクセスすると、ユーザーの IP アドレスを隠す Atlas VPN セッションが自動的に終了する。そして、VPN 接続が切断されると、この PoC は “api.ipify.org” に接続して、訪問者の実際の IP アドレスが記録される。
つまり、VPN ユーザーにとって深刻なプライバシー侵害が発生することになる。そのユーザーの、大まかな物理的位置と実際の IP アドレスが公開されるため、追跡が可能となり、VPN プロバイダーを利用する理由の1つが無くなってしまう。
Amazon の Cybersecurity Engineer である Chris Partridge は、この PoC エクスプロイトをテストして確認した上で、IP アドレス漏洩に悪用が可能なことを示すために、以下のビデオを作成した。
Partridge は、「リクエストがフォーム送信として Atlas VPN API に送信されるため、この PoC は Web ブラウザの既存の CORS (Cross-Origin Resource Sharing) 保護をバイパスする。このフォーム送信はレガシー/互換性の理由から CORS の対象外であり、CORS 仕様では、単純なリクエストとみなされている」と語っている。
通常のケースにおいて、CORS は Web ページ内のスクリプトが、オリジン・ドメインとは異なるドメインに対して行うリクエストをブロックする。この悪用の場合は、Web サイトから訪問者のローカル・ホスト http://127.0.0.1:8076/connection/stop へのリクエストが該当する。
しかし Partridge は、「CORS をバイパスするためにフォーム送信を使用すると、Web サイトがフォーム送信からのレスポンスを確認できなくなる。しかも、今回のケースでは、フォーム送信は Linux の Atlas VPN 接続を切断するための、URL へのアクセスだけに使われるため、レスポンスを必要としない」と、BleepingComputer に説明している。。
彼は、「フォームは、すでに CSRF から保護されているはずだ。しかし、今回のケースから分かるように、これは良い仮定ではなく、いくつかの意図しない結果につながっている」と警告している。
今後のパッチで修正を予定
この脆弱性の発見者である Reddit のユーザーは、Atlas VPN に問い合わせたが無視されたという。また同社には、バグ報奨金制度がなないため、公開することが唯一の論理的な選択肢だったと主張している。
結局、公開から4日後に、この問題に Atlas VPN は対応し、報告者に謝罪するとともに、Linux クライアント用の修正プログラムを、可能な限り迅速にリリースすることを約束した。また、Linux ユーザーに対しては、アップデートが利用可能になった時点で通知するとのことだ。
我々のコメント要求に対して、Atlas VPN の広報担当者から、以下のコメントが届いた:
Atlas VPN — 我々は、Linux クライアントに影響を及ぼすセキュリティの脆弱性を認識している。我々はセキュリティとユーザーのプライバシーを非常に重要視しており、可能な限り早急に修正するよう積極的に取り組んでいる。解決後に、ユーザーに対して、Linux アプリを最新バージョンにアップデートするよう通知する予定だ。
この脆弱性は、Atlas VPN Linux クライアント・バージョンの 1.0.3 に影響する。研究者たちが述べているように、この脆弱性により、アプリケーション/ユーザーと VPN ゲートウェイ間の暗号化されたトラフィックが、悪意の攻撃者により切断され、ユーザーの IP アドレスが漏洩する可能性がある。
私たちは、システムのセキュリティ上の脆弱性を特定し対処するという、サイバー・セキュリティ研究者たちの重要な役割を大いに評価している。彼らの活動は、潜在的なサイバー攻撃から身を守る一助となるものであり、この脆弱性を知らせてくれたことに感謝している。今後において、このような脆弱性を回避するために、開発プロセスにおいてより多くのセキュリティ・チェックを実施していく。私たちのサービスに関連する新たな脅威に遭遇した場合には、私たち (security@Atlas VPN.com) に連絡してほしい。— Atlas VPN
このゼロデイ脆弱性は、パッチがリリースされるまで悪用可能であるという性質を持つため、Linux クライアントのユーザーに対しては、代替の VPN ソリューションを検討するなど、早急な対策が強く推奨される。
Atlas VPN にバグ・バウンティ制度があれば、ゼロデイにならなかった可能性があるだけに、ちょっと残念な状況です。とは言え、事後の対応は真摯なものであり、今後も信頼されていくと思われます。よろしければ、VPN で検索も、ご利用ください。

You must be logged in to post a comment.