zoukankan      html  css  js  c++  java
  • XCTF-Cat

    Cat

    • 题目描述

      抓住那只猫!

    • 解题过程

      看这个提示,让输入域名,猜测是php下的命令执行,先试试

      看了下请求头,是ubuntu

      • 测试规则

        • 不能包含|
        • 不能包含&
        • 可以用十进制/十六进制/二进制ip
      • 去看了官方wp

        • 使用%80得到报错信息

          • 因为url编码使用的是16进制,x 80==d 128,ascii码的范围是0-127,所以会报错

          把报错信息渲染一下,可以看到这是django的错误页面,里面包含了数据库配置信息

          DATABASES	{'default': {'ATOMIC_REQUESTS': False,
                       'AUTOCOMMIT': True,
                       'CONN_MAX_AGE': 0,
                       'ENGINE': 'django.db.backends.sqlite3',
                       'HOST': '',
                       'NAME': '/opt/api/database.sqlite3',
                       'OPTIONS': {},
                       'PASSWORD': u'********************',
                       'PORT': '',
                       'TEST': {'CHARSET': None,
                                'COLLATION': None,
                                'MIRROR': None,
                                'NAME': None},
                       'TIME_ZONE': None,
                       'USER': ''}}
          
        • 使用@来传输文件内容

          • php(<5.5)的curl中,可以使用@前缀+绝对路径来发送文件
        • 访问@/opt/api/database.sqlite3,得到报错信息,内容是数据库内容,在里面有flag

    • 参考

      https://blog.csdn.net/stepone4ward/article/details/94615617

      https://blog.csdn.net/zz_Caleb/article/details/95041031

  • 相关阅读:
    hdu1159 LCS模板题
    RabbitMQ入门
    Dubbo
    SpringMVC
    MySQL的再理解
    ElasticSearch
    redis入门学习
    Swagger
    SSM整合
    MybatisPlus
  • 原文地址:https://www.cnblogs.com/R3col/p/13050331.html
Copyright © 2011-2022 走看看