-
-
[原创]Bugku-WEB-本地包含
-
发表于: 2018-11-16 05:09 3526
-
本帖来自我的CSDN,不晓得这样算不算原帖,如有违规请联系我整改
这是最近几天刷的题目,望共勉。
题目提示,需要将flag.php包含进去才可以得到flag
百度了一下$_REQUEST函数,发现易存在sql漏洞和变量漏洞覆盖
第二句话要获得hello的值,由于hello为’hello’,所以无论在url栏中对hello赋任何值,都会全盘接受,其中var_dump()是将变量a打印到界面中,在根据eval函数的特性(计算后面括号中的表达式)
SO——
(1)a变量由$_REQUEST变量获取,可以用GET或POST方法为hello赋值进而为$a赋值
(2)程序并未对hello的输入进行判断过滤
(3)eval函数中执行的命令进而可以被$a的值所决定
方法一:构造方法来输出flag.php
http://123.206.87.240:8003/?hello=);print_r(file("./flag.php"));%23
<?php include "flag.php"; $a = @$_REQUEST['hello']; eval( "var_dump($a);"); //eval("var_dump();print_r(file("./flag.php")); show_source(__FILE__); ?>
可以得到flag
方法二:
可以file_get_contents()或者file()函数赋值给hello
构造如下:
http://123.206.87.240:8003/?hello=file(%22./flag.php%22)
由于file_get_contents()函数是将文件的整个内容读入到一个字符串中
所以爆出的页面如下
按下F12可以查看string(84)中的内容
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
看原图
赞赏
雪币:
留言: