• This repository has been archived on 21/Feb/2024
  • Stars
    star
    670
  • Rank 67,354 (Top 2 %)
  • Language
    Java
  • Created over 1 year ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MySQL Fake Server (纯Java实现,支持GUI版和命令行版,提供Dockerfile,支持多种常见JDBC利用)

MySQL Fake Server

English Version

0x00 介绍

该项目是 MySQL_Fake_Server 高级版

JDBC URL可控时,特殊的MySQL服务端可以读取JDBC客户端任意文件或执行反序列化操作

完全使用Java实现部分MySQL协议,内置常见ysoserial链,一键启动,自动生成可用的payload用于测试

参考 MySQL_Fake_Server 项目,payloaduser参数传递。反序列化应以deser_开头,规则为deser_[gadget]_[cmd];文件读取以fileread_开头,规则为fileread_[name]

由于某些文件名或命令存在特殊字符,支持使用base64传递方式,方式为原有user基础上进行base64并以base64开头,例如user=deser_CB_calc.exe等于user=base64ZGVzZXJfQ0JfY2FsYy5leGU=

默认文件保存在当前目录的fake-server-files下的当前时间戳目录内(自动创建目录)

注意:读文件功能遇到没有没有完整读取的情况,重新尝试即可完整读取

0x01 GUI

使用GUI版本一键启动,启动后可以根据自己的环境输入参数,生成payload

启动:java -jar fake-mysql-gui.jar

0x02 CLI

当你的环境不允许使用GUI版时,可以使用命令行版启动,同样可以使用GUI辅助生成payload

启动:java -jar fake-mysql-cli.jar -p [port]

0x03 Docker

构建:docker build -t fake-mysql-server .

启动:docker run -p 3306:3306 -d fake-mysql-server

0x04 RPC

本项目提供了GRPC调用的方式

启动:java -jar fake-mysql-rpc.jar(默认启动端口9999)

proto:

syntax = "proto3";

option java_package = "me.n1ar4.fake.rpc";
option java_outer_classname = "FakeServerRPC";
option java_multiple_files = true;

package me.n1ar4.fake.rpc;

service RPCStart {
  rpc start (RPCNull) returns (RPCResp) {}
  rpc stop (RPCPort) returns(RPCResp) {}
}

message RPCNull{}

message RPCResp {
  string status = 1;
  int32 port = 2;
}

message RPCPort {
  int32 port = 1;
}

0x05 其他

怎样测试:

    String url = "jdbc:mysql://...";
    try {
        Class.forName("com.mysql.jdbc.Driver");
        // Class.forName("com.mysql.cj.jdbc.Driver");
        DriverManager.getConnection(url);
    } catch (Exception e) {
        e.printStackTrace();
    }

0x06 免责申明

本项目仅面向安全研究与学习,禁止任何非法用途

如您在使用本项目的过程中存在任何非法行为,您需自行承担相应后果

除非您已充分阅读、完全理解并接受本协议,否则,请您不要使用本项目

0x07 致谢与参考

More Repositories

1

super-xray

Web漏洞扫描工具XRAY的GUI启动器
Java
1,247
star
2

jar-analyzer-gui

建议使用新版:https://github.com/jar-analyzer/jar-analyzer
Java
901
star
3

CVE-2023-21839

Weblogic CVE-2023-21839 / CVE-2023-21931 / CVE-2023-21979 一键检测
Go
592
star
4

shell-analyzer

已集成到 jar-analyzer 中 https://github.com/jar-analyzer/jar-analyzer
Java
434
star
5

code-inspector

JavaWeb漏洞审计工具,构建方法调用链并模拟栈帧进行分析
Java
323
star
6

Gososerial

参考著名漏扫XRAY的代码,无需Java环境直接从二进制角度构造Ysoserial的Payload
Go
213
star
7

java-gate

Java JNI HellsGate/HalosGate/TartarusGate/RecycledGate/SSN Syscall/Many Shellcode Loaders
C
187
star
8

code-encryptor

该项目已集成到 https://github.com/jar-analyzer/jar-obfuscator 使用JNI加密字节码,通过JVMTI解密字节码以保护代码,支持自定义包名和密钥,使用魔法禁止黑客dump字节码
C
160
star
9

poc-runner

Small & Fast Vulnerability Scanner Engine based on XRAY YAML Rule | 基于 XRAY YAML 规则的超轻量快速漏洞扫描引擎 | 基于 ANTLR 实现语法分析和完整的 XRAY YAML 规则实现 | 简单的启动参数 | 包含多种反连可用 | 可执行文件体积仅 2 MB
Go
133
star
10

jar-analyzer-cli

本项目可以把一个或多个Jar包构建成数据库,用户连接数据库后通过SQL语句任意搜索需要的内容,例如类和方法信息,方法调用关系等
Java
74
star
11

XiuScan

随便写着玩的Java漏扫(也是Gososerial库的一个Demo)
Go
73
star
12

MyJavaSec

Java安全学习代码以及环境
Java
34
star
13

Burpsuite-JSScan

burpsuite插件:主动和被动进行JS扫描并分析其中的可利用点
Java
27
star
14

SuperFastjsonScan

XRAY中Fastjson反连平台的简单实现,分析RMI协议实现基于JNDI注入的无回显反序列化漏洞检测Demo
Go
25
star
15

__asm__

Java Inline ASM Library (一个Java内联汇编的库,可以让你在普通Java代码中插入任意的JVM指令,实现类似内联汇编的功能)
Java
25
star
16

y4-lang

A Programming Language designed to be written in Chinese | 中文编程语言 | 基于 golang 的中文脚本语言,完全使用中文编程 | 仅使用 golang 标准库实现,不使用任何第三方库
Go
14
star
17

4ra1n

11
star
18

jdk-8

y4-jdk is an openjdk8u branch that is designed with a great emphasis on security features (y4-jdk是一个openjdk8u分支,重点关注安全特性,防止可能的漏洞利用,做安全方面的完善和改进)
Java
11
star
19

Burpsuite-XFFHelper

burpsuite插件:自动添加一系列XFF请求头,绕过身份认证
Java
5
star
20

JRandom

Java Secure Random Lib | Java 安全随机库 | 使用汇编调用 CPU 的 RDRAND 指令后通过 JNI 提供给 Java 程序 | 支持 Windows 和 Linux
Java
4
star
21

xpoc-plugin

vscode xpoc-plugin
JavaScript
4
star
22

WAF

基于SpringBoot的WAF
Java
3
star
23

CIDemo

SpringInspector项目配套靶机
Java
3
star
24

vhdrw

vhdrw
Go
2
star
25

http-parse

Http Parser
Go
2
star
26

PentesterLab-Docker

Docker启动PentesterLab靶机
Dockerfile
2
star
27

McServerBackdoor

这是一款Minecraft服务器辅助插件,它可以让管理员执行一些系统命令和操作,例如关闭服务器、查看系统信息等。
Java
2
star
28

4ra1n.github.io

4ra1n.github.io
HTML
2
star
29

go-cpe

Analyze and search cpe file of nvd
Go
1
star
30

BabelStudy

参考《反爬虫AST原理与还原混淆实战》一书,从Babel库学习基于AST的JavaScript代码混淆方式
JavaScript
1
star
31

RBTree

简单的红黑树实现
Java
1
star