インストールする可能性のある他のアプリケーションからsshキーなどの特定の重要なプライベートデータを保護するためにどのような方法を使用できますか?
これらのファイルへのアクセスをブロックし、他のアプリケーションのアクセスを制限する方法はありますか?アプリケーションが私のデータの一部をコピーしてソフトウェアの作成者に送り返す可能性がある場合が心配です。
アプリケーションを分離したり、そのアクセスを制限したりするためにどのような保護方法と手順を実行できますか?または、インターネットからソフトウェアを「信頼」することはできないため、使用したいソフトウェアに対して何らかの完全な監査を行う必要があります。信頼できるWebサイトからのものである場合。
そのようなことが起こらないようにするにはどうすればよいですか?そのツールがインターネット接続を必要としない場合は、ファイアウォールでそのツールのすべてのポートをブロックしますか?おそらく、デフォルトですべてのポートをブロックするようにファイアウォールを構成します。
しかし、そのツールがインターネット接続を必要とする場合は、今の例についてはよくわかりません。
それとも、私はあまりにも偏執的であり、ツールがデータを盗んでいたというニュースがない限り、ツールは安全であると想定する必要がありますか?それで、それについてグーグル検索をするだけですか?
あなたがそれを監査する技術的能力を持っていない限り、あなたはインターネットからのランダムなコードを信頼することはできません。あなたが続ける必要があるのは、他のユーザーの間でのそのソフトウェア作者の評判と、バイナリを示すために作者によって提供された検証方法(ハッシュ、署名、トランスポート用のSSL証明書など)だけです。
作成者またはバイナリがマシンに到達する方法を信頼していない場合は、悪意があると見なす必要があります。
あなたが暗示したように、コードをサンドボックス化する方法があります。たとえば、your.sshディレクトリについて話します。特権が制限されており、有効なsshキーへの読み取りアクセス権がない別のユーザーアカウントでツールを実行できます(Webサーバーは制限されたユーザーアカウントでそのまま実行する必要があります)。その後、本番アカウントから出力ファイルを使用する前に、ツールからの出力ファイルを監査できます。
あなたがどれほど妄想的であるべきかは、何が危険にさらされているかによって異なります。これがAlexa100サイトまたは銀行の本番サーバーである場合は、最初に何を実行するかを確認せずにコードを実行することを検討するべきではありません。これが開発テストである場合VM内部ネットワークからファイアウォールで保護されており、イメージを再作成する必要があるかどうかは気にしない場合は、少し注意が必要です。
自分のマシンを使用していて、十分なメモリがある場合、最も安全な(100%安全ではないことに注意してください)方法は、信頼できないと思われるコードに対してvmを起動しすぎます。メモリの制約が大きい場合は、おそらくDockerコンテナーはニーズに合うかもしれませんが、最近のCPUでの最近の投機的実行のバグにうんざりしています。