
C#-Dienstprogramm, das WMI verwendet, um "cmd.exe /c netstat -n" auszuführen, die Ausgabe in einer Datei speichert und dann SMB verwendet, um die Datei remote zu lesen und zu löschen
C#-Dienstprogramm, das WMI verwendet, um cmd.exe /c netstat -n auszuführen, die Ausgabe in einer Datei zu speichern, dann SMB verwendet, um die Datei remote zu lesen und zu löschen
Dieses Skript versucht, eine Verbindung zu allen angegebenen Computern herzustellen und WMI zu verwenden, um cmd.exe /c netstat -n > <file> auszuführen. Die Datei, in der die Ausgabe gespeichert wird, wird durch -file angegeben. Sobald der netstat-Befehl ausgeführt wird, wird die Ausgabe über einen remote SMB-Aufruf gelesen und dann gelöscht.
Auch wenn dies nicht das heimlichste Skript ist (wegen der cmd.exe-Ausführung und dem Speichern in eine Datei), muss man manchmal tun, was getan werden muss. Eine Alternative wäre, WMI zu verwenden, um netstat-Informationen remote abzufragen, aber diese WMI-Klasse ist nur auf Win10+-Systemen verfügbar, was nicht ideal ist. Diese Lösung funktioniert zumindest für alle Betriebssystemebenen.
Erforderliche Optionen:
-file = Die Datei, in der die Ausgabe temporär gespeichert wird, bevor sie remote gelesen/gelöscht wird
Optionale Optionen:
-computers = Eine Liste von Systemen, gegen die dies ausgeführt werden soll, getrennt durch Kommas
[oder]
-dc = Ein Domänencontroller, von dem eine Liste der Domänencomputer abgerufen wird
-domain = Die Domäne, von der eine Liste der Domänencomputer abgerufen wird
SharpStat.exe -file "C:\Users\Public\test.txt" -domain lab.raikia.com -dc lab.raikia.com
SharpStat.exe -file "C:\Users\Public\test.txt" -computers "wkstn7.lab.raikia.com,wkstn10.lab.raikia.com"

Bei Fragen oder Problemen melde dich bei [email protected] oder @raikiasec