记一次渗透测试 | 教育src漏洞分享(2)

目录

一、信息收集

二、漏洞复现

三、总结


一、信息收集

在搜索某大学资产时发现以下资产

某大学的大学学报,看到这里,就似乎有一种吸引力,对于这种偏边缘资产,一看就觉得有洞,果不其然还真的有啊!

二、漏洞复现

首页处有个作者投稿的功能,不得不想能投稿就一定有账号吧,有账号那就会有常见的登录框那些 漏洞,二话不说先来看一眼,大概如下:

没账号怎么办呀,先去注册一个呗!

简单注册好账号,登录后就会有更多的功能点可以测试。发现以下功能点:

可以申请为专家,那就意味着有一个参数代表着身份,不同的身份有不同的作用。当然了专家这种相对较高的权限就有更多不同的功能点可以测试,说干就干,看看申请专家需要什么?

然后紧接着对其抓包

发现并没有什么可以一眼标记专家的参数

发送后发现成功申请为专家。虽然没有什么标志性参数,但是有我们的老朋友:username,不得不尝试一下是不是也可以把别人提升为专家呀?如果可以不就构造成水平越权喽?

换个username后依旧操作成功,拿下拿下,水平越权一个!

三、总结

系统接口 /prod-api/system/user/toBeProfessor 在处理"申请成为审稿专家"业务时,仅通过查询参数 userName 指定目标账号,且仅依赖前端登录后的 JWT(Authorization/Cookie 中 Admin-Token)完成身份认证,但后端未校验当前登录用户与传入 userName 是否一致,导致任意已登录用户可将他人账号越权提交为审稿专家。

测试思路提醒:此类业务操作类接口是越权漏洞的高发点,测试时应重点关注"仅凭请求参数指定操作对象"的接口,通过替换参数值(如更换 userName)判断是否触发越权;同时需留意接口返回的 code 与 msg 语义(如"请勿重复提交"与"操作成功"的差异)来确认操作是否真正生效;测试中应使用最小影响验证,避免对他人账号造成实际修改。

修复建议:服务端应从登录态会话中获取当前用户标识,而非信任前端传入的参数,并对 userName 等参数做与当前用户身份的绑定校验,仅在本人申请场景下放行;同时建议对该类敏感操作增加权限校验与操作审计日志,防止横向越权被滥用。

相关推荐
judezh13 分钟前
验证一个容器镜像到底在验什么?我把自家 v1.0.0 的签名从注册表一路扒到了证书里
安全·开源
szarron13 分钟前
HTOOL‑SA12 + HT06 近场探头组合实操|手持设备工位 EMI 预兼容排查完整流程
运维·服务器·开发语言·网络·射频工程·频谱仪
czt_java1 小时前
网络核心初识:OSI七层、TCP/IP模型与数据传输全过程
网络·tcp/ip·php
那年窗外下的雪.1 小时前
AIDC 学习日志|第 25 天|设备输出反推、MAC Flapping 与 EAD 撤销
前端·网络·git·学习·macos
疯狂打码的少年2 小时前
【计算机网络】网络互连设备(中继器 / 网桥 / 交换机 / 路由器 / 网关)
网络·笔记·计算机网络·智能路由器
Shadow(⊙o⊙)2 小时前
epoll三大接口到内核+正确认识应用层与内核的联系(6000字)
linux·服务器·网络
captain3762 小时前
网络原理(4)-TCP
java·服务器·网络·网络协议·tcp/ip·java-ee
pt10432 小时前
Cisco Splunk for AI Operations:AIOps机器学习
运维·网络·人工智能·机器学习
AlanBruce4 小时前
摩尔信使MThings IEC 60870-5-104数据配置使用指南
网络·网络协议·tcp/ip
binqian13 小时前
【linux】OpenSSH升级文档
linux·运维·网络