0x13cmd1

看看源码
在main中可以看到我们输入的参数可以通过调用system履行

0x13cmd1

文章插图
【0x13cmd1】但是在传给system履行前,输入的内容会被filter处理
而filter过滤了tmp,flag,sh这些关键字
而且还有一点需要注意的是,我们绕过filter以后,还得注意main中的putenv,它将PATH环境变量设置为了乱七八糟的东西
PATH决定了shell将到哪些目录中寻觅命令或程序,PATH的值是一系列目录,当运行一个程序时,Linux在这些目录下进行搜寻编译链接
修改以后意味着我们要使用命令时需要使用绝对路径,比如要想读flag,正常情况下应当是cat flag,但是现在需要/bin/cat flag
综上,绕过
这里我们用到了通配符*,使用f*匹配flag文件,从而绕过
关于本次0x13cmd1的问题分享到这里就结束了 , 如果解决了您的问题,我们非常高兴 。

猜你喜欢