文章总结: Vshell-Mcp工具实现VshellC2与ClaudeAgent的智能交互,使AI能自动执行内网渗透流程,包括探测、横向移动和权限提取。配置需Vshell服务端地址、登录账号及Python3.10+,通过脚本一键部署。实战中强调命令合并以减少进程数、使用SOCKS5隧道进行本地扫描、优先使用文件接口读取数据,并区分同步与异步API以优化性能。标准作业流程包括获取Agent列表、执行合并命令、建立隧道、读取文件及回收资源。 综合评分: 88 文章分类: 内网渗透,红队,安全工具,实战经验,渗透测试
Vshell-Mcp 让你的AI也能自动打内网!
船山信安
2026年7月9日 12:37 湖南
在小说阅读器读本章
去阅读
编者荐语:
转一个大佬的文章,大家支持下。
以下文章来源于教红队的Des ,作者Des
教红队的Des .
分享web安全、红蓝攻防、应急响应、攻防打点案例相关内容,定期通知和直播公开课,同步课件资料靶场环境等
Vshell Mcp 打通 Vshell C2 与 Claude Agent智交互,AI 自主调度内网 Agent 执行探测、横向移动、权限提取,完整内网渗透流程全自动落地!
① Vshell 服务端地址(比如 http://192.168.80.138:8082)
② Vshell 登录账号密码(比如 admin / qwe123qwe)
③ 本机装了 Python 3.10+
确认能访问 Vshell:
浏览器访问即可 确认Vshell运行 http://192.168.80.138:8082/api/dashboard/info
返回 JSON 而不是连接失败,说明地址是对的。
一键配置
直接一个脚本搞定配置和部署到MCP
可以用脚本一步到位(划重点)
cd C:\Users\Administrator\Desktop\Vshell-mcp
python vshell_config.py --reinstall
① POST /api/login → 拿到 JWT Token
② 双头认证验证 dashboard → 确认 Token 有效
③ 写入MCP 配置
03 / 注册到 Claude
自动写入 C:\Users\Administrator\.claude\settings.json。
重启 Claude Code,输入:
/mcp
返回如下即配置成功:
卸载
成功卸载
实战过程
以下内容为本机自建靶场,模拟逻辑隔离内网的实战环境
直接让AI加载Vshell-mcp对应的skills,同步Des师傅的内网横向移动蒸馏技能!
load skills之后直接让AIcheck vshell 加载skills熟悉一下就可以上战场了
建议本地虚拟机先测一下
文件上传/下载
信息收集一步到位
通过上线Agetn实现命令执行
建立隧道,Socks5实现跨网段命令执行
获取战果写报告
配置完先用这几个命令熟悉一下:
① vshell_server_info() 看服务状态
② vshell_list_clients() 看有哪些 Agent 在线
③ vshell_exec_cmd(合并命令) 在 Agent 上执行命令
④ vshell_read_file() 读 Agent 上的文件
⑤ vshell_start_socks5(force=True) 建 SOCKS5 隧道
开发总结,对武器开发感兴趣的同学可以看看,不感兴趣直接跳到最后领取McP工具和skills ~~
1、多进程卡死Agent进程
vshell_exec_cmd(87, "whoami")
vshell_exec_cmd(87, "ipconfig")
vshell_exec_cmd(87, "systeminfo")
每发一条,Agent 上创建一个 cmd.exe 进程。连续 N 条 = N 个进程,EDR 报警,Agent 被 kill。
解法:合并成一条
- whoami
- ipconfig
- systeminfo
+ cmd /c "whoami&ipconfig&systeminfo&netstat -ano"
一条命令 = 一个 cmd.exe。Agent 存活时间从 2 分钟延长到 30 分钟。
还有,读文件不要用 type(那又是一个 cmd.exe),用文件 API:
vshell_read_file(87, "C:/result.txt") # 走 Agent 协议通道,0 额外进程
2、AI的for循环在Agent上炸开
forportin [8001,8002,8003,8004,8005,8006]:
forpathin ["/","/api","/login","/admin"]:
shell(87, f"curl -s http://127.0.0.1:{port}{path}")
36 个 curl 进程在 Agent 上瞬间炸开,EDR 秒杀。
解法:建 SOCKS5,本机扫
# 先在 Agent 上建一个隧道(1 个进程)
vshell_start_socks5(87, port=1080)
# 然后本机 curl,Agent 上 0 额外进程
forportin [8001, 8002, ...]:
curl--socks5127.0.0.1:1080http://target:{port}/
3、文件IO优先,不要命令执行取结果
针对大文件和反复IO的读取文件的操作,最好通过文件接口实现。直到 DevTools 抓包才看到真实格式:
{"id": "86", "path": "C:/", "target": "scan_80.txt"}
·path 只传目录,不包含文件名·target 单独传文件名
4、两个 API 必须分清
| API | 用途 | 特点 |
| — | — | — |
| /api/terminal/shell | 短命令(whoami) | 同步,等执行完才返回 |
| /api/terminal/exec | 耗时任务(fscan) | 异步,发完就回 |
# ✅ 短查询用 shell
vshell_exec_cmd(87, "whoami")
# ✅ 耗时任务用 exec + 后读文件
vshell_exec_async(87, "start /b C:\\fs.exe -h 192.168.80.0/24 -np")
time.sleep(15)
vshell_exec_cmd(87, "taskkill /f /im fs.exe 2>nul")
vshell_read_file(87, "C:/scan_result.txt")
▎用 shell 跑 fscan → session 卡死 120 秒。用 exec 跑 → 5 秒返回。
标准作业流程
① vshell_list_clients() 找 Agent
② vshell_exec_cmd(合并命令) 拿信息
③ vshell_start_socks5(force=True) 建隧道
④ vshell_list_dir + read_file 读已有结果
⑤ 本机 curl 扫内网 不碰 Agent
⑥ taskkill + 读文件 回收
总结
- 命令合一条,绝不分开发, 一条命令一个 cmd.exe,分开容易G
- 扫描本地跑,Agent 只做跳板 ,AI自动建立 SOCKS5隧道,本机扫,Agent 没负担
领取工具进下面的群聊,同时欢迎大家进群交流讨论!
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:船山信安 《Vshell-Mcp 让你的AI也能自动打内网!》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论