web-dev-qa-db-ja.com

Windowsサービスのユーザーログインアカウントのパスワードを回復する

Windowsサービスをセットアップするとき、認証に使用するユーザーアカウントと、そのユーザーのパスワードを指定します。 Microsoftは ユーザーアカウント選択のガイドライン で、ドメインユーザーアカウントを使用する場合、

サービスコントロールマネージャー(SCM)がパスワードをレジストリの安全な部分に保存していても、攻撃を受ける可能性があることに注意してください。

彼らはそのような攻撃がどのように見えるかについては言及していません。サービスをホストしているOSの管理者権限が必要だと思います 思われます サービスの開始時にのみパスワードが使用されるため、サービスの再起動が役割を果たす可能性があります。

だから、問題は:ドメインユーザーのパスワードが攻撃の対象であると彼らが言うとき、Microsoftはどういう意味ですか?また、OSの(より最近の)バージョン間に実質的な違いはありますか?

7
fuglede

LSAシークレットにアクセスする1つの方法は、文書化されています ここ

手短に:

  • Enable-TSDuplicateToken関数を呼び出します。

  • 既存のレジストリキーを別の一時キーにコピーします。

  • シークレットを読み取るための関数を呼び出すには、Powershellまたは別のフレームワークを使用します。

NirSoft LSASecretsView ツールを使用することもできます。

確かに、システムの管理者特権を既に持っている必要があります。私が知る限り、最近のバージョンのWindowsには違いはありません(McMattyがすでに指摘した緩和策を除いて)。

4
Royce Williams

したがって、最初に、このアカウントには資格情報のペアがあり、これを抽出すると、ネットワーク全体に追加のアクセス権が付与されます。一部のマシンは、ドメインユーザーがマシンにログオンできるように設定されているか、またはこのアカウントが攻撃者が到達しようとしているマシンにアクセスできます。したがって、このサービスアカウントIDは他のリソースにアクセスできるようになります。

攻撃

以下は、マシンとアカウントに対する攻撃です。ハッシュは、傍受されてオフラインでクラックされるか、パスザハッシュ攻撃で使用されることもあります

ユーザーアカウントの資格情報は、推測可能な弱いパスワードを選択するユーザーを設定する場合もあり、ロックアウト設定(有効になっている場合)によっては、ブルートフォースになる可能性があります。

与えられたシステムまたは管理者権限を与えられた攻撃者は、mimikatzを実行してサービスアカウントから資格情報を抽出しようとする可能性があります。

緩和策

管理されたサービスアカウントを使用できる場合に他のドメインリソースへのアクセス許可を必要とするサービスの場合-これにより、コンピューターによって管理およびローテーションされるため、パスワードの側面がなくなります。

https://docs.Microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd560633(v = ws.10) =

Windows 10およびServer 2016の資格情報ガード。 LSAから資格情報を抽出するmimikatzおよびその他のメモリベースの攻撃の機能が削除されます。

https://blog.nviso.be/2018/01/09/windows-credential-guard-mimikatz/

0
McMatty