Token导航 LogoToken导航TokenDH.com
MCP mapper logo
安全风控stdio官方级别未说明来源级核验

MCP mapper

MCP Server

一款用于枚举、映射和与MCP服务器交互的进攻性安全工具,可生成审计报告和利用存根。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
安全工具Python渗透测试

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

KryMucus

提供方

KryMucus

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install fastmcp

详细介绍

MCP映射器和开发树桩生成器

mcp_map.py 是一种攻击性安全工具,旨在枚举、映射和交互 模型上下文协议(MCP) 服务器。

它连接到MCP端点(通常通过SSE),枚举整个攻击面(工具、资源、模板),主动查询可用数据,并生成人类可读的审计图和即用型Python客户端存根,用于快速利用或测试。

🚀 特性

  • 深度枚举:

- 资源: 列出所有公开的数据端点和 积极阅读 它们(带有安全截断)用于查找敏感数据或配置。

- 资源模板: 标识数据访问的动态URI模式。

- 工具: 转储工具名称、描述和参数的完整JSON模式(对于查找RCE或Logic缺陷至关重要)。

  • 主动侦察:

- 自动尝试读取已发现的资源。

- 优雅地处理二进制数据和大型文本文件,以避免控制台泛滥。

  • 双输出格式:

- Markdown(.md): 专门为 黑曜石 或Notion pentest报告(语法干净,代码块清晰,没有HTML混乱)。

- JSON(.json): 将管道的原始数据转储到其他自动化工具中。

  • 漏洞生成(--generate-stub):

- 自动创建独立 client.py 根据目标量身定制的脚本。

- 用发现的模式和虚拟值预填充函数调用,允许 即时互动/利用 无需手动编码。

📋 先决条件

  • Python 3.10+
  • fastmcp (该工具依赖于此库实现稳定的SSE传输)

Bash

pip install fastmcp

🛠️ 用法

基本映射(显示到控制台)

连接到目标并将Markdown摘要打印到stdout。

Bash

python mcp_map.py http://localhost:8000/sse

审计报告生成

将完整地图保存到黑曜石友好的Markdown文件中。

Bash

python mcp_map.py http://target-ip:53060/mcp -o audit_report.md

全面侦察和利用树桩生成

执行映射、保存映射并生成Python脚本(exploit.py)预先配置以攻击目标上发现的特定工具。

Bash

python mcp_map.py http://target-ip:53060/mcp -o map.md -g exploit.py

用于自动化的JSON输出

Bash

python mcp_map.py http://target-ip:53060/mcp -f json -o raw_data.json

📄 输出示例

1.Markdown地图(-o map.md)

_针对直接复制到pentest报告进行了优化。_

标记语言

# MCP Server Map: http://10.10.10.5:8000/sse

## 📂 Resources (Queried)
- **App Config**
  - URI: `config://main`
  - Desc: _Main application settings_
  - **Content**:

{ "debug": true, "db_host": "127.0.0.1" }


## 🛠️ Tools
- **execute_command**
  - Desc: _Executes a shell command_
  - Inputs: `command`, `timeout`
  - Schema:

{ "properties": { "command": { "type": "string" }, "timeout": { "type": "integer" } } }

2.客户失误(-g exploit.py)

_生成的Python代码已准备好运行。只需取消注释要测试的行即可。_

python

import asyncio
from fastmcp import Client

TARGET_URL = 'http://10.10.10.5:8000/sse'
client = Client(TARGET_URL)

async def main():
    async with client:
        print(f'[*] Connected to {TARGET_URL}')

        # --- Tools ---
        print('\n[+] Calling Tool: execute_command')
        # Description: Executes a shell command
        # Arguments Schema: {"command": {"type": "string"}, "timeout": {"type": "integer"}}
        
        # UNCOMMENT TO EXECUTE:
        # result = await client.call_tool(name='execute_command', arguments={'command': 'TEST_VALUE', 'timeout': 0})
        # print(result)

if __name__ == '__main__':
    asyncio.run(main())

⚠️ 法律免责声明

此工具仅用于法律安全评估和授权渗透测试。在扫描或与任何MCP服务器交互之前,请确保您拥有明确的权限。

目录标签

目录标签

安全工具Python渗透测试本地部署MCP服务器枚举工具利用存根

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP