封神台复现
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有没有用
也是没有用
这里再去看了下源码

这里发现了is_teacher的获取方式
这里去JWT里面加一点东西
这里一开始脑子比较死,就想着自己去构造
但是我们细致的看一下这个逻辑

这里可以直接把我们传入的参数进行json一开始脑子抽筋了
就想着把passwd后面阶段之后再构造进去
没了完全理解这个逻辑的意思
这里是会把我输入的所有参数进行json话
所以我们可以直接传入is_teacher=True利用他自己服务器的漏洞来构造

后面那一串cookie里面就有我要的东西
可以解析了看一下

这下再把这串cookie拿去用来访问一下/grades_flag这个路由
这样就可以拿到flag了

c
这里看完代码之后就可以知道
登录admin获取到flag
然后在db文件里面发现了admin的用户名和密码
他对admin的过滤是使用php
最后接受参数返回使用的是flask框架
这里用到的知识点
是HTTP参数污染
这里flask接受同样参数的第一个php接受第二个所以可以绕过
然后就可以绕过了

EzReveal

奇奇怪怪的界面
看不懂一点
先去问一下AI

先传一个马看看怎么个事
这里不知道浏览器是抽什么风
这里要抓包来上传才能传
要把UA头删掉

这里让我们发文档
随便传一个看一下

去看下源码

这里是通过来检测MIME头来进行选择
所以我们可以通过构造MIme头来绕过

再看

浙公网安备 33010602011771号