freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

    MySQL弱口令漏洞的重现和利用
    2018-02-09 08:30:37

    前言:

    本文详细介绍了如何在fedora26上部署mysql,以及如何利用hydra暴力破解mysql弱口令密码并利用mysql服务写入一句话木马连接菜刀,这个过程中我遇到了许多坑,走了不少弯路,好在最后还是达到了目的,在此整理一下思路,供像我一样的小白们学习参考,如有错误烦请大牛们斧正。

    一、漏洞简介以及危害:

    MySQL 弱口令漏洞指 MySQL 数据库 root 账号对应的密码长度太短或者复杂度不够,如仅包含数字,或仅包含字母等。

    弱口令容易被暴力破解,一旦被恶意利用来登录系统,会导致数据泄露,如果得到了root权限登录mysql服务,则可以写入恶意文件,危害更大,本文就是以root身份远程登录mysql服务写入了一句话木马连接了菜刀。

    二、漏洞重现以及利用:

    1.环境搭建(LAMP的搭建):

    (一)Fedora26下安装mysql:
    (1)在root用户模式下输入rpm -qa |grep mysql,列出本地的mysql rpm软件包:

    1.png

    (2)输入rpm –e+软件包名,从列表的最下面一个包开始,逐个往上删除,直至全部删掉(不必输版本号):

    2.png


    (3)更新mysql5.7.20版的rpm包的源(链接只对Fedora26有用):

    dnf install https://dev.mysql.com/get/mysql57-community-release-fc26-10.noarch.rpm

    3.png


    (4)安装mysql5.7.20:

    4.png

    (5)如果愿意的话可以输入 dnf–enablerepo=mysql80-community install mysql-community-server更新至8.0.3:

    5.png

    (6)此时如果直接运行mysql服务的话会出现如下错误:

    6.png

    解决方法:

    输入vim /etc/my.cnf,在【mysqld】节点下增加一行代码skip-grant-tables (忽略密码授权)如下:

    7.png

    保存退出,然后启动mysql服务:systemctl start mysqld;

    输入ps -e | grep mysql找到mysql服务的pid:

    8.png

    杀掉mysql进程(kill+pid号):

    9.png

    使用mysql -u root -p重新进入mysql的root模式,依次输入以下内容:

    use mysql;

    UPDATE user SET authentication_string=PASSWORD('12345678')WHERE user='root';

    (注意mysql5之后的版本user表里没有password列改为了authentication_string)

    再次编辑my.cnf文件,注释掉刚才加上的代码;

    重启mysql服务:systemctl restart mysqld

    至此,初始密码修改为了12345678

    (7) 输入mysql_secure_installation,开始进行安全设置(必须设置一遍才能正常使用mysql),此时密码为12345678:

    10.png

    (8) 修改密码,会发现纯数字密码如12345678不能通过,如下:

    11.png

    查了查资料才知道,这是由于MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格。使用了该插件会检查设置的密码是否符合当前设置的强度规则,若不满足则拒绝设置(坑。),如果不想下载低版本的mysql,可采用如下步骤解决:

    输入mysql -u root -p,进入mysql的root模式(此时的密码为初始密码12345678),然后输入以下代码:

    12.png

    退出mysql,重新进入安全设置:

    13.png

    可以设置简单密码12345678,问题解决。

    (9)继续进行安全设置,注意下图红圈处选择n,确保能远程登录mysql服务:

    14.png

    (10)安全设置完成后,还需关闭mysql的文件写入保护(这个地方坑了我很久,不关上只能把文件写入设置好的默认路径,不能把一句话木马写到服务器的默认目录,所以一定要关上),Mysql默认开启文件写入保护,只能写入固定的文件路径,其他位置不能写入,如下图所示,使用  show variables like '%secure%'可以看到默认路径为/var/lib/mysql-files/,如果直接写入其他路径会报错:

    15.png

    解决方法:

    编辑/etc/my.cnf,加上secure_file_priv=(等号后不输任何东西,设置为空值即可):

    16.png

    重启mysql服务,发现可以写入其他路径,问题解决:

    17.png

    至此便完成了mysql在fedora26的部署,此时的部署是有弱口令漏洞的。

    (二)hydra的安装:

    hydra是著名黑客组织thc的一款开源的暴力密码破解工具,可以在线破解多种密码。这款暴力密码破解工具相当强大,支持几乎所有协议的在线密码破解,其密码能否被破解关键在于字典是否足够强大。

    Fedora26直接使用 dnf install hydra安装即可:

    18.png

    (三)apache服务的安装:

    fedora默认装有apache服务,启动命令为systemctl start httpd

    (四)安装php:

    dnf install php php-common

    dnf install php-mysqlnd php-gd php-cli -php-mbstring

    上面两条命令运行完成即安装完成

    (五)使用vbox的链接复制,复制该虚拟机,一台作为靶机一台作为攻击端

    2.漏洞利用:


    (1)启动两台虚拟机,网络设置为近主机模式:

    19.png

    靶机的ip为192.168.56.101,使用ifconfig + 网卡名 + ip + up修改攻击端的ip为192.168.56.102,确保互相之间能ping通:

    20.png

    (2)启动靶机的mysql服务 systemctl start mysqld:

    21.png


    启动靶机的apache服务:systemctl start httpd

    关闭靶机的防火墙服务:systemctl stop firewalld

    (3)在攻击端新建user.txt和pass.txt作为暴力破解靶机口令的字典,由于这里只是用于演示,因此我直接把正确密码写进了字典,节约破解时间:

    22.png

    user.txt的内容如下:

    23.png

    pass.txt的内容如下:

    24.png

    (4)使用hydra暴力破解靶机的root用户密码,命令为:hydra -L 用户名字典 -P 密码字典 靶机IP mysql

    25.png

    得到靶机mysql服务root用户的密码为12345678

    写入一句话木马并连接菜刀的操作我是在本机上进行的,本机的系统为win10,Cknife的百度云链接为:

    链接:https://pan.baidu.com/s/1dpboom 密码:uyyo

    另外因为这个是java写的,还需下载JDK(官网下载最新版即可)

    (注意,因为靶机的php版本为php7,之前找到的中国菜刀不支持php7,很坑,建议要么该换低版本的php要么直接下载我给的这个)

    (5)在win10上使用破解得到的靶机mysql服务的密码登录靶机的mysql,然后写入一句话木马至/var/www/html目录下(httpd服务默认路径):

    26.png

    这里能写入成功的前提是:1.以root用户的身份登录mysql服务;2.mysql服务关闭了secure_file_priv。

    (6)打开Cknife,编辑内容如下:

    27.png

    连接成功:

    28.png

    *本文原创作者:flurry,属于FreeBuf原创奖励计划,禁止转载

    # mysql # 口令密码
    本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
    被以下专辑收录,发现更多精彩内容
    + 收入我的专辑
    + 加入我的收藏
    相关推荐
    • 0 文章数
    • 0 关注者