目录
————————————————————分割线————————————————————
1.Simple_SSTI_1
SSTI是服务器端模板注入
F12查看下源码
所以综上所诉 我们直接尝试去在url试着访问 config
注意语法格式 ?flag={{config}}
也可用查询语法?flag={{config.SECRET_KEY}}
2.Simple_SSTI_2
打开题目让传入一个flag参数 我们试着看看config文件里
但是好像没有有用的东西 我们试着用模板注入看看怎么个事
?flag={{ config.__class__.__init__.__globals__['os'].popen('ls ../').read() }}
结果发现app 这个文件 好像不是常见的内部文件名字 我们试着去访问看看 发现了flag文件
cat一下获取flag
3.Flask_FileUpload
一个提交框 查看下网页源码 提示 说是要上传个文件 并且固定了上传文件类型 需要时jpg和png的图片
于是写一段python的脚本文件 并且将后缀名改成jpg
上传成功后 页面没有什么特别的回显 我们看一下源代码 发现了我们要找的flag
所以我只需要利用这个漏洞再去修改下我们的python代码重新上传一下我们的文件即可
import os
os.system('cat /flag ')
4.滑稽
进入环境 右键查看源代码
5.计算器
让输入验证 但发现只能数一个字 打开源代码发现有输入长度限制是1
将源代码中限制从1改一下 再次输入 正确验证即可获得flag
6.矛盾
这一行从 URL 查询字符串中获取名为 num
的参数值,并将其赋值给 $num
变量。如果 URL 中没有提供 num
参数,或者参数值不是有效的字符串,则 $num
将被设置为空或者默认值。
按照代码提示 直接在URL传入num的参数值为1 即可得出flag
7.GET
一样 根据提示 以GET传参方式 传入flag 得出答案
6.