最后更新于
最后更新于
MySQL可以被描述为一种开源关系数据库管理系统(RDBMS),可免费使用。它运行在**结构化查询语言(SQL)**上,可以管理和操作数据库。
默认端口: 3306
一些枚举操作需要有效的凭据。
实际上,当您尝试将本地数据加载到表中时,MySQL或MariaDB服务器会要求客户端读取文件并发送内容。因此,如果您能够篡改一个MySQL客户端以连接到您自己的MySQL服务器,您就可以读取任意文件。 请注意,这是使用以下行为:
(注意"local"这个词) 因为没有"local",你可能会得到:
如果 mysql 以 root 用户身份运行,将会非常有趣:
在 MySQL 服务的配置中,采用了各种设置来定义其操作和安全措施:
user
设置用于指定 MySQL 服务将在哪个用户下执行。
password
用于建立与 MySQL 用户关联的密码。
admin_address
指定在管理网络接口上监听 TCP/IP 连接的 IP 地址。
debug
变量表示当前的调试配置,包括日志中的敏感信息。
sql_warnings
管理在单行 INSERT 语句出现警告时是否生成信息字符串,其中包含日志中的敏感数据。
通过 secure_file_priv
,数据导入和导出操作的范围受到限制以增强安全性。
如果 mysql 服务器以 root 用户身份运行(或其他更高特权用户),您可以让其执行命令。为此,您需要使用 用户定义函数。要创建用户定义函数,您将需要一个运行 mysql 的操作系统的 库。
可以在 sqlmap 和 metasploit 中找到要使用的恶意库,方法是执行 locate "*lib_mysqludf_sys*"
命令。.so
文件是 Linux 库,而 .dll
是 Windows 库,请选择您需要的那个。
现在您已经有了库,作为特权用户(root?)登录到Mysql,并按照以下步骤操作:
在 /etc/mysql/debian.cnf 中,您可以找到用户 debian-sys-maint 的明文密码
您可以使用这些凭据登录到MySQL数据库。
在文件:/var/lib/mysql/mysql/user.MYD 中,您可以找到所有MySQL用户的哈希值(可以从数据库中的mysql.user中提取出来).
您可以执行以下操作提取它们:
您可以在/etc/mysql/my.cnf
文件中取消注释以下行以启用mysql查询的日志记录:
配置文件
windows *
config.ini
my.ini
windows\my.ini
winnt\my.ini
<InstDir>/mysql/data/
unix
my.cnf
/etc/my.cnf
/etc/mysql/my.cnf
/var/lib/mysql/my.cnf
~/.my.cnf
/etc/my.cnf
命令历史
~/.mysql.history
日志文件
connections.log
update.log
common.log
ALL_PLUGINS APPLICABLE_ROLES CHARACTER_SETS CHECK_CONSTRAINTS COLLATIONS COLLATION_CHARACTER_SET_APPLICABILITY COLUMNS COLUMN_PRIVILEGES ENABLED_ROLES ENGINES EVENTS FILES GLOBAL_STATUS GLOBAL_VARIABLES KEY_COLUMN_USAGE KEY_CACHES OPTIMIZER_TRACE PARAMETERS PARTITIONS PLUGINS PROCESSLIST PROFILING REFERENTIAL_CONSTRAINTS ROUTINES SCHEMATA SCHEMA_PRIVILEGES SESSION_STATUS SESSION_VARIABLES STATISTICS SYSTEM_VARIABLES TABLES TABLESPACES TABLE_CONSTRAINTS TABLE_PRIVILEGES TRIGGERS USER_PRIVILEGES VIEWS INNODB_LOCKS INNODB_TRX INNODB_SYS_DATAFILES INNODB_FT_CONFIG INNODB_SYS_VIRTUAL INNODB_CMP INNODB_FT_BEING_DELETED INNODB_CMP_RESET INNODB_CMP_PER_INDEX INNODB_CMPMEM_RESET INNODB_FT_DELETED INNODB_BUFFER_PAGE_LRU INNODB_LOCK_WAITS INNODB_TEMP_TABLE_INFO INNODB_SYS_INDEXES INNODB_SYS_TABLES INNODB_SYS_FIELDS INNODB_CMP_PER_INDEX_RESET INNODB_BUFFER_PAGE INNODB_FT_DEFAULT_STOPWORD INNODB_FT_INDEX_TABLE INNODB_FT_INDEX_CACHE INNODB_SYS_TABLESPACES INNODB_METRICS INNODB_SYS_FOREIGN_COLS INNODB_CMPMEM INNODB_BUFFER_POOL_STATS INNODB_SYS_COLUMNS INNODB_SYS_FOREIGN INNODB_SYS_TABLESTATS GEOMETRY_COLUMNS SPATIAL_REF_SYS CLIENT_STATISTICS INDEX_STATISTICS USER_STATISTICS INNODB_MUTEXES TABLE_STATISTICS INNODB_TABLESPACES_ENCRYPTION user_variables INNODB_TABLESPACES_SCRUBBING INNODB_SYS_SEMAPHORE_WAITS
是西班牙最重要的网络安全活动之一,也是欧洲最重要的之一。作为促进技术知识的使命,这个大会是技术和网络安全专业人士在各个领域的热点交流之地。
您可以在文档中查看每个权限的含义:
初始 PoC: 在这篇论文中,您可以看到对攻击的完整描述,甚至如何将其扩展到 RCE: 在这里,您可以找到对攻击的概述:
是西班牙最重要的网络安全活动之一,也是欧洲最重要的之一。作为促进技术知识的使命,这个大会是技术和网络安全专业人士在各个领域的热点聚会。
如果您 没有 这些库,您可以 寻找它们,或者下载这个 并在易受攻击的 Linux 机器上 编译。
是西班牙最重要的网络安全活动之一,也是欧洲最重要的活动之一。以促进技术知识为使命,这个大会是技术和网络安全专业人士在各个领域的热点交流会。
如果您想看到您的公司在HackTricks中做广告或下载PDF版本的HackTricks,请查看!
获取
探索,我们的独家收藏品
加入 💬 或 或在Twitter上关注我们 🐦 。
通过向和 github仓库提交PR来分享您的黑客技巧。