文章总结: 文档详细记录了某医院小程序的逆向工程过程,通过反编译发现其采用AES和RSA双重加密机制。作者成功破解签名算法后,发现报告查询功能存在越权漏洞,通过遍历userid可获取近百万条用户敏感信息(姓名、身份证、手机号)。最后利用AI编写代理工具实现自动化批量数据提取。 综合评分: 72 文章分类: 漏洞分析,数据泄露,WEB安全,应急响应,红队
某医院小程序逆向签名加解密之泄露百万数据
原创
private null private null
轩公子谈技术
2026年5月31日 12:23 江苏
在小说阅读器读本章
去阅读
首先登录小程序,发现数据是密文,还有签名,这就很头大啊
再大也要干,反编译小程序,格式化 js 代码,全局搜索签名字段,发现了疑似代码实现
source: n.source,
version: n.version
这俩个是固定的,在上面代码中的硬编码内容
nonce: p 是 function u 函数中p=s(6) 传入一个 6 ,通过下面的代码实现出来的,随机生成的字符串
function s(t){ if(t >21)returnnull; var e =newRegExp(“(\d{“+ t +”})(\.|$)”); return(Array(t -1).join(0)+Math.pow(10, t)*Math.random()).match(e)[1]
token: g, 很明显是获取的登录的 token 值,然后转为 json 格式
timestamp: d,这个不用看代码就知道什么意思,时间戳
完了就是调用encrypt 函数进行加密,在最上面引用了var t = require(“./aes256Util.js”),,说明是 aes 加密方式
完事了搜索了 aes 加密方式
e 是 aes 的 key,r 是 iv,截取 key 的 16 个字符。cbc 模式,填充 pkcs7
最终转为 json
{“source”:”aaaa”,”version”:”1.0.1″,”nonce”:”123456″,”timestamp”:”1683881234567″}
就生成签名信息了
由于小程序的请求参数和返回包都是加密的,所以还存在另一种加密方式,即 rsa
这是就是对应的公钥和私钥了
整体流程如下
请求流程:
1.构造业务参数对象 params
2.入参加密: RSA公钥加密(JSON.stringify(params)) -> encryptedData
3.生成 nonce = 6位随机数
4.生成 timestamp = 当前毫秒时间戳
5.获取 token = wx.getStorageSync(“LOGIN_TOKEN”)
6.生成 signature = AES-256-CBC-Encrypt(JSON.stringify({ source: “xxxxxxx”, version: “1.0.1”, nonce: nonce, timestamp: timestamp, token: token // 可选 }))
7.发送请求: header 中携带 source/version/timestamp/nonce/token/signature body 中携带 RSA加密后的数据
响应流程:
1.接收响应
2.如果 status=1102: 刷新 token 并重试
3.出参解密: RSA私钥解密(response.data) -> JSON.parse -> 业务数据
把找到的内容和代码 发给 ai,这样就不用自己写脚本,一键验签,加解密。
成功了,那么就开始测试最常见的点,报告查询,在很久很久之前,医院小程序,报告查询的功能,几乎都存在越权,现在亦是如此,解密我的报告查询参数
这是注册的账号,身份证号随机生成的,
发现,竟然是传入的 userid,那么id – 1 看看获取的数据
可见是成功的查询到了其他人的手机号,姓名,身份证号
也能搜到微信号,userid 是六位数,刚好是 9 开头的,99w+条三要素
但是这样也很麻烦,搞一次手动验签一次,于是让 ai 写一个代理中转,自动加解密,自动验签,这样就可以在 bp 爆破模块中遍历 id 了
简单试一下,可以进行解密
简单遍历 100 条数据
完美。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:轩公子谈技术 private null private null《某医院小程序逆向签名加解密之泄露百万数据》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论