登录自动化爆破做成mcp工具

admin 2026-06-26 06:52:06 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 文档介绍作者将原有臃肿工具SPiderX重构为轻量级登录自动化爆破工具LichAuto,该工具能自动识别登录页面类型并采用相应爆破策略,支持简单POST请求和复杂验证码破解。重点展示了工具在护网演练、资产梳理等场景的应用,并创新性地通过MCP接口实现AI自动化调用,体现了安全工具与AI联动的未来发展方向。 综合评分: 85 文章分类: 渗透测试,安全工具,红队,安全开发,自动化


cover_image

登录自动化爆破做成mcp工具

原创

Licharse Licharse

Licharsec

2026年6月24日 18:05 浙江

在小说阅读器读本章

去阅读

之前写过一个叫 SPiderX 的东西,功能堆得越多,代码越肿。

后来想通了,工具不是越重越强,是越精越好用。 在 AI 帮助下把核心抽出来,重写成一个轻量脚本。

脚本写完了,我又琢磨——现在 AI 自动化这么热,能不能让 AI 自己来调这玩意儿?

于是就折腾出了 LichAuto。


就干一件事

批量测登录弱口令。

你手里握着几十上百个 URL,里面混着各种登录页。有的就是个老系统表单 POST,有的带 JS 加密,有的还有验证码。

人工测?一个一个开浏览器,输 admin/admin123,等响应,下一个。搞完一批天都黑了。

LichAuto 的逻辑就一句话:URL 扔进去,它自己判断对面什么路数,选合适的姿势怼,然后把结果告诉你。

全程不需要人盯着。


什么场景能用

护网大资产批量扫。 几百个 URL 塞进去,自动过滤非登录页,自动分类难度,多线程干。简单目标多线程多个请求试多组密码,复杂目标开浏览器自动识别验证码。

县市级资产梳理。 县市的系统那叫一个五花八门——有零几年的 ASP 站点,一个 input 就交密码了;有新上的系统套了 Vue,登录还带验证码;还有的压根不是登录页。LichAuto 会自动分,该快的快,该慢的慢,不是登录页的跳过。

但我自己觉得最有意思的用法是这个——做成 MCP 让 AI 调。

目前AI自动化测网站已经成为了一种新趋势,以opencode举例,你在 opencode 里跟它说:

“扫一下这批资产按照合规渗透测试方式”

如果遇到登录框,它自己调 LichAuto → 拿结果 → 再开浏览器验证 → 输出结果,当然这只是一个小功能,例如burp的一个插件,但现在是属于AI的mcp工具

这才是以后工具该有的形态——不一定要有界面,但要让 AI 能调用,可以快速嵌入到更大的自动化流程里去。


跑一遍看看

开 20 个本地目标,端口 8000~8019。8 个简单登录,12 个复杂登录(含 JS 加密+验证码)。

先分类

脚本并发请求所有页面,看 HTML 结构:

有没有 <input type="password">?没有就跳过。 有没有 jsencrypt、RSA、AES 这些关键词?有就走复杂模式。 有没有验证码图片标签?有也走复杂模式。 都没有?简单模式,直接 POST 怼。

20 个目标,0.3 秒分完。8 个简单,12 个复杂,0 个未知。

LichAuto 的整个流程就是这样串起来的:

简单爆破

就是 requests 发 POST,没什么技术含量,主打一个快:

http://127.0.0.1:8002 -> root:123456
http://127.0.0.1:8004 -> admin:root
http://127.0.0.1:8001 -> admin:root
http://127.0.0.1:8003 -> root:root
http://127.0.0.1:8006 -> admin:root
http://127.0.0.1:8009 -> root:root
http://127.0.0.1:8013 -> root:123456
http://127.0.0.1:8015 -> admin:123456

8 个目标,0.3 秒,全中。

复杂爆破

复杂的就得 Playwright 上了。headless Chromium 打开页面,自动定位用户名框、密码框、登录按钮、验证码图。

然后开始试密码——每次自动截图验证码,用 ddddocr 识别,填入,点登录,看结果。

[8000] 发现验证码图片
[8005] 发现验证码图片
OCR引擎初始化成功
[8005] 识别验证码: 7287
[8000] 识别验证码: 1175
&nbsp; &nbsp; 试 admin:123456 → 失败
&nbsp; &nbsp; 试 admin:admin@123 → 失败
&nbsp; &nbsp; ……
[8005] root:123456 → 识别验证码: 1727 → 登录成功!
[8000] root:root → 识别验证码: 9686 → 登录成功!

验证码识别不是每次都准,但失败了会刷新重试。多试几次总能蒙对。

简单 8 个全中,复杂演示的 2 个也拿下了:


架构

就几个文件:

lichauto-api/
├── config.py &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 配置(字典、超时、并发数)
├── utils.py &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;工具函数(日志、OCR、文件读写)
├── classifier.py &nbsp; &nbsp; &nbsp; 分类器
├── cracker_simple.py &nbsp; 简单爆破
├── cracker_complex.py &nbsp;复杂爆破 + 验证码
├── lichauto.py &nbsp; &nbsp; &nbsp; &nbsp; 主流程编排
└── mcp_server.py &nbsp; &nbsp; &nbsp; MCP接口

核心流程就三步:分类 → 简单爆破 → 复杂爆破

没什么花里胡哨的设计,配置文件里调一下字典、线程数、超时时间就能用。


MCP Server 接入

这个反而是最简单的部分。

写个 mcp_server.py,用 FastMCP 把函数暴露出去:

python

from&nbsp;mcp.server.fastmcp&nbsp;import&nbsp;FastMCP
from&nbsp;lichauto&nbsp;import&nbsp;LichAuto

mcp = FastMCP("lichauto")

@mcp.tool()
def&nbsp;auto_crack(urls:&nbsp;list[str]) ->&nbsp;dict:
&nbsp; &nbsp; lich = LichAuto()
&nbsp; &nbsp;&nbsp;return&nbsp;lich.run(urls)

mcp.run()

在 opencode.json 里注册一下:

json

{
&nbsp;&nbsp;"mcp":{
&nbsp; &nbsp;&nbsp;"lichauto":{
&nbsp; &nbsp; &nbsp;&nbsp;"type":"local",
&nbsp; &nbsp; &nbsp;&nbsp;"command":["python","path/to/mcp_server.py"],
&nbsp; &nbsp; &nbsp;&nbsp;"enabled":true
&nbsp; &nbsp;&nbsp;}
}
}

完事。AI 的工具列表里就多了一个 lichauto_auto_crack,跟内置工具一样用。

最后

从 SPiderX 到 LichAuto,算是一个从做加法到做减法的过程。

https://github.com/LiChaser/SpiderX

工具本身不复杂,核心逻辑就那么点。但套上 MCP 之后,它从一个只能手敲命令的脚本,变成了 AI 能自主调用的能力单元。

我觉得这才是以后安全工具的方向——不一定要有好看的界面,但要能跟 AI 联动,嵌入到更大的自动化流程里去。

毕竟未来不是人用工具,是 AI 用工具,人管 AI。(以上为v4pro按照我的以往文风叙述….)


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:Licharsec Licharse Licharse《登录自动化爆破做成mcp工具》

2026年AI+安全职业报告 网络安全文章

2026年AI+安全职业报告

文章总结: 报告基于招聘数据和劳动力研究,总结AI+安全领域十大新兴职位,分为正在热招、正在形成和未来出现三类,涵盖AI/ML安全工程师、AI红队专家、AI治理
评论:0   参与:  0