philipp711
Goto Top

WMI-Access Dienste für Nicht-Administratoren

Hi Leute,

wir verwenden den PRTG-Network-Monitor zur Überwachung unserer Infrastruktur. Im Windows-Umfeld verwenden wir dafür überwiegend die WMI-Sensoren. Dem Anmelde-Konto für PRTG wurde auf den jeweiligen Serversystemen Admin-Rechte eingeräumt. Dies möchten wir logischerweise ändern.

unbenannt

Wie im Screenshot zu sehen läuft die Konfiguration mit einem "Nicht-Admin"-Abfrageaccount für an sich schon - Prozessorlast, Arbeitsspeicher, Laufwerkskapazität etc. sind WMI-Sensoren. Allerdings bekommen wir bei den WMI-Sensoren für die Statusabfrage von Diensten ein "80041003: The current user does not have permission to perform the action".

Kann mir jemand sagen welche Rechte ich zusätzlich noch einräumen muss?

Vielen Dank!

Content-ID: 1604924939

Url: https://administrator.de/contentid/1604924939

Ausgedruckt am: 21.11.2024 um 21:11 Uhr

148656
148656 10.12.2021 um 09:23:02 Uhr
Goto Top
Adminrechte zum Auslesen von Satis? Muss wohl Freitag sein.
jsysde
Lösung jsysde 10.12.2021 um 09:45:25 Uhr
Goto Top
Moin.

Out-of-the-box keine Chance, dazu gibt's nen KB-Eintrag bei Paessler:
https://kb.paessler.com/en/topic/81810-wmi-access-without-administrative ...

Liegt halt einfach an der Art, wie WMI funktioniert. Ohne Anpassung der ACL werden eben für einige Dinge Admin-Rechte benötigt. Wie jede Medaille hat auch das zwei Seiten: Per WMI kann ich remote _alles!_ über das überwachte System herausfinden, muss dann aber mit erhöhten Rechten leben oder viel Zeit in die Anpassung der ACLs investieren.

Per SNMP kann ich _einige!_ Stati ohne Admin-Rechte auslesen, aber halt nur einen Bruchteil dessen, was per WMI geht. Und auch das Hantieren mit MIBs ist ziemlich zeitintensiv, der "Gewinn" ist also relativ klein.

Blick über den Tellerrand: Auch andere, teils agent-basierte Systeme, setzen für einige Aktionen Admin-Rechte auf dem überwachten System voraus. Quasi "By Design".

Cheers,
jsysde
149569
Lösung 149569 10.12.2021 aktualisiert um 10:14:41 Uhr
Goto Top
Na, Leserechte im jeweiligen WMI Namespace verpassen ... "Win32_Service" für das Auslesen von Diensten liegt in "root\CIMv2"

Admin-Rechte überflüssig. Least-Privilege geht auch hier ....
screenshot
Philipp711
Philipp711 10.12.2021 aktualisiert um 11:30:04 Uhr
Goto Top
Zitat von @148656:

Adminrechte zum Auslesen von Satis? Muss wohl Freitag sein.

Scheint wohl tatsächlich so...
--
Zitat von @149569:

Na, Leserechte im jeweiligen WMI Namespace verpassen ... "Win32_Service" für das Auslesen von Diensten liegt in "root\CIMv2"

Admin-Rechte überflüssig. Least-Privilege geht auch hier ....

Dachte ich auch zuerst...reicht aber anscheinend nicht...siehe unten...

---
Zitat von @jsysde:

Moin.

Out-of-the-box keine Chance, dazu gibt's nen KB-Eintrag bei Paessler:
https://kb.paessler.com/en/topic/81810-wmi-access-without-administrative ...

Liegt halt einfach an der Art, wie WMI funktioniert. Ohne Anpassung der ACL werden eben für einige Dinge Admin-Rechte benötigt. Wie jede Medaille hat auch das zwei Seiten: Per WMI kann ich remote _alles!_ über das überwachte System herausfinden, muss dann aber mit erhöhten Rechten leben oder viel Zeit in die Anpassung der ACLs investieren.

Per SNMP kann ich _einige!_ Stati ohne Admin-Rechte auslesen, aber halt nur einen Bruchteil dessen, was per WMI geht. Und auch das Hantieren mit MIBs ist ziemlich zeitintensiv, der "Gewinn" ist also relativ klein.

Blick über den Tellerrand: Auch andere, teils agent-basierte Systeme, setzen für einige Aktionen Admin-Rechte auf dem überwachten System voraus. Quasi "By Design".

Cheers,
jsysde

Den Artikel kenne ich - habe mich aber nicht mit der Antwort zufrieden gegeben face-wink

