文章总结: 该文档分享了微信小程序动态密钥加解密的实战经验。通过分析发现加密密钥由weixin/getCode接口返回的code反转后取前16位生成,采用AES加密。作者利用BurpGuard编写代理脚本实现自动加解密,使BurpSuite可查看明文流量,为渗透测试提供可行解决方案。 综合评分: 78 文章分类: 渗透测试,WEB安全,移动安全,安全工具,漏洞分析
微信小程序动态密钥实现自动加解密
原创
有恒 有恒
有恒安全
2025年12月6日 09:12 广东
在小说阅读器读本章
去阅读
在一次测试中遇到了小程序数据包使用了动态密钥加密,分享一下解决思路。
漏洞详情
点击小程序抓取数据包,发现每次数据包的加密都不一样
code是每次请求weixin/getCode接口返回的
先通过开启f12打断点,分析一下加密
可以看出就是简单的aes加密
key是动态加密的,应该和请求数据包中的code有关,搜索weixin/getCode接口
可以看出AEKEY的生成逻辑:
code → 反转 → 取前16字符 → 作为 AES 密钥
根据数据包的requst和code验证一下
可正常解密
实现自动加解密
知道加解密逻辑之后,剩下的就容易解决了,利用BurpGuard挂上下游代理,解密后修改再加密。
ClientProxyHandler.py: 处理客户端的请求并转发给burp,通常用于解密请求和加密响应
BurpProxyHandler.py: 处理Burp的请求并转发给源服务器,通常用于加密请求和解密响应
把两个py的代码和和加解密的逻辑发给ai,让ai写好脚本就行
接着运行脚本,配置好代理
bp配置好上游代理
流量经过BurpGuard
现在的bp看到的就是明文流量
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:有恒安全 有恒 有恒《微信小程序动态密钥实现自动加解密》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论