web-dev-qa-db-ja.com

Windowsサービスに対する書き込み権限は常に特権の昇格を意味しますか?

環境:

Windows VMでラボペンテストを行うと、LocalServiceとしてシェルが取得されました。 Meterpreterを実行するようにbinpathを変更しました。次に、SERVICE_START_NAMEを「LocalSystem」に変更しました。

sc config upnphost obj= "LocalSystem" password= ""

NT AUTHORITY\SYSTEMとしてリバースシェルを取得しました

これが機能するのは、Localsystemにパスワードが設定されていないためです。このサービスを「ジョン」として実行する場合、ジョンのパスを入力する必要があります。

それで、これは、1つのサービスへの書き込みアクセス権(およびそれを開始する機能)を持つだけで任意のシステムを所有できることを意味しますか? <=> LocalServiceであることは、簡単なシステムを意味しますか?

4
bolachas

これが機能するのは、Localsystemにパスワードが設定されていないためです。

正しくありません。ここでの設定ミスは、サービスオブジェクトに欠落している書き込み保護です。パスワードとは関係ありません。

つまり、これは、1つのサービスへの書き込みアクセス権を持つだけで任意のシステムを所有できることを意味しますか

はい。これは、Windowsでの古典的な特権エスカレーションベクトルです。管理者以外のユーザーは、サービスを書き込み保護する必要があります。

1
kaidentity