首页 > 其他分享 >记录一次edu的小通杀

记录一次edu的小通杀

时间:2024-10-14 15:10:51浏览次数:7  
标签:登录 记录 通杀 验证码 接口 token 注册 edu id

记录一次edu的小通杀

fofa查询随便点的一个虚拟仿真实训系统,存在多处未授权、逻辑漏洞,并且存在文件上传漏洞导致getshell,检索下来差不多十几个学校在用

从虚拟仿真系统入手感觉容易一些,一个系统可能很多学校都会用

fofa语法title="虚拟仿真 && status_code=200" 这样会收集到很多虚拟仿真系统,然后再根据特征去定位具体的系统 例如js文件名body = "/web/editor/123.js"

image-20241012215029350

 

1.验码复用导致绕过审核登录

这个逻辑缺陷挺离谱的,之前没遇到过

提供账户注册功能,注册后可以使用账户密码登录(需要审核),也可以手机验证码直接登录,但是如果没有注册填写完整信息,直接登录的账号是访客账号,没有权限

首先注册一个账号 10086/test123456_

 

注册这里填写信息,需要获取手机验证码(后来无意发现这里没有校验验证码)

image-20241012215650886

用注册的账户密码登录,提示账号正在审核中,无法登录

image-20241012220101599

审核未通过的时候,用手机号验证码登录,点击获取验证码会提示已经注册,不会再发送验证码

image-20241011195447423

但是验证码可以重复使用,直接用刚才注册获取到的验证码登录

image-20241012221445006

登录成功,点击右上角进入教学空间,成功进入,权限检验没问题

image-20241012221301604

 

2.token泄露

findsomething找到了一个接口 /pubapi/userinfo,字面意思上是查看用户信息的

image-20241012213017888

访问,返回无用户id,意思就是缺少用户id的参数,常见的一般就是id,uid,uuid,userId,userid,xxid这些

拼接上uid=,返回了该用户的user_token,并且测试了一下id是顺序的,也就是说通过这个接口可以遍历获取全站用户的token

token是认证身份用的,那就好说了,找一下接口然后添加上获取到的token进行利用

未授权创建/上传实训资源

观察了一下burp的请求包,有一个鉴权字段Authorization

image-20241012222935791

丢到jwt解密一下,没什么有价值的信息,这里的uid=0应该是个缺省值

image-20241012223027927

发现Authorization的值是通过/pubapi/authorize接口返回的access_token

image-20241012223637256

找到了一个创建实训资源的接口,提示需要Ut,猜测Ut就是user_token

添加Ut字段,值为刚才通过/pubapi/userinfo获取到的教师账号的token,创建成功

image-20241012224007090

 

 

 

再发送一次,发现labid是顺序的,可遍历

image-20241012224415728

查看用户实训资源

/eapi/console/myresource?type=1&page=1&limit=20

替换token为哪个用户的就能看哪个用户的资源和id

image-20241012224515641

未授权删除实训资源

既然labid是顺序的,就会导致遍历recourseid删除所有资源

/eapi/console/delrecourse?type=1&recourseid=

image-20241012234801535

删除一个不存在的会提示删除失败

image-20241012234839201

3.存储桶遍历

上面获取user_token的接口返回了头像的地址,发现是存储桶

image-20241012230650561

访问url,删除域名后面的路径,泄露了存储桶的所有key

key拼接到后面就可以访问查看/下载该文件

https://xxxxx.xxx.myhuaweicloud.com/{key}

image-20241012232651292

4.GetShell

进入到后台,创建课程的功能点里有个上传课程标准

image-20241012233814215

上传php,没有过滤,直接上传成功,并且返回了文件地址

image-20241012234244958

访问返回的地址,解析成功

image-20241012234137132

在后台一共找到了三个上传的接口,有的接口做了过滤,有的没有

 

请勿非法渗透

标签:登录,记录,通杀,验证码,接口,token,注册,edu,id
From: https://www.cnblogs.com/Mast1n/p/18464273

相关文章

  • 前端未解决的问题记录
    苹果手机中文符号旋转问题<viewclass="right-area"> <viewstyle="--i:0"> <textclass="fix-label">功德主</text> <text><textclass="rotate-90">【</text>{{order.initiator}}<textclass......
  • codeforces round 977 (div.2) C2(访问set的第一个元素,观察数据规律-出现次序,用set记
    解题历程:我首先想到的是等效法,每一次操作可以等效为每次将第一个人抽出放入一组,后面的人往前移,而该组的人就是可以任意放置的人,当b中后面再出现与前一个相同的人时,就不进行操作,当b中出现不同的人时,就看看这组中有没有这个人,有的话就下一个循环,没有的话就看看这个新的人是否按a中......
  • gmssl实践截图记录
             ......
  • openssl实验截图记录
                                    ......
  • Educoder——JAVA高级特性 字节流-输入输出
    任务描述本关任务:使用输入输出流读写文件。相关知识为了完成本关任务,你需要掌握:1.如何使用输入流;2.如何使用输出流。输入流我们通过一个示例,来看看输入流应该如何使用,首先我们在D盘下创建一个hello.txt文件。输入文本HelloJavaHelloInputStream。在main方法中加入如......
  • Codeforces Round 899 (Div. 2)题解记录
    题目链接:https://codeforces.com/contest/1882A.IncreasingSequence从1开始慢慢和\(a[i]\)的所有值比较,注意最后一个位置特判下#include<iostream>#include<string.h>#include<map>#include<vector>#include<set>#include<unordered_set>#include<......
  • WINCC7.5SP2报表练习1-增加大量数据记录,报表查询、快速导出查询结果
    这是分成两篇记录的学习笔记,这是第一篇,在新浪博客刚刚记录过,那边审查有点慢,时不时还会莫名其妙的清零,在这里也记录一次。最近现场提出要做报表功能,数据来自两种控制系统,施耐德M580和ABBAC900F,我不想在每一套控制系统上各做报表,加上ABBAC900F的上位机freelance报表功能有点弱(或......
  • 【算法题解记录】_1
    目录【算法题解记录】_1leetcode_115题【算法题解记录】_1还是干这个事了,要吃饭嘛,决定把在解题或者解完题进一步优化的时候,发现的有意思的地方记录一下leetcode_115题动态规划解的字符串匹配,矩阵全部都遍历,用时比较长,发现排在网友们的末尾纸上画了一下矩阵,行数代表被匹配串s......
  • 9.13 补题记录
    https://codeforces.com/contest/1834/problem/D我想到的是我们的答案肯定是两个区间不重合的地方最大的然后这样想的话就要for两遍然后还想差分来着但是都挺麻烦的这个题解是真的太聪明了就是说我们的答案肯定是在一段的区间上的某部分(前面后面两头)那我们直接来看让这一......
  • 基于Node.js+vue高校学生个人成长记录管理系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在高等教育日益普及的今天,高校学生的个人成长与发展成为了社会各界关注的焦点。学生不仅在学术上追求卓越,还在社会实践、党团活动、社团参与等多个方面寻求......