なぜブラウザベースのファイルツールはデスクトップソフトウェアより安全なのか
ためらう気持ちは理解できる。税務情報が含まれたPDF、あるいはEXIFデータに自宅住所が含まれた写真があって、それをウェブサイトで処理するよう勧められている。デスクトップアプリをダウンロードするのとは違う、何か間違いのように感じる——しかしほとんどの場合、実際はその逆の方が真実に近い。
この記事はその理由を説明する。ブラウザベースのファイル処理が実際にどう機能するか、デスクトップソフトウェアの本当のリスクはどこにあるか、そして——正直に——デスクトップソフトウェアがまだ正しい選択である場合はいつかを解説する。
無料デスクトップソフトウェアの本当のリスクプロファイル
デスクトップアプリをダウンロードする方が安全だと感じるとき、人々はローカルソフトウェアの方がコントロールしやすいという直感に依拠している。ファイルは自分のマシンにある、アプリを実行する、何も出ていかない。この論理は正しいが、インストール前後に何が起きるかをすべて無視している。
無料ダウンロードに同梱されたマルウェア
無料のデスクトップユーティリティは、アドウェア、スパイウェア、資格情報を盗むソフトウェアの最も信頼性の高い配布経路のひとつだ。ビジネスモデルはシンプルだ:開発者が正規ツールをインストーラーに包み、ブラウザ拡張機能、検索ハイジャッカー、あるいはもっと悪いものを静かにインストールする。PDFを変換したかった、それはできた——プラス、ブラウザトラフィックを傍受するソフトウェアも。
これは外れた事例ではない。日常的なことだ。主要なダウンロードポータルや検索エンジンの最初のページの結果でさえ、バンドルインストーラーを定期的に提供する。合法に見える「ダウンロード」ボタンは多くの場合、公式のものではない。
過剰な権限要求
デスクトップアプリはオペレーティングシステムのユーザー権限で実行される。PDFファイルを読むだけが必要なアプリでも、明示的なOSサンドボックスがない場合、技術的には、アカウントがアクセスできるすべてのファイルを読んだり、キーストロークを記録したり、クリップボードにアクセスしたり、バックグラウンドでリモートサーバーに接続したりする能力を持っている。
多くの正規アプリはこれらを一切しない。しかしポイントは、実行ファイルを実行した瞬間に幅広い信頼を与えており、そのバイナリが実際に何をしているかについて通常まったく把握できないということだ。
自動更新がない
2年前にインストールして忘れたデスクトップアプリは、マシン上に既知のパッチ未適用のセキュリティ脆弱性を抱えたまま存在しているかもしれない。自分が何もしなくてもサーバー側で更新されるブラウザベースのツールとは異なり、デスクトップソフトウェアはライフサイクルを積極的に管理する必要がある。
インストーラー自体がリスクの表面
アプリが実行される前でも、多くの場合インストーラーは昇格した権限でマシン上のコードを実行している。改ざんされたまたは偽造されたインストーラーは、文書化された攻撃手法だ。公式ベンダーサイト以外の場所からインストーラーをダウンロードした場合——あるいは公式サイト自体が侵害されていた場合——セットアップ中に悪意のあるコードを実行した可能性がある。
クライアントサイドのブラウザ処理はどう機能するか
一部のブラウザベースのツールは、自分のデバイスで実行されるJavaScript(またはWebAssembly)を使用して、ブラウザタブ内ですべてのファイル処理を完結させる。ファイルはどこにも送信されない。
クライアントサイドツールを使用するとき:
- ファイルを選択する。ブラウザはブラウザのサンドボックス環境でローカルファイルシステムからメモリにそれを読み込む。
- 処理コード——圧縮、フォーマット変換、メタデータ除去——がブラウザタブ内でCPU上で実行される。
- 出力はメモリ上で生成され、再び完全にローカルで、ダウンロードとして提供される。
- タブを閉じると、すべてが消える。
ファイルはネットワーク接続を一切触れない。インターネットトラフィックを傍受した攻撃者は何も見ない、なぜなら何も送信されなかったから。ツールのサーバー運営者でさえファイルにアクセスできない、なぜならファイルがサーバーに到達しなかったから。
ブラウザのサンドボックスはページのコードができることも制限する。デスクトップアプリとは異なり、ウェブページは明示的な許可なくハードドライブから任意のファイルを読んだり、他のアプリケーションにアクセスしたり、セッション間でデータを保持したりできない。
画像からEXIFデータを削除するようなツールはこのように動作できる——メタデータの除去はデバイス上で行われ、クリーンな画像が元のファイルがマシンを離れることなく返ってくる。
サーバーサイド処理はどう機能するか——約束の意味
すべてのブラウザツールがクライアントサイドというわけではない。一部の操作——特に複雑なフォーマット変換や重い計算が必要なもの——はサーバーで処理される。ファイルがアップロードされ、処理され、結果が返ってくる。
ここで人々が合理的な疑問を持つ、そしてそれには率直な答えが必要だ。
「1時間以内に削除」が実際に意味すること
ツールがダウンロード後に設定した期間内にファイルが削除されると言う場合、それはファイルが処理中にサーバーに一時的に保存され、スケジュールに従ってサーバーのファイルシステムから削除されることを意味する。データベースには存在しない。アカウントとは紐付いていない。索引されも検索可能でもない。
実際には、例えばファイルを無期限に保持してアイデンティティと結びつけるクラウドストレージサービスとは、意味深く異なるリスクプロファイルだ。
正当な懸念は:アップロードと削除の間のウィンドウで、ファイルは誰か別の人のハードウェア上に存在する。そのサーバーがそのウィンドウで侵害された場合、ファイルに潜在的にアクセスされる可能性がある。これは本当に機密性の高いもの——弁護士・依頼人特権下の法的文書、NDА下の文書、医療記録——には本物の考慮点だ。大多数のファイル処理タスク——PDFを圧縮するメール添付用、画像フォーマットを変換する、テスト文字列をエンコードする——では、リスクは無視できる。
HTTPSと何を保護するか
すべての評判の良いブラウザベースのツールはHTTPSでファイルを送信し、これはブラウザとサーバー間の接続を暗号化する。これはファイルが転送中にISP、同じネットワーク上の誰か、または中間者攻撃者に傍受されないことを意味する。暗号化はブラウザが処理し、あなたには見えないが、堅牢だ。
アカウント不要は侵害されるアカウントデータベースがないことを意味する
アカウント不要のツールの最も重要かつ過小評価されているセキュリティ上の利点のひとつは、データがユーザーデータベースに保存されないことだ。大規模データ漏洩の大多数は、盗まれたアカウントデータベース——メールアドレス、パスワードハッシュ、アカウントに紐づいた個人情報——を含む。
ツールがアカウント作成を求めたことがなければ、アップロードしたファイルとあなたを結びつけるレコードは存在しない。そのサービスのアカウントデータベースの侵害はあなたを露出させることができない、なぜならそのようなレコードが存在しないから。
並べて比較
どのツールカテゴリも普遍的により安全というわけではない。テーブルはリスクが集中する場所を示しており、それはほとんどの人が想定する場所ではない。
デスクトップソフトウェアがまだ正しい選択の場合
これはブラウザツールが常に優れているという主張ではない。デスクトップソフトウェアが適切な選択である場合があり、それについて正直であることが重要だ。
一貫してオフラインで作業する必要がある
信頼できるインターネット接続なしに大量のファイルを処理する場合、クライアントサイドのブラウザツールは機能する(ブラウザはまだJavaScriptをローカルで実行する)が、サーバーサイドのツールは明らかにそうではない。完全にオフラインで機能するデスクトップアプリがそのワークフローの正しい解決策だ。
非常に大きなファイル
4GBのビデオファイルをサーバーサイドツールにアップロードするのは遅く、接続によっては非現実的だ。デスクトップソフトウェアはネットワーク依存なしに大きなファイルを処理し、一般的にそれに対してより効率的だ。大きなファイルを含むビデオ圧縮のようなファイル処理タスクでは、デスクトップツールの方がパフォーマンスが優れていることが多い。
プロフェッショナルなバッチワークフロー
何百何千ものファイルを繰り返し処理する場合——写真ライブラリ全体に透かしを入れる、ドキュメントのフォルダに同じ変換を適用する——スクリプトサポートを持つデスクトップアプリ(またはFFmpegやExifToolのようなコマンドラインツール)は、どのウェブインターフェースよりも速く、より信頼性が高く、自動化に適している。
サーバーとの接触がまったく許容されない高機密材料
露出の結果が深刻なファイル——進行中の法的手続き下の文書、規制データ要件の対象となる材料、機密の企業情報——については、短い保持期間の適切に運営されたサーバーサイドツールでさえ適切でないと合理的に判断するかもしれない。その場合、エアギャップ環境で実行される監査済みのオープンソースデスクトップツールが正しい答えだ。
ただし、ファイルがデバイスを離れないため、クライアントサイドのブラウザツールはこの場合でも実行可能だ。
ツールを評価する際の注意点
ブラウザベースかデスクトップかにかかわらず、機密データを持つファイル処理ツールを信頼するかどうかを判断する際には、同じ基本的な質問が適用される:
- 誰が作っているか? 実績のある名前の付いた会社や開発者はいるか?
- ビジネスモデルは何か? 無料であれば、どうやって維持しているか?
- プライバシーポリシーは実際に何と言っているか? テレメトリ、アップロードされたコンテンツの分析、またはデータ共有について言及しているか?
- 処理はクライアントサイドかサーバーサイドか? クライアントサイドであれば、ネットワーク接続をオフにしてツールがまだ機能するか確認することで検証できる。
- ソースコードは利用可能か? オープンソースツールの場合、コードを監査できる。
これらの質問はどれも簡単な答えがないが、尋ねることで「ダウンロード=安全、アップロード=リスキー」をデフォルトとするよりも良い判断ができる。
EXIFの類推
ファイルメタデータのプライバシーリスクはここで有用な類推だ。ほとんどの人は写真ファイルに何が埋め込まれているかを考えない——GPS座標、デバイス識別子、タイムスタンプ。リスクは見えない。EXIFデータとは何か、どうやって削除するかについての我々のガイドがこれを詳しくカバーしている。
同じダイナミクスがデスクトップソフトウェアに適用される。リスクは明らかな場所(処理しているファイル)にあるのではない——それを処理するために使うツールにある。静かにホームに電話するアプリ、またはバックグラウンドプロセスを追加するインストーラーは、HTTPS暗号化サーバーを通過してタイマーで削除されるファイルよりずっと持続的なリスクだ。
まとめ
ブラウザベースのファイルツールに慎重なのは間違いではない——ただ間違ったリスクに向けられがちなだけだ。ほとんどのユーザーにとって現実的な脅威モデルは、インストーラーからのマルウェア、過度に広い権限を持つアプリ、侵害リスクを生むアカウントを含む。ブラウザベースのツール、特にクライアントサイドのものは、設計上これらのリスクのほとんどを回避する。
サーバーサイドのツールはより多くの信頼を必要とし、その信頼はファイルの機密性に応じて調整されるべきだ。日常的なドキュメントや画像処理タスクでは、リスクは低い。本当に機密性の高い材料については、クライアントサイドツールまたは審査済みオフラインソフトウェアの両方が適切な選択肢だ。
上記の比較テーブルを出発点として使おう。どのツールについても適切な質問をしよう。そして「ダウンロードしろ、安全だ」という反射と、セキュリティを簡単に聞こえさせるあらゆるツールの両方に対して、適切な懐疑心を持とう。
アカウントを作らずにファイルを処理する。 PDFを圧縮するか写真からEXIFデータを削除するから始めよう——どちらもサインアップなしで動作し、クライアントサイド処理によりファイルはデバイスに留まる。