XCTF攻防世界web新手练习—simple_php

题目

题目为simple_php,根据题目信息,判断是关于php代码审计的.

XCTF攻防世界web新手练习—simple_php

小宁听说的很对,PHP的最好的语言。

打开题目,得到一串php代码

<?php
show_source(__FILE__);
include("config.php");
$a=@$_GET['a'];
$b=@$_GET['b'];
if($a==0 and $a){
    echo $flag1;
}
if(is_numeric($b)){
    exit();
}
if($b>1234){
    echo $flag2;
}
?>

简单审计下代码,发现需要以get的方式传入两个参数a和b。

a参数的要求 a必须等于0且a为真

b参数的要求 b不能为数字且b大于1234

来看代码

if($a==0 and $a){
    echo $flag1;
}

因为php是弱类型语言,当不同类型的值进行==比较的时候会发生类型转换。

所以,只需要使a=0e1

下一段代码

if(is_numeric($b)){
    exit();
}
if($b>1234){
    echo $flag2;
}

get的b不能是数字,但又必须大于1234,这里可以用b=12345a绕过

结合一下

?a=0e1&b=12345a

得到flag

XCTF攻防世界web新手练习—simple_php

原创文章,作者:陌涛,如若转载,请注明出处:https://imotao.com/4068.html

(0)
陌涛的头像陌涛
上一篇 2020年9月29日
下一篇 2020年9月29日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据