图形化漏洞利用Demo-JavaFX版

枫少@KillBoy
枫少@KillBoy
管理员
219
文章
0
粉丝
资源分享458,800字数 936阅读3分7秒阅读模式
AI智能摘要
还在用命令行跑漏洞?试试这款图形化JavaFX工具,让漏洞利用变得直观又高效!无需精通Java,只需参照示例实现接口,就能快速开发专属的跨平台图形化EXP。内置WebLogic远程执行漏洞演示,支持自定义POC/EXP、批量检测、WebShell上传,还能一键打包带JRE的独立应用,无环境依赖直接运行。界面可自由扩展,拖拽控件即可定制功能,安全研究员的效率神器来了!
— AI 生成的文章内容摘要

山高水长,天涯未远,江湖再见

0x01 这是个嘛?

这是一个构建图形化漏洞利用的一个项目,已经写好架子,只需要往里填充exp即可,帮助安全人员快速构建一个图形化的、跨平台的漏洞利用工具。

虽然有很多优秀的命令行利用工具,但我觉得还是带界面的方便。

使用本项目,你不需要懂太多Java语言,只需要了解基本的语法,参考自带的EXP例子,即可快速开发一款属于你自己的漏洞利用工具。

0x02 Demo

废话不多说,先上效果图,自带CVE-2020-14882 Weblogic远程代码执行漏洞

图形化漏洞利用Demo-JavaFX版-图片1

0x03 编写属于你的图像化漏洞利用工具

3.1 项目结构

.
├── ExpDemo-JavaFX.iml
├── pom.xml maven工程的基本文件
└── src
 └── main
     ├── deploy
     │   └── ExpDemo-JavaFX-1.0.icns
     ├── java
     │   └── com
     │       └── yhy
     │           ├── Controller.java 控制JavaFX图形化界面的各种显示、事件等,核心代码
     │           ├── Main.java     JavaFX 应用程序的入口
     │           ├── core    核心代码文件夹
     │           │   ├── CVE_2020_14882.java exp编写示例
     │           │   ├── Constants.java  一些常量信息
     │           │   ├── ExploitInterface.java exp 编写要实现的接口
     │           │   ├── Job.java 批量检查的线程池
     │           │   └── VulInfo.java    映射批量检查界面中的表格,信息基本类
     │           └── tools 工具文件夹
     │               ├── HttpTool.java     HTTP 请求封装
     │               ├── MyCERT.java    HTTPS 请求证书设置
     │               └── Tools.java    一些处理函数
     └── resources 资源文件夹
         ├── sample.fxml avaFX图形化界面描述文件
         ├── sec.png
         └── weixin.jpg

3.2 编写EXP

编写EXP时,要使用 implements实现ExploitInterface接口,实现接口中的几个方法

图形化漏洞利用Demo-JavaFX版-图片2

  • checkVUL 使用poc 检查是否漏洞

  • exeCMD 使用exp执行命令

  • uploadFile 使用命令执行 写webshell,上传文件

  • getWebPath 获取网站的web目录,供上传文件使用

  • isVul 是否存在漏洞,检查时会根据结构自动赋值,供后续调用

EXP具体编写请参考 src/main/java/com/yhy/core/CVE_2020_14882.java示例

当编写完EXP后,转到 src/main/java/com/yhy/core/Constants.java文件,修改CVES变量,即图像化界面中可供选择的漏洞列表

图形化漏洞利用Demo-JavaFX版-图片3

之后进入src/main/java/com/yhy/Controller.javacom/yhy/tools/Tools.java文件编写逻辑

图形化漏洞利用Demo-JavaFX版-图片4

图形化漏洞利用Demo-JavaFX版-图片5

编写完后,可以直接执行Main类, 查看是否正常运行。

3.3 部署,发布

当一切编写完成,bug修复完毕,在项目根目录下执行 mvn jfx:jar即可生成 jar文件。

对方没有Java环境,不想安装怎么办?

使用mvn jfx:native命令生产对应平台的文件,比如Mac 下,执行命令mvn jfx:native命令就会在 target/jfx/native目录下生成打包后应用,带可执行文件,带 JRE 运行环境。

mvn clean用于清除生成的文件。

