集成

lisa.py:LLDB 的 MCP 集成与调试辅助命令

为 LLDB 调试会话加入 MCP 桥接的扩展,改编自 ida-pro-mcp:插件的 mcp start 命令通过本地 JSON-RPC 提供 18 个调试器函数,再由依据这些函数生成的 FastMCP stdio 服务器把它们开放给 Claude Desktop 等 MCP 客户端。这些工具可创建、启动或附加调试目标,单步执行,管理断点,读取调用栈、变量、反汇编和内存,计算表达式,并可执行任意 LLDB 命令。同一脚本还保留了 lisa.py 早先的漏洞利用开发辅助命令,包括 checksec、寄存器与栈上下文视图、Mach-O 文件头与加载命令显示、Capstone 反汇编,以及用于崩溃分级的 exploitable 命令。

使用条件与局限

  • 所审阅的是默认 dev 分支上 2025-03-29 的提交 9dd61e9,即当天为 2021 年重写版 lisa.py 加入 MCP 集成的三个提交中的最后一个。仓库没有发布版本或标签,master 分支仍是不含 MCP 支持的 2017 年版本,README 的待办事项还列出更新使用手册和补充测试用例。
  • 需要 Python 3.10+ 和带 Python 绑定的 LLDB;LLDB 的 Python 环境还需能导入 capstone(requirements.txt 固定为 4.0.2),MCP 服务器则需要 fastmcp 和 httpx。README 与代码部分脱节:README 提到 server.py、lldb_plugin.py 和 lldb-mcp 克隆路径,而仓库实际提供的是 lisa.py 和 lldb_mcp.py;pyproject 中 lldb-mcp 入口指向的模块并不存在。
  • 用 command script import 把 lisa.py 载入 LLDB,执行 mcp start,再让 MCP 客户端运行 lldb_mcp.py;README 给出了通过 uv 启动它的 Claude Desktop 配置。插件在 localhost 的 13338 端口监听且没有认证,即使 mcp start 指定了其他端口,MCP 服务器也总是连接 13338。run_lldb_command 会原样执行任意 LLDB 命令,因此已连接的客户端可完全控制调试器及被调试进程。
  • 辅助命令可解析 Mach-O 文件头和加载命令,并支持 x86_64 与 arm64/arm64e 寄存器;README 未说明支持的操作系统或 LLDB 版本。tests 目录收录了若干小型崩溃程序(包括 Objective-C 和 libdispatch 用例),可通过 make rtests 在 LLDB 中运行;仓库未配置 CI。
  • LICENSE 为 Apache-2.0,但 pyproject.toml 声明 MIT,lldb_mcp.py 也保留了 ida-pro-mcp 的 MIT 声明。所审来源未确立与 REA 的关联。本次未安装或运行。

关于此条目

类型
集成
类别
独立 MCP 集成
关联
独立智能体集成
目标
二进制

来源复核于

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

报告条目过时 建议修正翻译

一手来源

  1. README.md GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  2. lldb_mcp.py GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  3. lisa.py#L5380-L6322 GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  4. lisa.py#L6408-L6534 GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  5. pyproject.toml GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  6. requirements.txt GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  7. Makefile GitHub · ant4g0nist/lisa.py · 修订 9dd61e9
  8. LICENSE GitHub · ant4g0nist/lisa.py · 修订 9dd61e9

同分区更多条目:智能体与 MCP

智能体与 MCP分区全部 45 项资源