web-dev-qa-db-ja.com

ログインユーザーとしてWindowsサービスを実行することに大きなリスクはありますか?

Windows 10マシンで管理者(およびログイン)ユーザーとしてサービスを実行することにリスクはありますか?たとえば、パスワードは、マシンに物理的にアクセスできる人がアクセスできる方法でディスクに保存されますか?もちろん、サービスがユーザーとしてコードを実行するリスクもありますが、それがSYSTEMとして実行するよりも悪いかどうかはわかりません。

これをしたい理由については、数百ギガバイトのファイルを [〜#〜] efs [〜 #〜] 、これらのファイルをバックアップしたいと思います。これには、バックアップサービスがファイルを読み取ることができる必要がありますが、SYSTEMユーザーが適切な証明書を持っていないために読み取ることができません。 SYSTEMユーザーの証明書をこれらのファイルに追加することは、その証明書が保存時に基本的に暗号化されないため、最適ではありません。これにより、EFSが提供する可能性のある保護がすべて削除されます。問題のユーザーとしてバックアップサービスを実行すると、ファイルにアクセスできます。

1
laverya

システムサービスを実行するためのユーザーアカウントを指定するには、パスワードを指定する必要があります。

アカウントデータは、キーHKEY_LOCAL_MACHINE\SECURITY\Policy\Secrets\_SC_<ServiceName>の下のレジストリに LSAプライベートデータ として保存されます。このキーへのアクセスは厳密に制御されており、簡単ではなく、データも暗号化されています。管理者でもアクセスできません。

それでも、非常に知識のある人だけがデータをハッキングする可能性があります。フォレンジック処理については、 PowerShellを使用してレジストリからLSAシークレットを復号化する の記事を参照してください。

私の個人的な意見では、保護は良好で、パスワードは十分に安全です。それだけの知識を持っている人がセットアップをそのレベルで制御できるのであれば、サービスパスワードは最も心配する必要はありません。

2
harrymc