EzPyeditor
这个界面没啥东西,直接下载源码看一下
进去看一下app.py
熟悉的界面,又是他
这里先去追踪一下这个函数parse
这里这个函数大体上来说是存在一个文件读取的漏洞的
这个漏洞会接受filename这个参数
这里我们就可以自己去设置这个参数
然后下面还有一个函数两个联合起来可以做到文件读取
traceback.format_exc()这个函数会追踪报错原因并且帮报错输出出来
这里有一个细节需要注意一下
我们先随便输入一个报错一下看看
这里我们看见一个细节
SyntaxError
这个是语法报错,当我们输入'号的时候他是词法报错
所以不能用'
这里先用/etc/passwd来做实验看一下
这里可以看到也是成功的读取到了文件
再去看secret.py
flag在第六行
这里可以使用换行符号来进行读取
读取到了
EzEcho
输入个1看看
这里好像就是把我输入的给输出出来使用echo函数
看下有没有flag变量
看来是没有
附件下载下来看看
进来就看见好东西
也是找到了骗人的flag了
下面哪个readflag应该是个可执行程序
使用die看一下
是一个ELF文件
再下面那个是readflag.c的c语言源码
这里大概的思路有了
我们要在这个框里面运行readflag这个文件
但是echo只能输出
但是如果我们使用`包裹后面的内容
他会先运行命令然后再输出
这里尝试一下
看下源代码
诶源代码页没有
看下ls
cat一下看看
大概测试了一下好像只要出现空格之后他就不会当作指令运行但是正常来说应该是可以的
大概率是被过滤了
这里尝试了一下${IFS}绕不过使用<重定向符号绕过了
这里是cat了f4444
看一下flag.sh
本来一开始就来尝试readflag了
但是没用后面仔细看了一下
/没加进去
EzGrades
上来一大串英文没看懂
先搜一下这个英文什么意思
所以这个就是用来查看作业成绩的
有一个登录界面
不急着做,先去看一下附件
内容看着有点多噢
先看一下依赖
经典模板flask
审代码的时候发现一个flag界面
但一看就是假的
但我还是要看一下
这里去看一眼路由
只能用教师来访问
这里先随便提交一下看看
这里可以观察到一个东西
这里的认证会在url中显示看一下能不认证为老师
好像没反应
看一下成绩
依然是学生,再回去看一下代码
在这里注意到他的cookie是jwt抓包看一下
这里可以看见是stu的所以是学生
看看改成tea有没有用