微信公众号平台js逆向分析
目录
前言
一、 js逆向分析
二、Node.js
逆向总结
前言
我们登录微信公众号平台,发现密码字段被加密了,接下来对其js加密进行分析,并寻找出js加密代码
- 地址:微信公众平台
- 浏览器:360极速
- 发条JS调试工具
一、 js逆向分析
1. 查看密文形态
因为登录的数据一般都是发送的ajax请求,所以浏览器这里直接点击XHR。如下,输入密码123456点击登录。发现密码字段被加密了,密文是字母和数字组成的且为32位长,到这里就要想到,可能是md5加密!!
我们可到 ——> md5在线解密破解 将密文复制过去看下能不能解密出为123456,如果是的话,就为md5,运气真好,那么接下来就不要逆向了!但是这里是为了学习逆向思路的,所以假设不知道为md5加密,接下来继续看
2. 全局搜索关键字
密文所属字段为 “pwd”,所以接下来进行全局搜索关键字pwd,点击 ctrl+shift+f。能搜索到很多文件,我们只关心js文件,因为加密是js加密的。这么多文件我们可以一个一个看,如下点击进入这个js文件
进入文件后,按ctrl+shift再在这个js文件中搜索pwd。在我们觉得只要是加密函数的最左侧点击加上断点如下,关于 ——> JS断点调试
3. 断掉调试找到加密函数
再重新点击登录,登录过程会触发js加密函数,如果我们在其上加上了断点,那么程序就会停止,这样就能够找到加密函数。
如下程序在下面停止了。鼠标放在pwd上面,发现pwd为明文密文,n为一个js的对象。
将他们全部括住,会自动显示整个值,是最终加密后的值。
找到了加密函数后,我们寻找详细的加密函数,点击step,程序会往下执行一步
进入到如下,return返回整个加密结果,其里面调用了很多个函数,这些函数我们都需要找到
4. 寻找详细js代码
我们把function这个函数外的那一层代码全部复制进行调试工具中,那么可能会包含进行function这个主函数中用到的一些函数和变量
复制进去,点击格式化,加载代码。里面提示缺什么我们就补什么,反正都是在js代码中进行寻找
上面有个 'n'未定义,这个n应该是个对象。我们自己补一个 var n = {}
主函数function为匿名函数,我们娶个名字
为result
再加载代码不报错了,传入函数和明文数据,如下成功还原出来加密过程。
二、Node.js
上面除了使用js调试工具外我们还可以使node.js进行js代码调试
安装:Node.js 安装配置
1. 使用 node js文件
我们在代码中加入打印的函数,如下。这样就能在控制台看到js执行的代码
输出结果
逆向总结
- 需要一点js基础
- 懂得常见的加密算法
- 能够进行js调试
- 主要寻找出整个js加密代码,缺什么补什么
微信公众号平台js逆向分析相关推荐
- js逆向常用加密 + 微信公众号平台试练
文章目录 js常见的加密方式 Md5加密 DES/AES 加密 RSA加密 微信公众号平台js算法改写 js常见的加密方式 常见的加密算法基本分为这几类: 线性散列算法(签名算法) MD5 md2 m ...
- 微信公众号平台的现状及发展前景的分析(十八)
一.基本信息 标题:微信公众号平台的现状及发展前景的分析 时间:2018 出版源:传媒论坛 文件分类:文献笔记 二.研究背景 随着移动互联网科技的飞速发展和日趋成熟,新媒体越来越受到人们的关注.新媒 ...
- 公众号第三方平台和微信公众号平台的区别与开发步骤
我们知道通过微信公众号平台的开放API可以实现用户个性制定制的功能,我们又知道使用开放API时必须知道AppID(应用ID)和AppSecret(应用密钥),而且还要配置URL(服务器地址).Toke ...
- 小木的智慧屋--微信公众号的推广案例分析(1)
前言: 前几天, 因为无聊搞了一个个人的微信公众号, 突然对微信公众号的推广方式有了些兴趣. 但苦于自己是个困在井底, 只道天空是个月饼的底层无知小码农, 竟彷徨一时无措. 近日看了一个微信公众号的推 ...
- 微信公众号平台基础操作
微信公众号平台的设置 头像 类型 logo型 照片型 文字型 卡通型 要求 品牌识别 减少认知成本 体现个性化风格或 整体形象延伸 二维码 名称 品牌一致 便于认知 名称也要SEO 介绍 Slogan ...
- 微信公众号对接PHP电影网站,wxapi 微信公众号平台与电影类网站对接源码
wxapi 联合开发网 - pudn.com...
wxapi 所属分类:微信小程序 开发工具:Java 文件大小:3KB 下载次数:0 上传日期:2019-02-16 23:41:01 上 传 者:lziccard 说明: 微信公众号平台与电影类网 ...
- 公众号管理系统 html,微信公众号平台管理后台.html
微信公众号平台管理后台 $axure.utils.getTransparentGifPath = function() { return 'resources/images/transparent ...
- 微信公众号平台登陆-你已授权登陆过XXXX
上周开始开发微信 从微信公众号点击按钮去我们的服务器 结果除了第一次点击按钮确认授权以外,以后每次都会出现这个页面 加班研究了好几天 终于解决了 原来参考微信公众号平台文档 文档告诉我,state这个 ...
- 第三方网站不能调用微信公众平台里的图片了 显示此图片来自微信公众号平台未经允许不可引用...
下午ytkah在自己小博客搜索时看到有几篇文章图片显示不了,再访问一些网站时发现有些图片无法显示出来,显示"此图片来自微信公众号平台未经允许不可引用",如下图所示,这个应该是最近微 ...
- 微信公众号平台如何批量给粉丝自动打标签分组
关于微信公众号平台批量给粉丝自动打标签分组功能,第三方工具微号帮提供了功能粉丝分组批量转移实现,可以在线给公众号所有粉丝自动分组打标签,公众号粉丝批量打标签分组,与公众号平台后台用户管理功能数据同步, ...
最新文章
- 「MacOS」Mac快捷键
- 算法模板-对称性递归
- 中山服务器维修点,中山存储服务器
- 训练日志 2019.1.26
- 使用Gradle构建Java项目
- org.springframework.hateoas.mvc.ControllerLinkBuilder之ClassNotFoundException的错误
- python方法测试怀孕,Python unittest模拟:是否可以在测试时模拟方法的默认参数的值?...
- unable to verify the first certificate
- javascript获取元素样式值
- c语言内部超链接,HTML5中文本元素超链接的属性
- 操作系统–银行家算法c语言代码
- JBOSS的下载安装、环境变量配置以及部署
- 高等数学常用极限求法总结(无详解)
- 快速安装vs2015社区版
- 腾讯云直播流程及腾讯云通讯功能整理
- 渗透测试的介绍和防范
- C++17 并行排序初体验
- C++中Duration、Time_point和Clocks
- 高分口碑神作《诡秘之主》《剑来》是第四届橙瓜网络文学奖大热门
- MongoDB——文档操作(插入文档)
热门文章
- 移动硬盘插入提示需要格式化RAW_Macbook无法识别移动硬盘?!不仅仅因为硬盘格式问题...
- 小区广播机制(MIB、SIB)
- 6、numpy之文件保存与加载
- 确定有限自动机DFA和非确定有限自动机NFA
- 神州数码c语言笔试题,神州数码笔试题,神州数码笔试题.doc
- 华为手机便签怎样一键扫描图片转化成文字?
- python绘制动态数字时钟_用 Python 画动态时钟
- 谷歌浏览器无法翻译此网页的解决办法
- 电信系统服务器地址,全国各地电信DNS服务器地址
- 简单迁移vps服务器