【前端安全】js逆向之微信公众号登录密码

❤️博客主页iknow181
🔥系列专栏网络安全PythonJavaSEJavaWebCCNP
🎉欢迎大家点赞👍收藏⭐评论✍


随着发展,越来越多的登录页面添加了密码加密的措施,使得暴力破解变得不在简单,往往需要进行 js 逆向获得加密函数,才好进行下一步操作。

0x01 观察

使用谷歌浏览器打开网站

按下 f12 进入开发者模式

输入账号密码(随便输)

点击登录,先查看网络 里面的载荷,发现数据包 pwd 参数的值,也就是我们输入的密码(12345)被加密了

加密后为:e10adc3949ba59abbe56e057f20f883e

先记下来,为之后完成逆向后进行验证。

0x02 寻找加密函数

进入载荷旁边的启动器,可以查看调用的 js 函数

找名字和登录有关的,可以一个一个的去看。

点进去后,对光标停留的地方打断点。

重新点击登录,进入调试,到断点所在位置

此时 pwd 还未被加密

发现下面有个 pwd 调用函数 p()

在控制台直接输入函数名称 p,回车可以显示函数的具体位置,点击进入

往上翻一翻,可以看到是个 md5 加密

可以点击前面的小箭头,将代码折叠起来方便复制

0x03 调试加密函数

复制到 WebStorm 中

在函数前面加上!,在函数最后加上()。将这个函数变成匿名函数,就可以直接调用使用了。

在开头定义一个方法名:var getStr

将内部原来的调用替换掉

运行,发现和之前的一样,逆向成功


相关推荐
小陈工2 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
H Journey2 小时前
C++之 CMake、CMakeLists.txt、Makefile
开发语言·c++·makefile·cmake
xiaotao1316 小时前
第九章:Vite API 参考手册
前端·vite·前端打包
午安~婉6 小时前
Electron桌面应用聊天(续)
前端·javascript·electron
lly2024066 小时前
C 标准库 - `<stdio.h>`
开发语言
沫璃染墨6 小时前
C++ string 从入门到精通:构造、迭代器、容量接口全解析
c语言·开发语言·c++
jwn9996 小时前
Laravel6.x核心特性全解析
开发语言·php·laravel
迷藏4946 小时前
**发散创新:基于Rust实现的开源合规权限管理框架设计与实践**在现代软件架构中,**权限控制(RBAC)** 已成为保障
java·开发语言·python·rust·开源
彧翎Pro6 小时前
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
前端·jvm
功德+n7 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos