So können Sie feststellen, wer welche Software unter Windows Server in Echtzeit installiert hat - Wie Man

So können Sie feststellen, wer welche Software unter Windows Server in Echtzeit installiert hat

Verdächtige Software auf Ihrem Windows Server kann das Ergebnis einer nicht autorisierten Installation durch Ihren eigenen Mitarbeiter sein oder durch Hackerangriffe entstanden sein. Jede verdächtige Software kann möglicherweise zu einem Verlust Ihrer sensibelsten, gesicherten Daten führen, von der Abnahme der Serverleistung oder von Verstößen gegen die Compliance-Richtlinien. Aus diesem Grund ist es äußerst wichtig, sich über das Auftreten von Softwareinstallationen im Klaren zu sein und zu sehen, was installiert wurde, wer es getan hat und wann kurz danach.
https://www.netwrix.com/how_to_detect_software_installations.html

7 Schritte insgesamt

Schritt 1: Konfigurieren des Ereignisprotokolls

Führen Sie eventvwr.msc aus → Windows-Protokolle → Klicken Sie mit der rechten Maustaste auf „Anwendungsprotokoll“ → Eigenschaften:
Stellen Sie sicher, dass das Kontrollkästchen "Protokollierung aktivieren" aktiviert ist
Erhöhen Sie die Protokollgröße für mindestens 1 GB
Legen Sie die Aufbewahrungsmethode auf "Ereignisse bei Bedarf überschreiben" oder "Protokoll bei vollem Archiv archivieren" fest.

Schritt 2: Erstellen einer Warnung

Um eine sofortige Warnung zu erstellen, die bei einer Softwareinstallation ausgelöst wird, müssen Sie das folgende Powershell-Skript bearbeiten, indem Sie Ihre Parameter einrichten und an einer beliebigen Stelle als .ps1-Datei speichern (z. B. detect_software.ps1):

Schritt 3: Skriptcode

#Mail SMTP-Setup-Abschnitt
$ Subject = "Neue Software wurde auf $ env: COMPUTERNAME installiert" # Betreff der Nachricht
$ Server = "smtp.server" # SMTP-Server
$ From = "[email protected]" # Von wem wir eine E-Mail senden (fügen Sie ggf. eine anonyme Anmeldeberechtigung hinzu)

$ To = "[email protected]" # An wen senden wir?
$ Pwd = ConvertTo-SecureString "enterpassword" -AsPlainText –Force # Senderkennwort
# (Achtung! Verwenden Sie ein sehr eingeschränktes Konto für den Absender, da das im Skript gespeicherte Kennwort nicht verschlüsselt wird.)
$ Cred = New-Object System.Management.Automation.PSCredential ("[email protected]", $ Pwd) # Konto-Anmeldeinformationen

$ coding = [System.Text.Encoding] :: UTF8 #Einstellung der Codierung auf UTF8 für die Anzeige der korrekten Nachrichten

# Erzeugt eine vom Benutzer lesbare Benutzer-ID aus der Benutzer-ID im Protokoll.
$ UserSID = (Get-WinEvent -FilterHashtable @ {LogName = "Anwendung"; ID = 11707; ProviderName = "MsiInstaller"}). UserID.Value | Wählen Sie zuerst 1 aus
$ objSID = New-Object System.Security.Principal.SecurityIdentifier ("$ UserSID")
$ UserID = $ objSID.Translate ([System.Security.Principal.NTAccount])

#Erstellt den E-Mail-Text mit der erstellten Zeit und der Nachricht zur Anwendungsinstallation.
$ Body = Get-WinEvent -FilterHashtable @ {LogName = "Anwendung"; ID = 11707; ProviderName = 'MsiInstaller'} | Wählen Sie TimeCreated, Message | Auswahlobjekt - Erste 1

#Eine E-Mail senden.
Send-MailMessage-Von $ Von -To $ Nach -SmtpServer $ Server - Body "$ Body. Installiert von: $ UserID" -Subject $ Betreff -Credential $ Cred -Encoding $ Kodierung

Schritt 4: Neue geplante Aufgabe erstellen

Taskplaner ausführen → Neuen Terminplan erstellen → Namen eingeben → Registerkarte Trigger → Neuer Trigger → Legen Sie die folgenden Optionen fest:
Beginnen Sie die Aufgabe für ein Ereignis
Log - Anwendung
Quelle - leer
EventID - 11707.

Schritt 5: Aktionseinstellungen

Gehen Sie zur Registerkarte Aktionen → Neue Aktion mit folgenden Parametern:
Aktion - Starten Sie ein Programm
Programm-Skript: Powershell
Argumente hinzufügen (optional): -File "Dateipfad zu unserem Skript angeben"
OK klicken".

Schritt 6: Beginnen Sie, um Benachrichtigungen zu erhalten

Jetzt werden Sie über jede Softwareinstallation auf Ihrem Windows-Server per E-Mail-Nachricht informiert, die Details zur Softwareinstallationszeit, den Namen der Software und den Benutzernamen des Installationsprogramms enthält.

Schritt 7: Real Life Use Case-Video

http://www.youtube.com/watch?v=xE4QcIk9CTA

Das Skript wurde so aktualisiert, dass Benutzername und Computername statt Benutzer-ID angezeigt werden.