本帖最后由 woyaoxuexi 于 2024-4-19 15:16 编辑
原帖访问地址:某二手房网站登录密码加密分析
前言:整体的逆向流程原帖已经很到位的做了分析,本文主要围绕原帖文中最后补完环境的附件代码进行研究学习。各位读者需结合原帖进行阅读。
首先补的环境都是从pclogin.js文件中抠出来的
pclogin
该文件应该是一个webpack打包器生成的单文件。我们先来学习一下原始的源码。整体是一个自执行函数
[JavaScript] 纯文本查看 复制代码 !function(n){
// 打包器内部代码
}(['每个包的代码'[font=-apple-system, BlinkMacSystemFont, "]]) 通过原帖的分析可知,进行加密的模块在数组的62位,并引用了其他模块(6,20,2,0,1)。注:原站应该已经重新打包生产了,代码依赖顺序和依赖项应该有所变化,但不影响分析方式。通过断点
debug1
可以找到加密是通过ec来进行的。
而ec是由o.a实例化,o是模块6的代码。
debug2
并且模块6是没有其他依赖模块的。
所以针对原帖的附件代码进行了简化,只把模块6抠了出来。结果如下图
result
代码放到gist了,链接:https://gist.github.com/dingcang/91a1437243e260006cb2fc6eaed249b7
|