
Web-Chains : 让Java漏洞测试变得简单的神器
## 这是什么东西?
Web Chains,又名 java-chains 项目,就是一个专门为Java安全测试而生的Web平台。它能快速生成各种Java Payload,方便测试JNDI注入、MySQL JDBC反序列化、JRMP反序列化等漏洞。
想象一下,以前你要测试Java反序列化漏洞,得手动写一堆复杂的代码,各种依赖库搞得你头大。现在有了Java Chains,点几下鼠标就能生成你想要的Payload,简直不要太爽。
不像那些命令行工具,Java Chains提供了直观的Web界面。
就算你是刚入门的小白,看着界面点点点就能用起来。
https://appstore.lazycat.cloud/#/shop/detail/in.zhaoj.webchains
## 快速上手
应用安装后,打开登录页,用户名/密码: admin/admin

进入主页面

**实战演练——JNDI注入**
假设你想测试一个应用是否存在JNDI注入漏洞。
启动一个恶意LDAP服务:在java-chains的控制台里,找到“JNDI Injection”模块。

第一步:确认监听IP和端口
IP Address(Reverse IP):这里填入你的服务器IP地址。如果你的java-chains就跑在本地,可以保持默认的 127.0.0.1。如果你想让一个远程目标去连接你的服务,这里就需要填写你的公网IP地址。
HTTP Port、LDAP Port、LDAPS Port、RMI Port:这些是java-chains用来监听的端口。如果你没有特殊的端口占用,保持默认值就行。
Auto Fetch IP:这个开关打开后,java-chains会尝试自动获取你的公网IP

中间部分,你会看到几个端口对应的“Start”按钮。你需要根据你想要使用的JNDI注入方式来选择启动哪个服务。
如果你想使用LDAP协议:点击 LDAP Port 旁边的 Start 按钮。
如果你想使用RMI协议:点击 RMI Port 旁边的 Start 按钮。
通常情况下,LDAP是最常用的。点击 LDAP Port 旁边的 Start 后,java-chains就会启动一个恶意的LDAP服务,等待目标应用来连接。

服务启动后,java-chains会自动为你生成一个JNDI注入的Payload URL。
在图片中,你可以看到左侧菜单栏有 JndiBasicPayload 等多个选项。
你可以点击这些选项,然后根据你的测试需求,选择一个具体的Payload。

java-chains会为你生成一个链接,比如 ldap://127.0.0.1:50389/x/Exploit。
你需要做的就是,想办法把这个链接作为输入,发送给目标应用。例如:
如果目标应用有一个输入框,你可以把链接粘贴进去。
如果目标应用通过HTTP Header获取某个值,你可以把链接放在Header里。
在页面的 Status 区域,你会看到实时的日志信息。
如果目标应用存在JNDI注入漏洞,并且成功连接到了你的恶意LDAP服务,这里就会显示连接日志。

这些端口各有用途:
- **8011**:主要的Web管理界面
- **58080**:JNDI HTTP字节码服务
- **50389/50388**:JNDI LDAP/RMI服务
- **3308**:伪造的MySQL服务器
- **13999**:JRMPListener
- **50000/11527**:HTTP/TCP服务器

记住这只是测试工具,用完记得及时关闭相关端口。别让这些服务长期暴露在外网,容易被别人利用。
## 总结
Java Chains 是个不错的工具,特别是对于经常需要进行Java安全测试的朋友来说。
它把原本复杂的Payload生成过程变得简单直观,大大提高了测试效率。
此 App 尚未收到足够的评分或评论,无法显示评论列表。