Loading

CCCamp 2023 - Cybercrime Society Club Germany

可以看到如果是amdin用户可以执行date指令,而date指令可以suid提权读取文件

 

 

首先看注册过程

邮箱不能和管理员邮箱一样防止覆盖,让后id位数有限制,后面在数据库中可以发现判断是否是管理员用户正是看邮箱是不是admin@cscg.de和id是否大于900000,对于id注册是用1e10科学计数法即可。

然后会检查activation是否符合要求

检测activation的代码是对传入的activation_code检测。是否随机生成的4位数字在activation_code中。这里有个注释提示不要暴力,但实际上没有限制activation_code长度,可以传入所有四位数也就40000位。

 

成功注册登入后有改邮箱和删除用户两个选项,该邮箱会判断是否已存在,因此改成admin邮箱前需要先删除它。

注意到会检查email是不是当前邮箱,但是删除的时候是data数据全部删除,因此加入一个其他名称的数据,value为admin即可

删除后改成admin邮箱,即可进入命令执行页

 

 

命令执行的cmd参数要长度为4且以date开头。这里可以数组绕过,数组成员为4,第一个为date即可

 最终获得flag

 

posted @ 2023-08-19 20:26  Aninock  阅读(30)  评论(0编辑  收藏  举报