Security Operations Multi-Tool Platform (MCP)

repository·main·Indexed 42 days ago

https://github.com/securityfortech/secops-mcp

A unified interface and platform that provides consistent JSON output for running various security scanning and testing tools. Integrated tools include Nuclei, Nmap, SQLMap, Gospider, Arjun, ffuf, wfuzz, Hashcat, HTTPX, Subfinder, TLSX, XSStrike, ipinfo, Amass, and Dirsearch.

Tokens
2.7K
Snippets
22
Records
23
Agent score
3%

What's inside secops-mcp

  1. Understand the tool output format

    main

    The platform provides a consistent JSON output format across all integrated security tools. Every tool execution returns a response with the following structure:

    • success: A boolean indicating if the tool ran successfully.
    • error: A string containing error details (only present if success is false).
    • results: An object containing the tool's specific output (only present if success is true).
    {
        "success": boolean,
        "error": "string (if error)",
        "results": {}
    }
  2. Install secops-mcp using Docker

    main

    The recommended way to deploy the Security Operations Multi-Tool Platform is via Docker. This ensures all underlying security tools are correctly configured within the container environment.

    1. Clone the repository:
      git clone https://github.com/securityfortech/secops-mcp.git
      cd secops-mcp
    2. Build the Docker image:
      docker build -t secops-mcp .
    3. Run the container:
      docker run -it --rm secops-mcp
    git clone https://github.com/securityfortech/secops-mcp.git
    cd secops-mcp
    docker build -t secops-mcp .
    docker run -it --rm secops-mcp
  3. Install secops-mcp manually

    main

    To install the platform manually, you must manage your own Python environment and ensure all underlying security tools are installed and available in your system's PATH.

    1. Clone the repository:
      git clone https://github.com/securityfortech/secops-mcp.git
      cd secops-mcp
    2. Create and activate a virtual environment:
      python -m venv venv
      source venv/bin/activate  # On Windows: venv\Scripts\activate
    3. Install dependencies:
      pip install -r requirements.txt
    4. Install required tools:
      • Follow the installation instructions for each tool located in the tools/ directory.
      • Ensure all tools are in your system PATH.
    git clone https://github.com/securityfortech/secops-mcp.git
    cd secops-mcp
    python -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
  4. Configure security tools

    main

    Each tool in the platform is managed via a wrapper located in the tools/ directory. You can configure tools using their respective wrapper parameters. Common configuration categories include:

    • Output formats
    • Timeouts
    • Verbosity levels
    • Custom wordlists
    • Tool-specific parameters
  5. Use Gospider for web crawling

    main

    Gospider integration allows for automated website crawling and URL discovery. It supports extension-based filtering, configurable depth, and secret discovery.

    Available functions:

    • gospider_scan(url, depth, include_subs): Performs a basic crawl.
    • gospider_filtered_scan(url, extensions, exclude_extensions): Performs a crawl while filtering specific file types.
    # Basic web crawling
    gospider_scan("https://example.com", depth=3, include_subs=True)
    
    # Filtered crawling for specific file types
    gospider_filtered_scan(
        "https://example.com",
        extensions=["js", "json", "xml"],
        exclude_extensions=["png", "jpg", "css"]
    )
  6. Use Arjun for HTTP parameter discovery

    main

    Arjun integration is used to find hidden HTTP parameters in web applications. It supports multiple methods (GET, POST, PUT, etc.), bulk scanning, and custom headers.

    Available functions:

    • arjun_scan(url, method, data, stable): Scans a single URL. Use stable=True to reduce false positives.
    • arjun_bulk_parameter_scan(urls): Scans multiple URLs simultaneously.
    # Basic parameter discovery
    arjun_scan("https://example.com/api", method="GET")
    
    # POST parameter discovery with custom data
    arjun_scan(
        "https://example.com/login",
        method="POST",
        data="username=test&password=test",
        stable=True
    )
    
    # Bulk parameter scanning
    arjun_bulk_parameter_scan([
        "https://example.com/api/v1",
        "https://example.com/api/v2"
    ])
  7. Run Gospider web crawling

    main

    Use gospider_scan to crawl a target website. It returns a JSON-formatted string of the results. You can control depth, concurrency, timeouts, and whether to include subdomains or other sources.

    gospider_scan(
        target="https://example.com",
        depth=5,
        concurrent=20,
        include_subs=True,
        output_format="json"
    )
  8. Run Arjun HTTP parameter discovery

    main

    Use arjun_scan to discover hidden HTTP parameters. It supports different methods (default GET), custom wordlists, headers, and tuning parameters like threads, delay, and timeout.

    arjun_scan(
        url="https://example.com/api",
        method="POST",
        threads=50,
        output_format="json"
    )