Web 版 Java Payload 生成与利用工具–Web Chains

[本文防采集 - 藏鲸阁]

Web 版 Java Payload 生成与利用工具,提供 Java 反序列化、Hessian 1/2 反序列化等Payload生成,以及 JNDI、Fake Mysql、JRMPListener 等利用|The web version of Java Payload generation and utilization tool provides Payload generation such as Java deserialization and Hessian 1/2 deserialization, as well as JNDI, Fake Mysql, JRMPListener, etc​



https://github.com/Java-Chains/web-chains



 [本文防采集 - 藏鲸阁]



20250209192319598-20250207142859640[本文防采集 - 藏鲸阁]

 ​

介绍

Web-Chains 含有六大模块:[本文防采集 - 藏鲸阁]

[本文防采集 - 藏鲸阁]

    1. Generate: 生成模块

        • Java 反序列化原生 Payload 生成

        • Hessian1/2 反序列化 Payload 生成

      [本文防采集 - 藏鲸阁]

      

        • Hessian1 支持生成 HessianServlet 格式反序列化数据

        • Shiro 数据生成(自定义 KEY 使用 GCM 混淆字符等)

      [本文防采集 - 藏鲸阁]

      

        • AMF3 数据生成(基于原生数据多种进阶组合)

        • XStream 数据生成(基于原生数据多种进阶组合)

        • BCEL 字节码生成(直接执行命令,内存马生成,回显生成,探测字节码,读写文件)

      [本文防采集 - 藏鲸阁]

        • Class 字节码生成(直接执行命令,内存马生成,回显生成,探测字节码,读写文件)

      

      [本文防采集 - 藏鲸阁]

        • 多种数据库 JDBC Payload 生成(Derby | H2 | PostgreSql | Sqlite

      [本文防采集 - 藏鲸阁]

      

        • SnakeYAML/SpringBeanXML/Velocity/OGNL/MVEL/SPEL/JS/GROOVY

        • Java反序列化、Hessian反序列化支持以下混淆方式:

            • 随机集合混淆

          

          [本文防采集 - 藏鲸阁]

            • 垃圾类插入

          

          

            • 去除字节码符号信息

          [本文防采集 - 藏鲸阁]

          [本文防采集 - 藏鲸阁]

            • TC_RESET 填充,仅适用于Java反序列化

          

            • UTF-8 Overlong Encoding 混淆

          [本文防采集 - 藏鲸阁]

          [本文防采集 - 藏鲸阁]

      [本文防采集 - 藏鲸阁]

      [本文防采集 - 藏鲸阁]

        • 一些高级选项:

            • 自定义类名/定义字节码版本,支持使用 Class-Obf 进行字节码混淆

          [本文防采集 - 藏鲸阁]

          

            • 选择 Commons Beanutils 链的多种 comparator 类型

          

          

            • 支持生成 TemplatesImpl 格式

            • 支持生成 SnakeYaml Jar 格式

          

            • 支持生成 Fastjson Groovy 格式

            • 支持生成 JavaWrapper 格式

          [本文防采集 - 藏鲸阁]

          [本文防采集 - 藏鲸阁]

            • 支持生成 charsets.jar 格式

          [本文防采集 - 藏鲸阁]

          [本文防采集 - 藏鲸阁]

            • 支持增强魔改版 JMG/JEG 格式 (java echo generator, java memshell generator)

          [本文防采集 - 藏鲸阁]

          

[本文防采集 - 藏鲸阁]

    1. JNDI: JNDI 注入利用模块

        • JndiBasicPayload: LDAP 远程加载字节码

      [本文防采集 - 藏鲸阁]

        • JndiDeserializationPayload: LDAP 中基于 javaSerializedData 字段实现的反序列化

      

      [本文防采集 - 藏鲸阁]

        • JndiResourceRefPayload: LDAP 基于 BeanFactory 的 Tomcat EL、Groovy等利用

      [本文防采集 - 藏鲸阁]

        • JndiReferencePayload: LDAP 基于其他 ObjectFactory 的Reference利用,例如各种DataSource JDBC利用

      [本文防采集 - 藏鲸阁]

        • JndiRMIDeserializePayload: LDAP 高版本 JDK 绕过之RMI反序列化

      [本文防采集 - 藏鲸阁]

      [本文防采集 - 藏鲸阁]

        • JndiRefBypassPayload: LDAP 高版本 JDK 绕过之ReferenceBypass

      [本文防采集 - 藏鲸阁]

      [本文防采集 - 藏鲸阁]

        • JndiShowHandPayload: JNDI梭哈链,一键测试常规利用链,提高测试效率

      

[本文防采集 - 藏鲸阁]



    1. Fake MySQL

        • FakeMysqlPayload: 经典 MySQL JDBC 反序列化利用姿势

      [本文防采集 - 藏鲸阁]

        • FakeMysqlShowHandPayload: FakeMySQL梭哈链,一键测试常规反序列化链,提高测试效率

      

      





    1. JRMPListener

        • 可配合 JRMPClient 反序列化链实现RMI低版本的绕过

      [本文防采集 - 藏鲸阁]

      



    1. TCP Server

        • 一个简易的 TCP Server,可以将生成的Payload文件挂载到TCP端口服务上

      

      

        • 适用于 Derby 反序列化 RCE 场景,可直接通过tcp端口获取反序列化数据

      

[本文防采集 - 藏鲸阁]



    1. HTTP Server

        • 一个简易的HTTP服务器,将生成的Payload文件挂载到HTTP端口服务上

      

        • 适用于 postgresql 远程加载 SpringBeanXML 文件等场景

      [本文防采集 - 藏鲸阁]

      

[本文防采集 - 藏鲸阁]



[本文防采集 - 藏鲸阁]

快速开始



[本文防采集 - 藏鲸阁]

特别注意:我们只对 8011 端口进行了保护,需要登陆后访问,其他端口可能存在被反制的风险,请自行注意[本文防采集 - 藏鲸阁]





方式一:Docker

你可以通过 docker 一条命令启动 web-chains 项目(这也是推荐做法)​

[本文防采集 - 藏鲸阁]

docker run -d \
  --name web-chains \
  --restart=always \
  -p 8011:8011 \
  -p 58080:58080 \
  -p 50389:50389 \
  -p 50388:50388 \
  -p 13999:13999 \
  -p 3308:3308 \
  -p 11527:11527 \
  -p 50000:50000 \
  javachains/webchains:1.2.3



生成功能仅使用 8011 端口即可,其他端口为 exploit 模块使用





请使用以下命令获得随机生成的强密码



docker logs $(docker ps | grep javachains/webchains | awk '{print $1}') | grep -E 'password'

[本文防采集 - 藏鲸阁]



输出示例[本文防采集 - 藏鲸阁]





11-12 06:59:53.301 INFO  [main] c.a.c.w.c.SecurityConfig       |  | password: XSsWerJFGcCjB8FU





访问 http://your-ip:8011 即可(使用这里的用户名密码登录)



方式二:Jar包启动

[本文防采集 - 藏鲸阁]

[本文防采集 - 藏鲸阁]

使用 java -jar web-chains-v1.2.3.jar 即可启动





详细使用文档:https://www.yuque.com/shenjingwa-leuvd/wpqdhf/eekyvau9fcblzzt0



[本文防采集 - 藏鲸阁]

[本文防采集 - 藏鲸阁]

Hidden Bot Trap
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片