前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >phpMyAdmin LOAD DATA INFILE 任意文件读取漏洞

phpMyAdmin LOAD DATA INFILE 任意文件读取漏洞

作者头像
Ambulong
修改2018-12-15 08:57:37
2.1K1
修改2018-12-15 08:57:37
举报
文章被收录于专栏:安全安全

转载自:[phpMyAdmin LOAD DATA INFILE 任意文件读取漏洞](http://www.vulnspy.com/cn-phpmyadmin-load-data-local-file-read-local-file/phpmyadmin_load_data_infile_%E4%BB%BB%E6%84%8F%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96%E6%BC%8F%E6%B4%9E/)

有许多文章指出一个恶意的 MySQL 服务器可以利用LOAD DATA LOCAL命令来读取MYSQL客户端的任意文件。根据这篇公开的文章 (phpMyAdmin开启远程登陆导致本地文件读取),我们知道 phpMyAdmin 在AllowArbitraryServer开启(允许连接到任意MySQL服务器)的情况下(如云主机/云数据库提供商),可以利用该缺陷来读取phpMyAdmin服务器上的文件。

VulnSpy 已为大家提供在线 phpMyAdmin 环境地址:https://github.com/vulnspy/phpmyadmin-4.8.4-allowarbitraryserver

漏洞细节

LOAD DATA LOCAL导致的任意文件读取是个由来已久的问题,根据前人们的研究:

我们知道下列的下列情况都存在该问题:

  • MySQL Client
  • PHP + mysql/mysqli
  • PHP + PDO (MYSQL_ATTR_LOCAL_INFILE)
  • Python + MySQLdb
  • Python3 + mysqlclient
  • Java + JDBC Driver
  • ...

phpMyAdmin 属于典型的 php+mysqli 组合,当 AllowArbitraryServer 开启的情况下(默认关闭),我们可以让phpMyAdmin连接到恶意的MySQL服务器来触发任意文件读取漏洞。

漏洞利用

EXP: https://github.com/Gifts/Rogue-MySql-Server/blob/master/rogue_mysql_server.py

此处我们使用 VulnSpy 的在线 phpMyAdmin 环境作演示:

1. 点击右上角 START TO HACK 创建实验环境

创建成功后会自动生成2个虚拟环境:

  • phpmyadmin:运行phpmyadmin,目标主机
  • mysql:运行mysql,假设为黑客的服务器

2. 登录mysql的终端

1). 点击控制栏终端图标,选择db

2). 点击右上角Connect按钮,登录终端

3). 终端下运行 cd /root/exp/进入/root/exp/目录

4). 使用vim编辑rogue_mysql_server.py文件,将PORT = 3306修改为PORT = 3307

PORT为监听端口,filelist为要读取的文件

5). 运行python rogue_mysql_server.py,启动服务

6). 打开phpMyAdmin的登录页面,地址输入db:3307、用户名vulnspy、密码vulnspy,提交登录。

7). 回到db的终端,如果文件读取成功会将文件内容记录到mysql.log文件中

在该演示中成功读取/etc/passwd文件

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 漏洞细节
  • 漏洞利用
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档