web-dev-qa-db-ja.com

VSCode拡張機能のセキュリティとプライバシー

VSCodeには多くのNice拡張機能があることがわかります。ただし、これらの拡張機能が私のコードをサーバーに送信していないかどうか心配です。調べる方法はありますか?私はフィドラーを使用して、プラグインから発生している可能性のある呼び出しを分離することができますが、インストールする拡張機能ごとにそれを実行したくありません。これについてVScodeチームからのガイダンスはありますか?

23
shekhar

インストールされているアプリケーション/プラグインが送信するデータの種類(あるとしても)に偏執的である場合は、最初にプラグインのソースコードを1行ずつ調べてから、ある種の設定を行う必要があります。すべてのネットワークトランザクションをログに記録する中間プロキシサーバー。たとえばmitmproxyと適切に呼ばれるツールがあり、これはたとえばiOSネットワークフォレンジックまたは実際には簡単に覗くことができないすべての閉じたデバイスで使用されます。 https://mitmproxy.org

大量の接続データをふるいにかける必要があるため、これは面倒な作業です。良い点は、SSL暗号化通信を介しても、最終的にはどのようなデータがどこに送信されるかを正確に知ることができることです。 mitmproxyは、いくつかの初期セットアップの後、それらの接続の間に配置することもできます。

それ以外は、パーソナルファイアウォールまたは(OSによっては)完全なファイアウォールセットのみをセットアップして、手動で承認された接続以外はすべてブロックできます。

結局のところ、セキュリティ業界で呼ばれているように、それはすべて脅威レベルに依存します。非常に高い運用セキュリティ要件がある場合は、機密情報を処理するマシンからインターネットに接続する必要はありません。代わりにエアギャップマシンを使用して、データを一方から他方に物理的に転送し、いくつかをセットアップします。侵入検知、ヒューリスティックスキャン、物理アクセス制限などの追加の保護手段。

ただし、この種のセキュリティオーバーヘッドは通常、やり過ぎです。評価の高い人気のあるプラグインをインストールする場合は、参加する人数が多いほど、悪意のある動作の可能性がはるかに簡単に検出されるように大きな数の法則が定められているため、おそらく良いでしょう。

セキュリティは非常に複雑でダイナミックなタスクであり、自分で行うか、誰かに代金を支払わなければなりません。また、それは数字ゲーム、または抑止力の1つです。 100%安全なものはありません。十分な時間とリソースがあれば、何でも侵害される可能性があります。このゲームは、成功させることで得られる可能性よりも、ターゲットを危険にさらすことを困難にすることです。セキュリティソリューションとして(Microsoftのような巨人からでも)真っ直ぐに開発されていないオープンソースプロジェクトは、このセキュリティレビューを無料で行うことはできません。

更新:VSCodeが非常に普及するにつれて、邪悪なプラグインの問題が発生します。これは、プラグインアーキテクチャ(WWWブラウザーなど)またはパブリックパッケージマネージャー(npmなど)と同じ問題です。正式な自動および手動のセキュリティレビューがない場合(AppleのApp Storeのように、そしてその膨大な労働力にも関わらず、時々ずれる)、情報セキュリティの観点からすると、これらのシステムはすべて潜在的に有毒です。また、人気のある拡張機能が販売されたり、所有者が変わったりした後に、不正なコードが挿入される可能性もあります。これは、ブラウザプラグインとnpmパッケージで複数回発生しました。拡張機能は、特に企業にとって、かなりの攻撃ベクトルです。開発者は、通常のユーザーよりもはるかに広い範囲でネットワークインフラストラクチャやサービスにアクセスでき、自分のマシンでより高い権限でソフトウェアを実行できます。

結論として:

私はフィドラーを使用して、プラグインから発生している可能性のある呼び出しを分離することができますが、インストールする拡張機能ごとにそれを実行したくありません。

それが当分あなたがしなければならないことと全く同じだと思います。

9
herrbischoff