工具介绍
高级版 MySQL_Fake_Server :当JDBC URL
可控时,特殊的MySQL
服务端可以读取JDBC
客户端任意文件或执行反序列化操作,工具完全使用Java
实现部分MySQL
协议,内置常见ysoserial
链,一键启动,自动生成可用的payload
用于测试。
功能特性
工具参考 MySQL_Fake_Server 项目,payload
从user
参数传递。反序列化应以deser_
开头,规则为deser_[gadget]_[cmd]
;文件读取以fileread_
开头,规则为fileread_[name]
;由于某些文件名或命令存在特殊字符,支持使用base64
传递方式,方式为原有user
基础上进行base64
并以base64
开头,例如user=deser_CB_calc.exe
等于user=base64ZGVzZXJfQ0JfY2FsYy5leGU=
默认文件保存在当前目录的fake-server-files
下的当前时间戳目录内(自动创建目录)
注意:读文件功能遇到没有没有完整读取的情况,重新尝试即可完整读取。
工具支持了自定义反序列化 gadget
功能:
支持了 PostgreSQL RCE
支持了 Apache Derby
基于 Slave
的 RCE
Apache Derby
基于 Slave
的 RCE使用
使用GUI
版本一键启动,启动后可以根据自己的环境输入参数,生成payload
启动:java -jar fake-mysql-gui.jar
CLI
当你的环境不允许使用GUI
版时,可以使用命令行版启动,同样可以使用GUI
辅助生成payload
启动:java -jar fake-mysql-cli.jar -p [port]
Docker
构建:docker build -t fake-mysql-server
启动:docker run -p 3306:3306 -d fake-mysql-server
其他
怎样测试:
Stringurl="jdbc:mysql://...";try {Class.forName("com.mysql.jdbc.Driver");// Class.forName("com.mysql.cj.jdbc.Driver");DriverManager.getConnection(url); } catch (Exceptione) {e.printStackTrace(); }
项目地址
https://github.com/4ra1n/mysql-fake-server
直接下载
我用夸克网盘分享了「fake-mysql-gui-0.0.4.jar」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。链接:https://pan.quark.cn/s/a367e257cdb8
原文始发于微信公众号(风铃Sec):工具集:工具集:MySQL Fake Server【高级版MySQL_Fake_Server】
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论