基本想法:::在PYthon的object中集成了很多的基础函数;我们可以尝试利用进行文件的读取或者写入;
这里我要声明一下,沙箱逃逸中;py2和py3是不一样的;首先来拿py2来进行讨论;
这里我们可以基于上面的基础知识;
先查看所有的object;然后再找file
().class.mro[1].subclass()[40]
就可以拿到file;然后我们看看其可以使用的内置方法,
这里可以看到有个内置的read方法,因为存在file的object,所以我们需要利用这个点去进行文件读取;
语法为
().class.mro[1].subclass()[40] ('xxxxxx').read()
也可以进行文件的写入。用的则是write;语法为().class.mro[1].subclass()[40] (路径+文件名).write('内容')
然后还有个基类可以进行任意命令的执行;是 warnings.catch_warnings
().class.mro[1].subclasses()[59]
然后调用方法eval进行任意命令执行;