<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

admin 2025年2月17日11:31:57评论23 views字数 2593阅读8分38秒阅读模式
下面分享一下微信小程序的四种渗透技术,仅供网络安全技术学习,勿做非法渗透!

一、Sessionkey泄露导致任意用户登录

微信小程序进行鉴权登录,是需要严格按照微信官方团队的要求进行开发的,所以经常挖漏洞的师傅们会发现,在微信小程序中会存在很多通用的参数,比如appid、appsecret、openid、sessionkey、code.......等等,这些都是微信官方要求的开发规范。虽然都存在开发规范,但是总有开发者不遵守安全规范,导致sessionkey造成泄露,sessionkey一旦泄露,就会造成任意用户登录。

想了解更加详情的可以看微信官方的开发文档:

https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

1.1 sessionkey泄露导致的任意账号登录

正常情况下,应该是下面这种格式,大概六七成的情况下,都是这种格式。

sessionkey任意登录三要素, 必须必备以下三个值,缺一不可!

1.sessionkey

2.encryptedData

3.vi

下面这种情况,三要素全部必备,如果没有其他意外,可以直接造成任意用户登录。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

下面是实战案例,也是必备了三要素,但是注意,有时候开发者会将名称进行更改。

下面就是开发者将三个要素都进行了名称更改,但是不影响咱们去任意登录。

(手机号快捷登录、微信快捷登录会出现该漏洞)

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

将这三要素输入到这个解密工具后,可以直接解密获取明文的登录凭据,他的登录凭据就剩左边那两个手机号码。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后你将这两个手机号码,改成受害者的手机号,然后再点击中间的加密,重新生产新的加密凭证。

把原本的18开头手机号,全部替换成16开头的手机号。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后再返回你的登录数据包,

把原本的删了,替换成你的新的登录凭证。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露直接登录成功!

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

二、Appsecret或access_token泄露导致公众号权限接管

这个也是属于微信小程序、微信公众号的特有漏洞,就一块给讲了。他的漏洞点就是同时泄露了appid和appsecret,通过这俩可以生成access_token,然后就可以使用access_token获得微信公众号权限,可以调用开发者的微信公众号的权限和接口。

逻辑如下:

appid&appsecret----->access_token---->未授权调用该平台开发者的功能接口

如果在数据包中发现有appsecret的泄露,直接使用下面的工具进行调用微信官方接口。

我这里使用的是我自己的appid和appsecret。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露可以在微信官方接口去生成access_token。

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=xxxxx=泄露的appsecret

也可以使用下面自动化工具,直接生成access_token,并且直接支持接口调用的功能。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

这里的危害还是很大的,不仅生成的access_token能调用公众号/小程序 的部分功能,还能一直重复生成新的acess_token,这个最多每天上限2000次,超过了2000就会导致功能瘫痪。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

备注:这里除了在渗透测试中数据包直接获得appid和appsecret生成access_token可以造成危害之外,如果直接泄露了access_token可以调用微信开发者后台权限的。

三、微信小程序反编译

当你访问一个小程序,他的前端代码会自动下载到你的本地文件夹Applet下,但是你没法直接查看js,需要进行反编译。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

先全局搜索“WeChat Files” ,可以使用Everything查看文件的位置。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后进入Applet文件夹,可以看到红框内的,就是三个小程序的前端文件。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

但是因为名称是随机的,我们无法判断这个到底是哪个小程序的前端文件,就把他们全删了。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后再访问一个你的目标小程序,就会在该文件夹下,重新生产一个文件,这样就能获得咱们的目标文件了。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后下面使用两个工具进行解密。

然后还记得要在同级目录下,创建一共文件件 wxpack。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

先使用“UnpackMiniApp.exe”

然后选择之前那个小程序生成的前端文件。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后会在刚才创建的那个文件件下生产新的文件。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后使用第二个工具,对这个文件进行反编译。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

然后点击解包。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

成功生成前端源代码ZIP压缩包,随便选择一共文件夹,进行导出。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

进行解压。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露然后使用代码工具打开,比如vscode ,就可以审计查看代码。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露也可以ctrl+shift+F进行全局搜索关键词。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露四、微信小程序强行开启JS调试

四、微信小程序强行开启12进行JS调试

下载hook工具,exe版本可能会报毒,杀软加白即可。或者暂时关闭杀软,我这里使用的是python版本。(建议小号,封号!)

(经过其他师傅确认,确实有封号风险,用小号测试!)

https://github.com/JaveleyQAQ/WeChatOpenDevTools-Python

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

因为强行打开微信的F12的开发者工具,需要微信的旧版本,新版本不行,因此需要下载旧版本安装包,建议在虚拟机里面搞,并且使用小号。

https://github.com/tom-snow/wechat-windows-versions/releases

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

虚拟机运行:

虚拟机安装电脑微信3.9.10.19版本

先登录微信,随便打开一个小程序。

运行hook工具。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

随便打开一个小程序,会hook成功。

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露成功后会多一个devtools的窗口

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

其他BUG问题:

第一次hook成功之后,电脑重启后,可能出现无法hook的情况。

这时候把微信卸载了,重新安装那个老版本,再次进行hook就能成功。

后面再重启电脑后,都能hook成功,不用再重新卸载安装微信了。

关注公众号-后台回复“微信工具”获取上述所有工具。

漏洞挖掘课程中,会比上述内容多出超多实战案例还有新的技巧。

获取工具

链接: https://pan.baidu.com/s/1dAdTCSkQeU6DjwVYqTqpLA?pwd=c8ja 提取码: c8ja 复制这段内容后打开百度网盘手机App,操作更方便哦
--来自百度网盘超级会员v8的分享

 

原文始发于微信公众号(猎洞时刻):<干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月17日11:31:57
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   <干货>微信小程序特有通用漏洞&小程序强开F12开发工具&小程序反编译&Accesstoken泄露https://cn-sec.com/archives/3750265.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息