0x04 界面修改

对界面不满意,或者想添加其他功能

安装 JavaFx Scene Builder

https://www.oracle.com/java/technologies/javafxscenebuilder-1x-archive-downloads.html

安装完,在IDEA中右键打开(设置好JavaFx Scene Builder的路径)

图形化漏洞利用Demo-JavaFX版-图片6

打开后

图形化漏洞利用Demo-JavaFX版-图片7

想添加什么控件,直接从Scene Builder的左边控件栏中拖拽一个到界面设计区域,然后只需要关心右侧栏第三个Codefx:idOn Action

图形化漏洞利用Demo-JavaFX版-图片8

比如想添加一个 输入框,搜索框查询,然后拖一个 TextField控件到设计区

图形化漏洞利用Demo-JavaFX版-图片9

为这个 TextField设置一个fx:id,然后Ctrl+s保存, sample.fxml会做出相应的更改,不需要关心

之后到src/main/java/com/yhy/Controller.java文件编写逻辑

  1. 使用@FXML注解,声明变量

    图形化漏洞利用Demo-JavaFX版-图片10

  2. 在函数中使用变量

    使用this.cmd.getText()获取输入的值

    使用this.cmd.setText()设置值

    图形化漏洞利用Demo-JavaFX版-图片11

    其他控件使用,请参考src/main/java/com/yhy/Controller.java,或者自行学习JavaFX。


图形化漏洞利用Demo-JavaFX版-图片12

来都来了,不关注一波?

https://www.freebuf.com/sectool/267960.html

 
枫少@KillBoy
  • it2021
  • it2021.com
  • JavaFX开发
  • shell
  • Weblogic
  • Weblogic漏洞
  • 代码执行
  • 代码执行漏洞
  • 漏洞利用
  • 漏洞利用工具
  • 远程代码执行
