penetrator
Goto Top

PSExec Remoteausführung zur Speicherung der lokalen Administratoren in .csv Datei

Hallo zusammen,

diesmal hat es mich mal eiskalt erwischt (Programmiertechnisch unbegabt). Jedoch hier erstmal mein Problem:

Folgend meine nicht ganz funbktionierendes Script:

Startscript

for /f %%a in (C:\scripte\server.txt) do psexec \\%%a cmd /c C:\scripte\evallocaladmin.bat


Macht nichts anderes als in eine .txt datei zu schauen welche Hosts dort drinestecken und führt nach der Reihe mit PSExec folgendes Script aus:

set tempdatei=%temp%\lokaleadministratoren.tmp
set sharedatei=\\%computername%\scripte\lokaleadministratoren.csv

if exist %tempdatei% del %tempdatei%
for /f "skip=6 tokens=*" %%a in ('net localgroup administratoren') do echo %COMPUTERNAME%;%%a >>%tempdatei%  
findstr /v "Der Befehl" %tempdatei% >>%sharedatei%  
del %tempdatei%

Ansich ein super Script, welches alle Benutzer in der Lokalen Administratorgruppe ganz geschmeidig schön nacheinander in eine .csv packt.


Mein Problem ist Zeile 2. Führe ich das Script irgendwo lokal aus läuft es und Er schreibt auch in den UNC Pfad
\\%computername%\scripte\lokaleadministratoren.csv

Aber mit PSExec scheint es wohl Probleme zu geben.

hat irgendwer eine Lösungsidee dazu?

Content-ID: 313080

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

Ausgedruckt am: 22.11.2024 um 21:11 Uhr

Penetrator
Penetrator 19.08.2016 um 14:35:48 Uhr
Goto Top
Nachtrag:

Wenn ich den Parameter
-u domainname\username -p Passwort
übergebe klappt alles superschick nur ich will kein PlaintextPasswort in einen meiner Scripte. Kann ich da was einbauen MD5 oder SecureString. Jemand in Kompination mit PSExec schonmal gemacht?
AndreasHoster
Lösung AndreasHoster 19.08.2016 aktualisiert um 14:39:17 Uhr
Goto Top
Hilfe von PSEXEC Lesen:
psexec /?
ergibt bei mir unter anderem folgende Passage:

If you omit a user name the process will run in the context of your
account on the remote system, but will not have access to network
resources (because it is impersonating). Specify a valid user name
in the Domain\User syntax if the remote process requires access
to network resources or to run in a different account. Note that
the password and command is encrypted in transit to the remote system.

EDIT:
Zu Langsam

Edit2:
Wie wäre es mit lokal speichern und dann vom Server aus holen (über den Adminshare?)
129813
Lösung 129813 19.08.2016 aktualisiert um 14:45:38 Uhr
Goto Top
Powershell oneliner:
Computerlist in C:\computers.txt
CSV-Path: C:\members.csv
gwmi win32_GroupUser -ComputerName (gc 'C:\computers.txt') | ?{$_.GroupComponent -match 'Name="(Administrators|Administratoren)"$'} | select PSComputername,@{n="Admin-Members";e={[regex]::match($_.PartComponent,'Name="(.*?)"$').Groups[1].Value}} | export-csv 'C:\members.csv' -Delimiter ";" -NoType -Encoding UTF8 -Append  
Regards
Penetrator
Penetrator 19.08.2016 um 15:12:26 Uhr
Goto Top
Very fine script!!!

Thanks a lot. You made my Day.