第一期 Web 靶场汇总
SSRF 综合实战靶场系列
代码执行混淆免杀系列(8种场景)
<?php
error_reporting(0);
highlight_file(__FILE__);
$_GET[1]($_GET[2]);
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
$x = $_GET[1].$_GET[2].$_GET[3].$_GET[4].$_GET[5].$_GET[6];
$x($_GET[7]);
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
$x = strtr($_GET[1],$_GET[2],$_GET[3]);
$x($_GET[4]);
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
$x = substr_replace($_GET[1],$_GET[2],$_GET[3],$_GET[4]);
$x($_GET[5]);
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
preg_replace($_GET["pattern"], $_GET["new"], $_GET["base"]);
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
$a = explode($_GET[1], $_GET[2]);
$b = $a[0].$a[1].$a[2].$a[3].$a[4].$a[5];
$b($_GET[3]);
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
if(!preg_match('/[a-z0-9]/is',$_GET['shell'])) {
eval($_GET['shell']);
}
?>
<?php
error_reporting(0);
highlight_file(__FILE__);
eval($_POST['x_x.']);
?>
系统命令执行漏洞系列(8种场景)
if (isset($_POST['ip']) && $_POST['ip']) {
$cmd = "ping -c 4 {$_POST['ip']}";
exec($cmd, $res);
}
if (preg_match('/ /', $_POST['ip'])) {
die("检测到非法字符:空格");
}
if (preg_match('/cat/', $_POST['ip'])) {
die("检测到非法字符:cat");
}
if (preg_match('/flag/', $_POST['ip'])) {
die("检测到非法字符:flag");
}
if ($res) {
echo "<pre>";
print_r("无回显的命令执行");
echo "</pre>";
}
if (preg_match('/bash/', $_POST['ip'])) {
die("已拦截 bash 反弹 shell 操作");
}
if (preg_match('/\*/', $_POST['ip'])) {
die("检测到非法字符:*");
}
if (preg_match('/`/', $_POST['ip'])) {
die("检测到非法字符:`");
}
if (preg_match('/base64/', $_POST['ip'])) {
die("检测到非法字符:base64");
}
if (preg_match('/\?/', $_POST['ip'])) {
die("检测到非法字符:?");
}
if (strlen($_POST['ip']) > 9) {
die("不允许输入长度超过 9 的 IP 地址");
}
if (preg_match('/\*/', $_POST['ip'])) {
die("检测到非法通配符:*");
}
if (preg_match('/\?/', $_POST['ip'])) {
die("检测到非法通配符:?");
}
if (preg_match('/nl/', $_POST['ip'])) {
die("检测到非法通配符:nl 没想到你居然知道 nl 太强了,不过本题考查的是:命令拼接执行(嘘 不要告诉别人哦)");
}
文件包含漏洞系列(15种场景)
任意文件下载漏洞系列(8种场景)