Jump to content

vbs remote registry


Recommended Posts

Hallo zusammen,


folgendes Problem
um eine Auswertung von ca. 200 Industrie PCs erzeugen, habe ich ein VBS erstellt.

Die meisten Daten bekomme ich aus Win32 collection.
z.B.:
</> Set objWMIhostname = objwbemLocator.ConnectServer(strIPC, strNamespace, strUser, strPwd)
</> Set colItems = objWMIhostname.ExecQuery("SELECT * FROM Win32_ComputerSystem")

 

strUser ist ein  Domain User mit Adm-Rechten für alle IPCs.
Dieser Teil des Scripts funktioniert.

 

Problem habe ich mit Daten aus Registry.

</> Set reg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strIPC & "\root\default:StdRegProv")
</>    If reg.enumValues( HKLM, keySerNr, valueNames, types ) = 0 then
</>        ………………
</>             ……………
</>    End If

# keySerNr ist ein Registry Key Path

 

Dieser Teil funktioniert nur wenn ich dieses Script als der strUser starte.
Aber ich möchte, dass auch Kollegen ohne adm-rechte dieses Script ausführen können.

Also
„Set reg = „  soll das Objekt „objWMIhostname“ nutzen. So wie „Set colItems“ das macht.

Oder auf anderer Weise, aber für die Verbindung mit den IPCs muss man den Account (strUser) aus dem Script nutzen.

Ich danke schon im Voraus.

Link to post


Hallo Dukel,
einige IPCs sind 12 Jahre alt.
Hostname, IP dienen nur für Zuordnung von Daten, die ich suche.
Und ich suche Daten von einem Hersteller des MDE-Programms, das vorinstalliert wurde.

Für heute habe ich schon alle Daten. Ich habe das Script als der "strUser" gestartet.
Aber für die Zukunft bleibt die Frage offen.

-----------------------------
Bitte mein Script verbessern, nicht meine Arbeitsweise.

 

  • Haha 1
  • Confused 1
Link to post

Wenn Du WMI ohne Adminrechte erreichen willst, brauchst Du

  • entweder ganz viel Gefrickel an den WMI-Berechtigungen, um eine "WMI Reader-Rolle" zu ermöglichen
  • oder ein anderes Vehikel, um die Abfrage durchzuführen. Hier könnte mir z.B. einfallen, dass Du die gewünschte Abfrage per Gruppenrichtlinie als geplanten Task ausrollst (der dann jeweils im SYSTEM-Kontext läuft) und die Ergebnisse in einen zentralen Speicherort schreiben lässt. Die User brauchen dann nur in diesen zentralen Speicherort zu schauen und haben dann das Ergebnis der letzten Abfrage. Oder Du missbrauchst irgendeinen anderen Agent, der da eh schon läuft. Monitoring ist immer ein guter Kandidat. CheckMK kann z.B. beliebige Skripte, die lokal abgelegt sind, ausführen und die Ergebnisse als Probe anzeigen.
Link to post

Evgenij hat recht - wir haben kürzlich einem Non-Admin den Lesezugriff remote über WMI auf Security Eventlogs auf Domain Controllern ermöglichen müssen. Das ist kein Spaß...

Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...