当前位置:网站首页>2021-08-16记一次无意发现正方教务系统的bug
2021-08-16记一次无意发现正方教务系统的bug
2022-04-21 13:51:00 【快乐边城】
想重新为老师评分,但是当我登进教务系统一看,我的评价已经提交,并且找不到修改的选项了,这可咋办,于是开始网上找资料,最后形成了以下几种方案:
1.通过内网渗透看能不能对账号进行提权,或获取到数据库的配置文件啥的。
2.物理攻击,直接进入机房操作数据库修改教师评分。
3.在浏览器端调用接口修改系统数据。
想好方案后我赶紧捡好书包回到寝室打开电脑,首先花了半个小时尝试使用第一种方案,但是连服务器的内网ip都没有扫到,再加上此方案会留下脚印,直接放弃此方案。
对于第二种方案,由于正值暑假,机房已经封锁,物理攻击不可行。
然后我就尝试第三种方案,对于此方案还是比较有信心的,毕竟作为一个拥有前端开发经验的小菜鸟老说,这种系统流程还是了解的,评价教师的流程大致就是前端通过http请求将打分的数据发给后端,后端保存到数据库。
第一步还是习惯性的打开浏览器的控制台,令我比较意外的是这个系统竟然更新了,使用了XHR请求,将页面和数据的请求分离开来。

那么怎样才能再次提交评分数据,从而达到修改之前评分的效果呢?
当然是的先找到提交的数据的接口了,但是现在已经提交过了,无法再次提交让系统暴露提交接口出来。不过可以想一下既然之前能提交,那么提交接口有关的信息肯定已经加载到我们本地了。
接着我就花了一点时间审查了一下部分能看到的源代码,还真发现了提交的相关代码,感谢程序员小哥哥写了注释。

然后我又画了一点点时间将此代码提取出来,并构建所需要的数据,然后在浏览器的控制台直接调用此接口把评分的数据传给后端。


你没有看错,我传给后端的评分是999,竟然成功了,服务器还返回了成功。
接着我将软件测试的知识置于实践中,我将评分设定为-1传过去会怎样呢?

我靠,这竟然还能成功,绝对是后端偷懒了、没有进行数据校验,这也提醒我们开发时后端不能完全相信前端出过来的数据,自己得做校验!!!
总所周知,评分都是数字类型的,如果我把评分改为字符传过去会怎样呢?嘿嘿


哈哈,后端接口返回系统异常,估计是后端类型转换异常,然后被捕获了没有将详细的报错信息返回给前端。
不要再给她二次伤害。
版权声明
本文为[快乐边城]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_43548154/article/details/119722784
边栏推荐
- 认识系统服务
- Unittest单元测试(四)
- How does Jupiter notebook copy multiple code blocks / cells across files (to another file)
- 深度学习与图像识别:原理与实践 笔记Day_15
- <2021SC@SDUSC>山东大学软件工程应用与实践JPress代码分析(八)
- centos 离线安装mysql
- 基于data文件夹恢复mysql数据库
- 深度学习与图像识别:原理与实践 笔记Day_18(目标检测)
- <2021SC@SDUSC>山东大学软件工程应用与实践JPress代码分析(十二)
- <2021SC@SDUSC>山东大学软件工程应用与实践JPress代码分析(九)
猜你喜欢

SQL注入漏洞靶场-sqli-labs学习

RHCE搭建简单web网站

Zabbix5系列-监控华为、H3C交换机(snmpv2c/snmpv3/snmptrap) (二)

Summary of several problems of esgyndb using JDBC UDR to access remote trafodion

<2021SC@SDUSC>山东大学软件工程应用与实践JPress代码分析(十三)

双归上行--主备/负载

Vagrant detailed tutorial

<2021SC@SDUSC>山东大学软件工程应用与实践JPress代码分析(五)

深度学习与图像识别:原理与实践 笔记Day_15

Zabbix5系列-钉钉告警 (十五)
随机推荐
2021-10-19性能测试
How does Jupiter notebook copy multiple code blocks / cells across files (to another file)
Zabbix5系列-声音告警、邮件告警 (十四)
Oracle 11g 企业版安装教程
pytorch geometric中为何要将稀疏邻接矩阵写成转置的形式adj_t
SQL注入漏洞靶场-sqli-labs学习
Chapter IV key points for implementation of password application security assessment in commercial password application and security assessment - Summary
密码模块安全技术要求
商用密码应用安全性评估量化评估规则(2021版)
mysql-MVCC多版本并发版本控制和bufferPool缓存机制
Trim function of esgyndb
软件测试常见问题 开发模型 PC端qq登录测试用例 BUG的相关问题 测试用例设计的常用方法
集合线程安全
深度学习与图像识别:原理与实践 笔记Day_14
小案例的实现
数据库管理工具
The pit of c3p0 leads to concurrent performance problems
图像分类的训练基本过程——以MobileNet_v3为例
认识与分析日志文件
Zabbix5 series - monitoring HP server ILO management port (6)