【EDU实战】一个网站“八”个洞

admin 2026-06-18 05:34:06 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 文章记录了一次针对大学后勤服务公众号的渗透测试实战,发现包括水平越权查看用户照片、前端人像检测绕过、越权修改他人头像、教师付款二维码泄露、报修系统XSS漏洞等8个安全问题。测试通过分析学号规律、抓包修改参数、绕过前端验证等方式实现,强调普通业务功能中隐藏的安全风险。 综合评分: 82 文章分类: 渗透测试,WEB安全,漏洞分析,实战经验,安全意识


cover_image

【EDU实战】一个网站“八”个洞

原创

隐雾安全 隐雾安全

隐雾安全

2026年6月16日 09:00 四川

在小说阅读器读本章

去阅读

📝 编者语

校园系统往往功能众多,一些看似普通的功能点里,也可能隐藏着业务风险。这篇文章整理了一次真实EDU挖掘过程,分享漏洞发现思路与测试经验,希望能给大家带来一些启发。

1

前言

刚开始接触EDU的时候,一直觉得:

学校系统功能简单漏洞应该好挖

后来开始测试发现:

很多校园业务系统已经运行很多年。

功能越来越多。

不同系统之间还存在联动。

一些看似普通的功能点,反而可能藏着意想不到的问题。

这次测试目标是:

**大学后勤服务公众号

从一个照片上传功能开始,逐渐发现了多个业务逻辑问题。

2

从照片上传功能开始

入口位置:

正常情况下:

上传照片需要先登录系统。

但测试时发现:

照片查看接口竟然可以直接访问:

/member/photo/image?userNo=xxxx

这意味着:

第一感觉就是:

这里会不会存在越权?

3

二、抓包分析接口逻辑

先使用自己的账号登录。

然后抓包分析请求。

观察后发现:

请求中存在:

userNo

也就是学号参数。

第一反应当然是:

修改userNo试试看

但奇怪的是:

直接修改学号。

返回结果并不会发生变化。

继续观察请求。

发现系统还使用了:

JSESSIONID

进行身份校验。

于是测试思路开始转变:

userNo +JSESSIONID

是否共同决定身份?

4

成功查看其他用户信息

继续测试后发现:

如果调整会话信息,再修改:

userNo

便能够查看其他用户信息。

至此:

水平越权漏洞得到验证。

5

学号其实是有规律的

测试过程中发现:

学号格式并非随机生成:

拿22561342119举例

拆分后:

字段

含义

| | | | — | — | | 22 | 入学年份 | | 56134 | 专业编号 | | 21 | 班级 | | 19 | 序号 |

对学号规律进行了分析。

因此:

很多校园系统中的:

学号工号订单号

往往都值得重点关注。

6

照片上传还存在逻辑缺陷

继续测试上传功能。

发现系统存在:

人像检测机制。

于是随便上传了一张:

非人脸图片

正常情况下:

系统应该拒绝上传。

但测试时发现:

通过修改返回结果:

{    “code”:1,    “msg”:”图片上传成功,正在审核”}

最终:

系统成功接受了图片。

这说明:

人像校验更多发生在前端。

服务端缺少有效验证。

7

还能修改别人的头像

继续深入测试。

先记录 A 用户头像:

随后上传 B 的照片。

抓包分析上传请求。

测试发现:

替换成上A的cookie值,发包发现他的头像已经被修改,处于审核状态。

最终:

A 用户头像被修改成了 B 的照片。

并进入审核状态。

整个流程如下:

8

付款二维码泄露

继续测试时。

又发现了新的业务问题。

系统验证依赖:

工号+JSESSIONID

测试发现:

如果身份信息验证不严格。

可能导致:

教师付款二维码访问异常

本人通过导员同意,用导员工号进行测试(未经允许不得进行测试)

得到工号之后进行cookie获取jessionid

进行替换jessionid的值

重新发包

去超市进行消费测试,可以消费

回来查看消费记录

替换掉jessionid 发包

老师的工号是可以查得到的,也可以进行猜测

9

报修系统里的 XSS

继续浏览功能时。

来到:

报修系统

测试过程中发现:

页面使用了较老版本:

jQuery

发现一个提交src会被鄙视的jQuery漏洞

由此在报修测试点出提交payload

测试描述

< img src="invalid_xss" onerror="alert('jQuery 2.0.3 XSS 漏洞 存在')" style="display:none;">

进行工单查看

出现弹窗

10

心得体会

这次挖掘最大的感受是:

很多漏洞并不是出现在复杂功能里。

恰恰是最普通的业务场景。

很多时候:

一个普通的参数。

一次抓包。

一个不起眼的接口。

都可能成为后续漏洞发现的突破口。

🎁文末福利

联系客服获取《EDU测试思路整理》

!

微信号丨Hiddenfog001


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:隐雾安全 隐雾安全 隐雾安全《【EDU实战】一个网站“八”个洞》

评论:0   参与:  0