评论  45  访客  44  作者  1
    • 幻影蛇
      幻影蛇 0

      这玩意看着挺方便,但JavaFX现在还有人用吗?

        • 月隐孤舟
          月隐孤舟 0

          @ 幻影蛇 JavaFX现在确实用的少了,不过跨平台还行

        • The Gardener
          The Gardener 0

          刚试了下打包,Mac上生成的app体积有点大啊🤔

            • 群聊侠客
              群聊侠客 0

              @ The Gardener 打包体积大是因为内置了JRE环境,可以试试用jlink裁剪下

            • 深黑暗影
              深黑暗影 1

              新手问下,写EXP的时候HTTP请求超时怎么调?

                • 电子哨兵
                  电子哨兵 0

                  @ 深黑暗影 HttpTool里有setTimeout方法,直接传入毫秒数就行。

                  • BlackholeScribe
                    BlackholeScribe 0

                    @ 深黑暗影 HTTP请求超时可以在HttpTool里改connectTimeout参数吧

                  • 爱吃火锅的喵
                    爱吃火锅的喵 0

                    前几天刚搞完WebLogic的漏洞复现,这个框架省了不少事

                    • 蚀骨狂想
                      蚀骨狂想 0

                      又是JavaFX…界面卡得要死,不如直接用Electron

                      • 织女下凡
                        织女下凡 0

                        感觉还行,至少比手搓Swing强多了

                        • 幽夜猫娘
                          幽夜猫娘 0

                          那如果是需要登录认证的漏洞咋整?支持cookie传入不?

                          • 幻影之刺
                            幻影之刺 0

                            hhh楼主是不是忘了提JDK版本要求,我17跑不起来

                            • AuroraNomad
                              AuroraNomad 0

                              批量检测线程数能调吗?默认5个太慢了

                                • 影界幻影
                                  影界幻影 0

                                  @ AuroraNomad 可以自己去Job.java里改,改成10或20都行。

                                • 奥术之痕
                                  奥术之痕 0

                                  界面改起来其实挺简单的,拖拽完绑定下fx:id就行

                                  • 老收音机
                                    老收音机 0

                                    这个CVE-14882的例子挺实用的,正好最近在复现

                                    • 丝绸之路
                                      丝绸之路 0

                                      有考虑加个代理功能吗?有时候测试需要走代理

                                      • 墨染Ink
                                        墨染Ink 0

                                        试了下JDK11可以正常运行,高版本可能需要调配置

                                        • 归梦遥
                                          归梦遥 1

                                          界面响应还好啊,我这不卡,Electron吃内存更厉害

                                            • 幽影咒术师
                                              幽影咒术师 0

                                              @ 归梦遥 确实,JavaFX比Electron轻量不少,尤其在老机器上更省资源。

                                            • 玫瑰暮色
                                              玫瑰暮色 0

                                              之前手写Weblogic检测脚本折腾了好久,这个省事多了

                                              • 龙骨道人
                                                龙骨道人 0

                                                批量检测线程数在Job.java里可以自己改

                                                • EchoInTheFog
                                                  EchoInTheFog 1

                                                  要是能支持自定义POC模板就更方便了

                                                  • 霜火守护者
                                                    霜火守护者 0

                                                    界面挺直观的,省事。

                                                    • 小咸鱼翻身
                                                      小咸鱼翻身 1

                                                      这工具真省心,写EXP快。

                                                      • 袖底梅花
                                                        袖底梅花 1

                                                        有现成的架子,能省不少功夫。

                                                          • 苍穹之鹰
                                                            苍穹之鹰 1

                                                            @ 袖底梅花 省事多了,我也想试试改几个exp

                                                          • 虎纹大叔
                                                            虎纹大叔 0

                                                            不想装JDK,直接用jar就行。

                                                            • 白骨姬
                                                              白骨姬 0

                                                              看了文档,感觉还行。

                                                              • Crimson Blossom
                                                                Crimson Blossom 0

                                                                赞一个,挺好用。

                                                                • 幽光引路
                                                                  幽光引路 1

                                                                  对新手友好吗?想试试。

                                                                  • 窑工老陈
                                                                    窑工老陈 0

                                                                    前几天刚搞完打包,体积确实有点大。

                                                                    • 喧闹星辰
                                                                      喧闹星辰 0

                                                                      批量检测线程数能改,改成10会不会更快?

                                                                      • 独望星河
                                                                        独望星河 0

                                                                        新手想问,EXP里HttpTool超时默认多久?能改吗?

                                                                        • 云端梦旅
                                                                          云端梦旅 1

                                                                          界面看着还行,就是打包太占空间。

                                                                            • 虚拟星使
                                                                              虚拟星使 1

                                                                              @ 云端梦旅 JavaFX打包体积是挺大的

                                                                            • 阳光下的泡沫
                                                                              阳光下的泡沫 0

                                                                              我之前也踩过WebLogic的坑,这框架省了不少时间。

                                                                              • 花果小猫
                                                                                花果小猫 0

                                                                                界面卡顿的情况在低配机器上会出现,建议加点异步加载。

                                                                                • 温柔马小驰
                                                                                  温柔马小驰 0

                                                                                  有没有计划加个代理选项,渗透测试经常要走代理。

                                                                                  • 糖醋小排骨
                                                                                    糖醋小排骨 1

                                                                                    挺适合给甲方演示的。

                                                                                      • 枫少@KillBoy
                                                                                        枫少@KillBoy

                                                                                        @ 糖醋小排骨 给甲方演示效果还挺直观的

                                                                                      • 苗人凤
                                                                                        苗人凤 0

                                                                                        如果漏洞需要登录后才能利用,框架能否支持手动传入cookie?

                                                                                        • 云朵有点甜
                                                                                          云朵有点甜 0

                                                                                          整体来看,这套JavaFX方案比起传统命令行工具更友好,尤其是对不熟悉Java的安全研究员,只要按步骤填好EXP,就能快速生成可视化的利用界面,后期维护也省心。

                                                                                          • 丁香私语
                                                                                            丁香私语 1

                                                                                            我在Mac上用mvn jfx:native生成的app,虽然体积大点,但自带JRE,完全不需要额外装环境,直接双击就能跑,体验还算不错,唯一遗憾是启动时会弹出安全警告。🤔

                                                                                            • 隔壁老王的老王
                                                                                              隔壁老王的老王 1

                                                                                              这项目开源了吗?

                                                                                            匿名

                                                                                            发表评论

                                                                                            匿名网友

                                                                                            拖动滑块以完成验证