CSS-T|MysqlClient任意文件读取攻击链拓展-创新互联

作者:LoRexxar@知道创宇404实验室 & Dawu@知道创宇404实验室 

专注于为中小企业提供成都做网站、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业咸宁免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

原文地址: https://paper.seebug.org/1112/

英文版本: https://paper.seebug.org/1113/

这应该是一个很早以前就爆出来的漏洞,而我见到的时候是在TCTF2018 final线下赛的比赛中,是被 Dragon Sector 和 Cykor 用来非预期h5x0r's club这题的一个技巧。

http://russiansecurity.expert/2016/04/20/mysql-connect-file-read/

在后来的研究中,和@Dawu的讨论中顿时觉得这应该是一个很有趣的trick,在逐渐追溯这个漏洞的过去的过程中,我渐渐发现这个问题作为mysql的一份feature存在了很多年,从13年就有人分享这个问题。

  • Database Honeypot by design (2013 8月 Presentation from Yuri Goltsev)
  • Rogue-MySql-Server Tool (2013年 9月 MySQL fake server to read files of connected clients)
  • Abusing MySQL LOCAL INFILE to read client files (2018年4月23日)

在围绕这个漏洞的挖掘过程中,我们不断地发现新的利用方式,所以将其中大部分的发现都总结并准备了议题在CSS上分享,下面让我们来一步步分析。

Load data infile

load data infile是一个很特别的语法,熟悉注入或者经常打CTF的朋友可能会对这个语法比较熟悉,在CTF中,我们经常能遇到没办法load_file读取文件的情况,这时候唯一有可能读到文件的就是load data infile,一般我们常用的语句是这样的:

load data infile "/etc/passwd" into table test FIELDS TERMINATED BY '\n';

分享题目:CSS-T|MysqlClient任意文件读取攻击链拓展-创新互联
URL链接:http://scyanting.com/article/eoeei.html