【SRC实战】|两个小程序之间的越权漏洞

admin 2026-05-22 02:35:41 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文记录了一次针对企业SRC的水平越权漏洞挖掘实战。通过关联两个小程序(A和B)的数据共享机制,发现利用小程序A查询到的学号可在小程序B进行学员绑定,进而通过替换修改接口中的studentId参数实现越权修改他人信息。关键发现包括多系统共用用户体系的风险、修改类接口的高危性以及信息串联在漏洞挖掘中的重要性。可操作建议包括优先收集各类ID、关注跨系统数据流、重点测试修改接口。 综合评分: 83 文章分类: WEB安全,SRC活动,实战经验,漏洞分析,渗透测试


cover_image

【SRC实战】|两个小程序之间的越权漏洞

原创

隐雾安全 隐雾安全

隐雾安全

2026年5月20日 09:00 日本

在小说阅读器读本章

去阅读

📝 编者语

有时候挖洞就像“解密”。

一个原本没什么头绪的小程序,一个看起来没什么用的字段,加上一点“这俩东西会不会有关联”的猜测,最后慢慢把漏洞解出来。

这次分享的是一次比较典型的水平越权漏洞挖掘过程,重点不是漏洞本身有多复杂,而是:

信息之间,是怎么一点点串起来的。

1

本来都放弃了,结果小程序把我“串”进去了

最近在挖某企业 SRC。

说实话,一开始其实没什么头绪。

打开一个微信小程序(后面叫它“小程序 A”)之后,第一感觉就是:

很普通,就是一个学校作业系统。

2

实战过程

① 一个“没什么用”的查询功能

在小程序A里随便乱点。

看到一个通过手机号查询信息的功能。

于是随手输入了一个测试手机号:

13111111111

返回结果里出现了一些内容:

  • 用户名(部分打码)
  • 学号
  • 学校

但问题是:

这些数据并不完整。

因为:

  • 用户名是打码状态
  • 没有明显敏感信息
  • 返回包里也没有更多字段

如果只是这样那就是安全,关机

② 正常情况下,已经切目标了

但那天刚好没什么事。

于是我又顺手打开了这个企业另一个相关的小程序(后面叫“小程序 B”)。

结果这一看,还真发现了点东西。

③ 小程序 B 里的“添加学员”

进入个人中心后,我发现一个功能:

添加学员。

功能支持两种方式:

  • 手机号绑定
  • 学员号绑定

④ 一个让我突然开始认真起来的字段

因为:

“学员号” 这个字段,看起来真的很眼熟。

我回头看了一眼小程序A返回的数据。

发现:

小程序A里的“学号”,格式几乎完全一致。

这个时候我的第一反应就是:

这两个系统不会共用一套数据吧?

⑤ 尝试绑定学员号

直接把:

小程序A里获取到的学号

填进:

小程序B的“学员号绑定”。

结果:

绑定成功。

⑥ 信息开始“明文化”

原本在小程序 A 里:

  • 用户名是打码的
  • 数据并不完整

结果到了小程序 B:

👉 信息直接完整显示了。

这一步其实已经能确认:

两个系统的数据确实是互通的。

⑦ 继续往下看接口

这个时候事情已经开始有趣了。

因为很多时候:

  • 数据互通
  • 用户绑定

当看到了信息名片下面有一个获取验证码,想着会不会有验证码回显导致的任意用户绑定,

于是经典流程:

抓包。

遗憾的是,该发送短信的接口不存在验证码回显。

⑧ 两个关键参数

但在接口里,我注意到了两个字段:

userId studentId

测试之后发现:

参数

含义

userId    当前登录用户

studentId    被绑定学员

⑨ 动脑时间

因为:

studentId是可控的

所以有没有可能存在越权?

⑩ 开始寻找“修改类接口”

因为很多时候:

  • 查询接口
  • 绑定接口

只是铺垫。

真正容易出问题的:

往往是修改接口。

于是开始翻个人中心相关请求。

最后找到了:

修改个人信息接口。

⑪ 直接替换 ID 测试

抓包之后。

我把:

自己的studentId

替换成:

之前获取到的目标studentId

然后重新发包。

⑫ 越权成功

接口正常返回。

一开始我其实还不太敢确定。

于是重新查看目标账号。

结果发现:

对方的信息已经被成功修改。

3

漏洞带给我的思考

这个漏洞没有特别复杂的技术。

没有:

更多是:

“你有没有把信息串起来。”

🔹 很多 ID,来自别的接口

现在我测试经常:

先收集各种ID。

因为很多越权:

其实不是“猜出来”的。

而是:

从别的接口慢慢漏出来的。

🔹 多系统之间,往往会共用数据

尤其是:

  • 小程序 A/B
  • 官网/H5
  • App/后台

很多时候:

共用的是同一套用户体系。

🔹 修改接口永远优先级很高

因为:

查询接口更多是信息泄露。

但:

修改接口,才真正决定影响。

这次漏洞最后也顺利提交通过了。

但比起漏洞本身,我更大的感受其实是:

很多业务漏洞,重点不在“打”,而在“串”。

🎁 文末福利

联系客服获取《越权漏洞实战思路整理》

!

微信号丨Hiddenfog001


免责声明:

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

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

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

本文转载自:隐雾安全 隐雾安全 隐雾安全《【SRC实战】|两个小程序之间的越权漏洞》

SQL注入的方法0x004 网络安全文章

SQL注入的方法0x004

文章总结: 本文详细介绍了SQL注入中基于布尔的盲注技术,通过SQLi-Labs的Less-8实验环境演示了完整攻击流程。文章阐述了布尔盲注在仅返回True/F
评论:0   参与:  0