The Kali Linux MCP Server enables remote command execution and management within a Kali Linux penetration testing environment:
Execute Commands: Run non-interactive commands (like
ping 127.0.0.1) for security testing or general Linux tasksManage Interactive Sessions: Start, control, and terminate interactive commands (such as
mysql -u root -p) with session IDsSend Input & Retrieve Output: Provide input to and collect output from active command sessions
Access Security Tools: Leverage the full suite of built-in Kali Linux penetration testing tools remotely
Docker-Based Deployment: Runs in a Docker container with SOCKS5 proxy support and SSH key configuration
Enables execution of Burp Suite commands for web application security testing, though with limitations on interactive features and UI-based interactions.
Provides access to Kali Linux penetration testing tools and commands via an SSH connection, allowing execution of security testing operations in a containerized environment.
Allows running Metasploit penetration testing commands in non-interactive mode, supporting security testing and exploitation workflows without entering interactive command mode.
目前只是个玩具,只支持执行可以返回的命令,如burp suite和metasploit等不能进行界面和命令交互,metasploit倒是可以叫ai agent直接执行不进入命令交互模式,有时间弄得的哥们可以拿去加强一下 😜
kalilinuxmcp
kali linux mcp,pentest,penetration test
更新:
20250401更新: 新增简单的交互式处理
如何安装:
1: 首先要用ssh-keygen -t rsa做一个私钥和公钥,替换公钥到Dockerfile的,替换私钥到"C:\Users[Username].ssh\kali000",这里自行去src\index.ts里搜索"kali000"替换路径
'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCsoJo7WJIHDQgmEdKwm6IqS61xaGWa/OVVMCrMwcVh13xvYbAD7wdMufzNhWRxSso3SKvTHbQjIszvYQgkVFjRPiJW5vGCU0847CX0zZytGLnKpKWDZ5ccShMPlIxVuy2+WUQlKNL7f+w59PMX+3BLcikhtwk0xwG7tpS4kAtXHlrwt1B1vFj3CoF8rBofGJAahOuPvruRh9i1i73i5JJHJFeDdJVfNnY5/8HnBvtWtJzbsbmlyaTODfrDCeYZ32zxDZdsPVEls3RDsfgUadyC71mpXloJ8JTiUU37H5DY+xtIuz3XICwA7DsVm9jiKaSR96DZyogYxx+UKdrDsIH4JQwBNs3RDCX+t7ivKj75KkhhrW2X2h90EOjwQPQOhuVU2FtMXbWlfbZL5UwXGgA7Efe3N0ZzrKac+RGM6vY/jsnESgZaTayF/N/BysMpjI18xy6Y12CyPXVYsvF3v04d2XR1Fs5rduERjpot7o9N+i5FcoTfUb5WP5nVU9X0b2s= hack004@DESKTOP-H4HRI73'
2:因为是国内环境,docker里我加了使用主机的socks5代理,自行搜索来替换"192.168.31.110",还有dns服务器也强制用dns2socks转到了本地127.0.0.1使用socks5代理,可自行去Dockerfile里替换或者去掉
3:原始使用的"booyaabes/kali-linux-full"镜像,但是里面软件版本有点老,自行选择是否要执行以下操作更新(主要需要更新很久!)
4:(编译MCP),先npm install后直接npm run build,得到build目录,核心是index.js
5:(编译Docker镜像),
6:安装MCP:
注意事项:
1: 每次重启docker后记得刷新MCP,因为可能SSH连接会断开
参考项目:
https://github.com/weidwonder/terminal-mcp-server
效果展示:
1:Lab: Blind SQL injection with out-of-band data exfiltration
2:command injection:
3:Lab: Web shell upload via Content-Type restriction bypass
MCP实时命令输出查看器使用指南
概述
这个实时查看器解决了在Cursor等AI工具中执行长时间命令时看不到实时输出的问题。通过WebSocket技术,您可以在浏览器中实时监控命令执行进度。
Related MCP server: Pentest MCP
快速开始
1. 启动实时查看器
Windows用户:
Linux/Mac用户:
2. 打开Web界面
启动后,在浏览器中访问:
3. 启用MCP服务器的实时推送
在Cursor或其他AI工具中,使用以下命令启用实时推送:
或者配置自定义查看器URL:
4. 执行命令并查看实时输出
现在当您执行交互式命令时,输出将实时显示在Web界面中:
功能特性
Web界面功能
📊 会话列表 - 左侧显示所有活跃的命令会话
📺 实时输出 - 右侧显示选中会话的实时命令输出
🔄 自动滚动 - 可选的自动滚动到最新输出
🎨 VS Code风格 - 深色主题,类似VS Code的界面
📱 响应式设计 - 支持不同屏幕尺寸
MCP工具命令
查看实时推送状态
启用实时推送
禁用实时推送
配置查看器URL
使用场景
1. 网络扫描
在Web界面中实时查看扫描进度和结果。
2. 漏洞扫描
实时监控漏洞扫描的发现过程。
3. 密码破解
实时查看密码破解尝试的进度。
4. 数据库操作
在Web界面中查看SQL查询的执行结果。
环境变量配置
您可以通过环境变量配置MCP服务器:
故障排除
1. 连接问题
确保实时查看器服务器正在运行(http://localhost:3000)
检查防火墙设置
确认端口3000未被其他程序占用
2. 输出不显示
确认已启用实时推送:
configure_realtime_viewer action=status检查MCP服务器日志中的错误信息
确认命令是通过
start_interactive_command启动的
3. 性能问题
对于输出量很大的命令,系统会自动缓冲输出以减少网络请求
可以通过清空输出按钮清理界面
关闭不需要的会话以释放资源
技术架构
安全注意事项
本地使用 - 实时查看器默认只监听localhost,不对外网开放
无认证 - 当前版本没有身份验证,请勿在生产环境使用
敏感信息 - 命令输出可能包含敏感信息,请注意保护
网络安全 - 如需远程访问,请配置适当的网络安全措施
更新日志
v1.0.0
初始版本发布
支持实时命令输出显示
WebSocket通信
多会话管理
VS Code风格界面