攻防世界web ics-07
2021-02-01 04:16
标签:index loading ack sql img isset 一句话 header 一句话木马 打开环境 根据提示找到 得到网站源码 一段一段分析 第一段: session_start(); 参数 page 存在 且 参数page不等于index.php 才包含flag.php 第二段: if ($_SESSION[‘admin‘]) { session["admin"] 要拿到admin的session, 将$con 的内容 写到$file if(preg_match(‘/.+\.ph(p[3457]?|t|tml)$/i‘, $filename)) 过滤掉后缀 是 .php3,.php4,.php5,.php7,.t,.tml chdir(‘uploaded‘); 这里切换了路径 真实的路径在 uploaded下面 第三段: if (isset($_GET[id]) && floatval($_GET[id]) !== ‘1‘ && substr($_GET[id], -1) === ‘9‘) { id 存在 ,floatval($_GET[id]) !== ‘1‘ 浮点不为1 ,substr($_GET[id], -1) === ‘9‘ 最后一位为9 三段代码分析结束了, 首先我们要得到admin 构造payload: ?page=flag.php&id=1-9&submit (page为flag.php,使用1-9来绕过第二端过滤) 第二步: 我们要写入一句话木马 con为 文件内容 file为文件名 post上传 构造payload: con=&file=shell.php/1.php/.. 上传成功 使用蚁剑连接 得到flag cyberpeace{c4c0ee17bb51a571444ffb3edc04a087} 攻防世界web ics-07 标签:index loading ack sql img isset 一句话 header 一句话木马 原文地址:https://www.cnblogs.com/zhangzhijie98/p/13184297.html
这源码分为三段
if (!isset($_GET[page])) {
show_source(__FILE__);
die();
}
if (isset($_GET[page]) && $_GET[page] != ‘index.php‘) {
include(‘flag.php‘);
}else {
header(‘Location: ?page=flag.php‘);
}
?>
$con = $_POST[‘con‘];
$file = $_POST[‘file‘];
$filename = "backup/".$file;
if(preg_match(‘/.+\.ph(p[3457]?|t|tml)$/i‘, $filename)){
die("Bad file extension");
}else{
chdir(‘uploaded‘);
$f = fopen($filename, ‘w‘);
fwrite($f, $con);
fclose($f);
}
}
?>
include ‘config.php‘;
$id = mysql_real_escape_string($_GET[id]);
$sql="select * from cetc007.user where id=‘$id‘";
$result = mysql_query($sql);
$result = mysql_fetch_object($result);
} else {
$result = False;
die();
}
if(!$result)die("
something wae wrong !
");
if($result){
echo "id: ".$result->id."";
echo "name:".$result->user."";
$_SESSION[‘admin‘] = True;
}
?>