我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:万喜彩票 > 泛型方法 >

Mysql数据库渗透及漏洞利用

归档日期:06-03       文本归类:泛型方法      文章编辑:爱尚语录

  MySQL 数据库是目前世界上使用最为广泛的数据库之一,很多著名公司和站点都使用 MySQL 作为其数据库支撑,目前很多架构都以 MySQL 作为数据库管理系统,例如 LAMP、和 WAMP 等。

  在针对网站渗透中,很多都是跟 MySQL 数据库有关,各种 MySQL 注入,MySQL 提权,MySQL 数据库 root 账号 webshell 获取等的,但没有一个对 MySQL 数据库渗透较为全面对总结。

  在研究 MySQL 数据库安全之余,对 MySQL 如何通过 msf、sqlmap 等来进行扫描、漏洞利用、提权、MySQL 密码破解和获取 webshell 等进行了详细研究。

  Mysql默认端口是3306端口,但也有自定义端口,针对默认端口扫描主要利用扫描软件进行探测,推荐使用:

  (1)iisputter,直接填写3306端口,IP地址填写单个或者C段地址。

  特定目标的渗透,可能需要对全端口进行扫描,可以使用Nmap对某一个IP地址进行全端口扫描,端口扫描软件还有sfind等DOS下扫描的工具。

  Mysql管理工具有多种,例如phpmyadmin网站管理,Navicat for MySQL以及MysqlFront等客户端工具。这些工具有的会直接保存配置信息,这些信息包含数据库服务器地址和数据库用户名以及密码,通过嗅探或者破解配置文件可以获取密码等信息。

  获取数据库版本,操作系统名称,架构,数据库目录,数据库用户以及密码哈希值。

  (2)使用root账号root密码进行mysql密码验证并扫描获取指定IP地址的端口信息以及mysql数据库相关信息

  4.使用hscan工具对mysql口令进行扫描,需要设置扫描IP地址段以及数据库口令字典及用户名字典。

  使用ultraedit等编辑文件编辑数据库配置文件后,会留下bak文件。

  本地文件包含漏洞可以包含文件,通过查看文件代码获取数据库配置文件,进而读取数据库用户名和密码。

  有些软件会将IP地址、数据库用户名和密码写进程序中,运行程序后,通过cain软件进行嗅探,可以获取数据库密码。另外Mysql客户端管理工具有的管理员会建立连接记录,这些连接记录保存了用户名、密码和连接IP地址或者主机名,通过配置文件或者嗅探可以获取用户名和密码。

  MysqlRoot账号通过phpMyAdmin获取webshell的思路,主要有下面几种方式,以第一二六八种方法较佳,其它可以根据实际情况来进行。

  通过程序报错、phpinfo函数、程序配置表等直接获取网站真实路径,有些网站前期已经被人渗透过,因此在目录下留有后门文件通过load_file直接读取。

  前提需要知道网站的真实物理路径,例如呼求偶真实路径D:work则可以通过执行以下查询,来获取一句话后门文件cmd.php,访问地址

  创建执行命令形式的shell,但前提是对方未关闭系统函数。该方法导出成功后可以直接执行DOS命令,使用方法:后面直接执行dos命令)。

  通过后台或者存在上传图片的地方,上传图片publicguide.jpg,内容如下:

  也可以使用网站的代码转换来实现,将需要导出的文件代码复制到网站的字符串中,通过字符串转成十六进制,将十六进制字符串放入unhex函数进行查询即可:

  有些情况下无法获取网站的真实路径,则意味着无法直接导出一句话webshell,可以通过CMS系统管理账号登录系统后,寻找漏洞来突破,例如dedecms则可以通过破解管理员账号后直接上传文件来获取webshell。Discuz!的UC_key可以直接获取webshell。甚至某些系统可以直接上传php文件。下面是一些CMS系统渗透的技巧:

  (1)dedecms系统的密码有直接md5,也有20位的密码,如果是20位的密码则需要去掉密码中的前3位和最后1位,然后对剩余的值进行md5解密即可;

  sqlmap注入点获取webshell的前提是具备写权限,一般是root账号,通过执行命令来获取:

  Microsoft 建议您到存储库编译 MOF 文件使用前两种方法。也就是运行 Mofcomp.exe 文件,或使用IMofCompiler::CompileFile方法。第三种方法仅为向后兼容性与早期版本的 WMI提供,并因为此功能可能不会提供在将来的版本后,不应使用。注意使用MOF方法提权的前提是当前Root帐号可以复制文件到%SystemRoot%System32WbemMOF目录下,否则会失败!

  该漏洞的利用前提条件是必须具备mysql的root权限,在Kingcope公布的0day中公布了一个pl利用脚本。

  执行以下查询语句,将上面生成的nullevt.mof导入到c:windowssystem32wbemmof目录下在windows7中默认是拒绝访问的。导入后系统会自动运行,执行命令。

  要是能够通过网页连接管理(phpmyadmin),则可以修改host为%并刷新权限后,则可以通过msf等工具远程连接数据库。默认root等账号不允许远程连接,除非管理员或者数据库用户自己设置。

  从任何主机上使用root用户,密码:youpassword(你的root密码)连接到mysql服务器:

  荐重新增加一个用户,在实际测试过程中发现很多服务器使用root配置了多个地址,修改后可能会影响实际系统的运行。在实际测试过程中因此建议新增一个用户,授权所有权限,而不是直接更改root配置。

  (3)掌握的mysql数据库的账号有对mysql的insert和delete权限以创建和抛弃函数,一般以root账号为佳,具备`root账号所具备的权限的其它账号也可以。

  MYSQL 5.1以上版本,必须要把udf.dll文件放到MYSQL安装目录下的libplugin文件夹下才能创建自定义函数。该目录默认是不存在的,这就需要我们使用webshell找到MYSQL的安装目录,并在安装目录下创建libplugin文件夹,然后将udf.dll文件导出到该目录即可。

  在某些情况下,我们会遇到Cant open shared library的情况,这时就需要我们把udf.dll导出到libplugin目录下才可以,网上大牛发现利用NTFS ADS流来创建文件夹的方法:

  (3)创建cmdshell 函数,该函数叫什么名字在后续中则使用该函数进行查询:

  open3389 通用开3389终端服务,可指定端口(不改端口无需重启);

  通过集成udf提权的webshell输入数据库用户名及密码以及数据库服务器地址或者IP通过连接后导出进行提权。

  v5est0r 写了一个Mysql提权综合利用工具,详细情况请参考其代码共享网站:其主要功能有:

  (2)自动判断mysql版本,根据版本不同导出UDF的DLL到不同目录,UDF提权

  Sqlmap直接连接数据库提权,需要有写入权限和root账号及密码,命令如下:

  msf下udf提权成功率并不高,跟windows操作系统版本,权限和数据库版本有关,特别是secure-file-priv选项,如果有该选项基本不会成功。

  导入成功后,系统重新启动时会自动添加密码为“1”且用户名称为“1”的用户到管理员组中。在实际使用过程中该脚本成功执行的几率比较低,有时候会出现不能导出的错误。

  该脚本执行后虽然会闪现Dos窗口,如果有权限导入到启动选项中,则一定会执行成功,在虚拟机中通过MySQL连接器连接并执行以上命令后,在C:Documents and SettingsAll Users「开始」菜单程序启动目录中会有刚才导出的b.bat脚本文件。

  在不同的操作系统中C:Documents and SettingsAll Users「开始」菜单程序启动目录文件名称可能会不同,这个时候就要将其目录换成相应的目录名称即可。例如如果是英文版本操作系统则其插入的代码为:

  msf下mysql_start_up提权有一定的几率,对英文版系统支持较好。

  当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。按照公告说法大约256次就能够蒙对一次。受影响的产品: All MariaDB and MySQL versions up to 5.1.61, 5.2.11, 5.3.5, 5.5.22 存在漏洞。

  使用UltraEdit-32编辑器直接打开user.MYD文件,打开后使用二进制模式进行查看,在root用户后面是一串字符串,选中这些字符串将其复制到记事本中,这些字符串即为用户加密值,例如506D1427F6F61696B4501445CDAE3。

  (2)在有些情况下需要往后面看看,否则得到的不是完整的MYSQLSHA1密码,总之其正确的密码位数是40位。

  安装cain工具,使用cracker,右键单击“Add tolist”将Mysql Hashes值加入到破解列表中,使用软件中的字典、暴力破解等方式来进行暴力破解。

  (二)网站在线解。将获取的mysql值放在cmd5.com网站中进行查询,mysql密码一般都是收费的。

  2、somd5.com破解。Somd5.com是后面出现的一个免费破解网站,每次破解需要手工选择图形码进行破解,速度快,效果好,只是每次只能破解一个,而且破解一次后需要重新输入验证码。

本文链接:http://apps-n-tabs.com/fanxingfangfa/427.html