如何开始微信小程序渗透?
主站 分类 云安全 AI安全 开发安全 2025-12-1 01:47:47 Author: www.freebuf.com(查看原文) 阅读量:2 收藏

freeBuf

主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

免责声明

  • 本公众号绝不涉及任何非法用途。
  • 使用者风险自担,违规后果自负。
  • 守法为先,技术向善。
  • 请合理、合法地使用网络安全技术,共同维护一个健康、安全的网络环境!

心态崩了,本来想发SOC学习相关的,但是顺序被我打乱了,就只能找个旧笔记炒冷饭了。。。微信小程序渗透也有打算后面整个合集发,但是好久没搞小程序没素材,后面再说吧,先发着~抱拳~

工具推荐

反编译wxapkg

动态调试WeChatOpenDevTools

有一个风险就是你的账号可能被列为风控账号不允许你继续访问某些小程序之类的,请谨慎,最好是开小号来调试。
直接运行:

WechatOpenDevTools-Python.exe -x

就可以一键开启小程序调试了

问题1:你已经打开了小程序,后打开这个调试工具,你可能在右上角三个点打开的时候没有发现可调试的那个按键,这时候需要你重新打开当前的小程序即可

重新打开,可以随便一个小程序都行,反正你已经将动态调试的那个exe运行起来了

问题2:如何查看版本

问题3:如果你找到小程序的那个目录数字不在下面图中的范围,你需要退出该小程序重新登录,反复重复这个操作,实在不行就卸载微信重装一下。

把这这几个删除,这里其实就是对应的你小程序,删除了没有关系,在你打开小程序的时候他会重新加载。
删除之前要退出微信登录才能删除!!!!
依旧是:如果重复这个操作还没行,那就直接卸载微信重装一下。

小程序所在目录

微信小程序存放位置,在微信设置中打开可以看到

来到该目录后,退到上一层目录

进入Applet目录

这些wx开头的文件目录都是小程序加载的

随便点一个进去看,后缀名是wxapkg的就是小程序,我们一般的工具都会对该文件进行静态分析拿到一些源码之类的。

如何逆向小程序的js加解密

在渗透小程序的时候你会发现数据包的数据通常是加密的,响应包是加密的,啥东西都获取不到怎么办??这就是和js加解密一样的方法,小程序这里也一样的分析即可。

静态分析

直接拿反编译工具反编译出来进行代码审计,不仅审计过程中可能会发现一些存储桶key或者其他的一些秘钥。


  • 抓包后,发现数据都是加密过的怎么办?
    直接静态分析,找你这个包的对应的路由,分析代码中一些关键字,通过关键字定位到加密代码
    加密代码找到后,解密代码一般也在附近,如果没有只能手写逆向解密脚本。

  • 响应包也加密了?
    静态分析找到解密函数即可。

动态调试

动态调试的好处是我们找到加密函数和解密函数直接在console上调用就行!!

  • 抓包后,发现数据都是加密过的怎么办?
    动态调试就方便很多了,打断点后,定位加密函数,可以在console中复制这个函数,将他加密的变量修改为自己要加密的数据,看看运行成不成功即可,成功就代表你找到了该加密函数,而且动态调试过程中,你是能看到加密前的内容的,只要按照那个内容模板自己修改想要的内容即可,那么这时候就可以打很多不同的漏洞了,比如top10的都可以等,靠自己发挥。

  • 响应包也加密了?
    动态调试的时候如果响应包加密了,那么一般情况下也是能够动态调试到的,因为他也要解密才能将内容渲染到前端,也是在附近找一下对应那个加密函数的解密函数即可。

动静结合

一般情况下,能够反编译小程序了,那静态分析的差不多了,利用动态调试的好处,能够直接运行对应的js代码,那么我们直接找到加密函数解密函数直接在console上执行即可,脚本都不用写了。

本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)


文章来源: https://www.freebuf.com/articles/459738.html
如有侵权请联系:admin#unsafe.sh