CTF-PHP代码分析

一.题目 小宁听说php是最好的语言,于是她简单学习之后写了几行php代码。 根据提示,就应该分析代码:

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

根据相关的知识,前后均是php的框架<?php;?>。其中 show_source是定义的一个函数,具体函数是干啥的,还是要看函数体;

include...这个也是php的一个格式;接下来,就是参数的传值了,有a和b两个参数,在参数之后,就是对参数值的判断了,很明显,判断对了就会出现 flag。

在第一个if的地方,就是将a和0进行比较,返回Ture就可以了;

第二个if是一个函数 is_numeric() ;这个函数是判断是否为纯数字的;所以b ,肯定不是纯数字;

第三个if,是对b的值进行判断,且 b的值要大于1234.

综上,所以a可以为 b;b可以为 数字+字母 的形式,列如 b=6666a

posted @ 2021-07-18 20:57  MCY5  阅读(543)  评论(0编辑  收藏  举报