欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > 记某大学校园平台关于小程序AppSecret密钥泄露漏洞

记某大学校园平台关于小程序AppSecret密钥泄露漏洞

2024/10/26 13:19:34 来源:https://blog.csdn.net/SENMINGya/article/details/143250166  浏览:    关键词:记某大学校园平台关于小程序AppSecret密钥泄露漏洞
🍬 博主介绍
👨‍🎓 博主介绍:大家好,我是 一个想当文人的黑客 ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【edusrc漏洞挖掘】 【VulnHub靶场复现】【面试分析】
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋🍬 博主资源
🎉需要如下资料和培训的可加微信和知识星球(前50名为邀请嘉宾) 知识星球号:9081196🎉
1、全国职业技能大赛——信息安全管理与评估WP+环境
2、全国职业技能大赛——司法技术赛项WP+环境
3、CTF最新资料+相关工具(圈子交流)
4、SRC漏洞挖掘的大量原创报告

文章目录

    • 0x1 前言
    • 0x2 小程序AppSecret密钥泄露漏洞
      • 一、漏洞介绍
      • 二、浅谈获取access_token
      • 三、如何获取access_token值?
        • tips注意
        • 获取Access Token
    • 0x3 漏洞利用
      • 一、泄露appid和AppSecret
      • 二、获取Access_Token值
      • 三、漏洞危害
      • 四、漏洞修复
    • 0x4 总结

0x1 前言

这次给师傅们分享的文章是关于小程序AppSecret密钥泄露导致的相关漏洞,这个也是在挖掘EDUSRC漏洞的时候关注的一个知识点,蛮多师傅对于这个漏洞还是比较陌生的,AppSecret是小程序的密钥,然后我们可以通过AppSecret获取access_token值,然后执行一些危害操作,如接口调用凭证、用户信息、用户使用数据等,造成了极大的安全风险。

下面我就先给师傅们介绍下微信小程序AppSecret和access_token相关知识点,然后后面再把我今天挖到的EDU的一个AppSecret密钥泄露漏洞给师傅们分享下。

0x2 小程序AppSecret密钥泄露漏洞

一、漏洞介绍

AppSecret是小程序的唯一凭证密钥,也是获取小程序全局唯一后台接口调用凭证(access_token)的重要参数,需要开发者妥善保管至后台服务器中,并严格保密,不向任何第三方等透露。小程序若存在AppSecret密钥泄露漏洞的情况,会造成身份信息仿冒、敏感数据外泄等严重后果,开发者应及时发现该漏洞并快速修复相应问题。

某小程序因为AppSecret泄露,导致攻击者可以通过调用API获取该小程序敏感数据,如接口调用凭证、用户信息、用户使用数据等,造成了极大的安全风险。

二、浅谈获取access_token

获取接口调用凭证实质就是获取access_token。在微信接口开发中,许多服务的使用都离不开Access Token,Access Token相当于打开这些服务的钥匙,正常情况下会在7200秒内失效,重复获取将导致上次获取的Token失效,本文将首先介绍如何获取Access Token。

按微信官方的说明,access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

三、如何获取access_token值?

tips注意
  1. 公众号和小程序均可以使用AppIDAppSecret调用接口来获取access_token。AppID和AppSecret可在“微信公众平台-开发-基本配置”页中获得(需要已经成为开发者,且帐号没有异常状态)。调用接口时,请登录“微信公众平台-开发-基本配置”提前将服务器IP地址添加到IP白名单中,点击查看设置方法,否则将无法调用成功。小程序无需配置IP白名单。
  2. 这儿需要特别说明的是:在调用所有微信接口时均使用https协议;还有就是如果第三方不使用中控服务器,而是使选择各个业务逻辑点各自去刷新access_taken,那么就有可能会产生冲突,导致服务不稳定。
获取Access Token

获取Access_Token接口的网址如下:

https请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=[APPID]&secret=[APPSECRET]

给师傅们看下在一些站点的网页源代码泄露的appidappsecret参数值,长什么样子

0x3 漏洞利用

一、泄露appid和AppSecret

某小程序因为AppSecret泄露,导致攻击者可以通过调用API获取该小程序敏感数据,如接口调用凭证、用户信息、用户使用数据等,造成了极大的安全风险。

先对小程序网络请求进行抓包,发现请求响应中包含了appid和AppSecret敏感信息,但是有些是key或者secret关键字,被开发者给修改了,这个需要师傅们注意下

二、获取Access_Token值

获取Access Token接口的网址如下:

https请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=[APPID]&secret=[APPSECRET]

先利用appidAppSecret获取这个大学的微信小程序的Access_Token

显示7200,说明我们的Access_Token值获取成功

然后我们有了Access_Token值,我们就可以进行微信小程序的相关操作了,如接口调用凭证、用户信息、用户使用数据等,造成了极大的安全风险。

参考链接:https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/

三、漏洞危害

以下是可以造成接口调用凭证、用户信息、用户使用数据等危害的举例:

获取微信服务器IP地址

获取小程序用户访问数据

还可以使用下面的这个微信小程序官方的接口调用的平台,需要使用我们开始获取到的Access_Token凭据进行调用,然后可以进行相关的操作,具体操作和危害,师傅们可以参考下面的微信小程序的官方文档:

https://mp.weixin.qq.com/debug/

四、漏洞修复

若小程序存在相应的AppSecret密钥泄露漏洞问题,请开发者尽快根据以下修复指引进行调整,以便消除风险:

1.后端API接口请勿把AppSecret敏感信息返回给前端(包括前端请求或小程序代码内传输、记录AppSecret);

2.立即登录小程序管理后台,在【开发-开发管理-开发设置】中对AppSecret进行重置。由于Appsecret存在历史泄露且仍然有效,务必进行重置才可消除风险,以免被攻击者恶意利用,请尽快按指引进行修复;

3.对AppSecret进行重置后,请及时修改后台代码,以免无法使用微信API

0x4 总结

这篇文章主要是给师傅们介绍关于小程序AppSecret密钥泄露漏洞,然后这次也是刚好挖到一个这样的漏洞,就直接给师傅们分享下了。这篇文章希望针对于微信小程序相关的漏洞知识对师傅们有帮助,蛮多师傅对这个漏洞的研究也是没有太多,包括网上上实战的案例也少,所以希望师傅们能够在这篇文章中学习新的知识!

文章中涉及的敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打码处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,一旦造成后果请自行承担。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com