Habe es mittlerweile hinbekommen! Zum einen muss der User/die Gruppe lokal in wmimgmt.msc die Rechte "Methoden ausführen, Konto aktivieren, Remoteausführung und lesen" eingeräumt werden - habe die Rechte aufs komplette "Root" mit Vererbung vergeben. Danach dann den User noch in die lokale DCOM-Gruppe und die üblichen WMI-Sensoren können ohne Admin-Rechte abgefragt werden.

Blöd wird es bei den Diensten/Services. Per SDDL muss zunächst dem User/Gruppe der Zugriff auf den SC Manager gewährt werden - danach kann ich zumindest mal die Liste der Standarddienste abfragen. Im Anschluss muss dem User/der Gruppe dann auch noch zusätzlich für jeden "nicht-Standard"-Dienst der überwacht werden soll die Berechtigung per SDDL erteilt werden, sonst können diese Dienste nicht aufgelistet und abgefragt werden.

Ich frage mich gerade, ob es nicht noch irgendwelche Nebenwirkungen bei der Anpassung der Berechtigungen der Dienste etc. durch das Hantieren mit dem SC Manager geben kann?

Muss/sollte man dann tatsächlich damit leben, dass da Admin-Rechte für so ein Monitoring benötigt werden!? Laut Paessler-Artikel scheint das ja so zu sein...
149569
149569 10.12.2021 aktualisiert um 11:34:28 Uhr
Goto Top
Zitat von @Philipp711:
Na, Leserechte im jeweiligen WMI Namespace verpassen ... "Win32_Service" für das Auslesen von Diensten liegt in "root\CIMv2"

Admin-Rechte überflüssig. Least-Privilege geht auch hier ....

Dachte ich auch zuerst...reicht aber anscheinend nicht...siehe unten...

Doch du musst aber auch das "Remoteaktivierung"-Recht im Root aktivieren und vererben bzw. bis zu CIMv2 vergeben, erst dann ist der Zugriff für non admins via remote erlaubt. Klappt hier problemlos!
jsysde
Lösung jsysde 10.12.2021 um 11:47:30 Uhr
Goto Top
Moin.

Zitat von @Philipp711:
[...]Ich frage mich gerade, ob es nicht noch irgendwelche Nebenwirkungen bei der Anpassung der Berechtigungen der Dienste etc. durch das Hantieren mit dem SC Manager geben kann?
Berechtigte Frage. Beim (manuellen) Anpassen von ACLs besteht immer die Gefahr, mehr Rechte zu gewähren, als benötigt werden. Und sich dann in trügerischer Sicherheit zu wiegen.

[...]Muss/sollte man dann tatsächlich damit leben, dass da Admin-Rechte für so ein Monitoring benötigt werden!?
Klares JEIN - manche Monitoring-Systeme können ja auch "Mitigation-Skripts" ausführen, also z.B. einen Dienst neu starten, wenn der ausfällt etc. Dafür werden die Rechte mit Sicherheit benötigt. Zum reinen Auslesen, also Monitoring im klassischen Sinn, sind Admin-Rechte aber tatsächlich "Overkill". Man muss sich halt nur die Mühe der ACL-Anpassungen machen - und erfahrungsgemäß dürfte die Quote derer, die a) verstehen, was sie da tun und warum und b) die Zeit dafür haben, irgendwo im Promille-Bereich angesiedelt sein.

Cheers,
jsysde
Philipp711
Philipp711 10.12.2021 aktualisiert um 13:27:50 Uhr
Goto Top
Zitat von @149569:

Zitat von @Philipp711:
Na, Leserechte im jeweiligen WMI Namespace verpassen ... "Win32_Service" für das Auslesen von Diensten liegt in "root\CIMv2"

Admin-Rechte überflüssig. Least-Privilege geht auch hier ....

Dachte ich auch zuerst...reicht aber anscheinend nicht...siehe unten...

Doch du musst aber auch das "Remoteaktivierung"-Recht im Root aktivieren und vererben bzw. bis zu CIMv2 vergeben, erst dann ist der Zugriff für non admins via remote erlaubt. Klappt hier problemlos!

Ist passiert...wie gesagt...ohne die Berechtigungsvergabe über SDDL im SC Manager und beim Dienst selbst konnte ich keine Dienstinformationen abrufen...

unbenannt

P.S.: Habe ich auch oben im Post verschrieben...ich habe "Remoteausführung" geschrieben und es müsste natürlich "Remoteaktivierung" lauten...
Titanstaub
Lösung Titanstaub 07.03.2022 um 09:03:30 Uhr
Goto Top
Hallo, ich stand vor derselben Herausforderung und es gibt ein sehr praktisches (und kostenloses) Tool um die Berechtigungen für die Windows Dienste via GUI zu setzen:

https://www.coretechnologies.com/products/ServiceSecurityEditor/

Damit kann man sich das "Gehampel" mit sc sdset scmanager usw. sparen!
DerWoWusste
DerWoWusste 07.03.2022 um 09:19:15 Uhr
Goto Top
Es geht hier nicht um Dienste.