逆向案例二十五——webpack所需模块函数很多,某翼云登录参数逆向。

解决步骤:

网址:aHR0cHM6Ly9tLmN0eXVuLmNuL3dhcC9tYWluL2F1dGgvbG9naW4=

不说废话,密码有加密,直接搜索找到疑似加密位置打上断点。

再控制台打印,分析加密函数

有三个处理过程,b['g']得到的是用户名,b['f'] 对用户名作处理。b['c'] 接收密码和处理过的用户名两个参数。这很像webpack,先去前面找有没有定义b对象。果然有,打上断点,刷新页面,o即是加载器。

进入加载器,复制加载器,导出加载器函数,删除初始化函数,变为字典,补充细枝末节。首先透露,这里要复制很多函数,分布在不同的子文件中,因此需要整体复制下来。这个自运行函数格式不对,后面要改,而且它这里面也是有函数模块的。

去复制所有的子文件

复制好的结果为:

导出加载器,去除初始化,初始化位置再头文件最后靠近函数模块的地方。

补充好的结果:

拿到浏览器中去运行一下,可以看到直接出结果了。

现在回到node.js环境中,补充环境,加上window=global,可以看见这一行window.navigator.userAgent缺少

去浏览器中打印,接着复制到Node.js环境中。

接着再运行

改成感叹号格式。

接着运行,document未定义

观察代码形式,直接注释掉

接着运行

找到这串代码,置空即可。

再次运行,发现成功

接下来,拷贝到浏览器中,再进行精简。在浏览器中,删除window=global,加上这两行代码

所有需要的函数被打印出来了。

拷贝所有运行到的代码,然后替换掉自执行函数里面的函数。然后删除所有的子文件。

结果展现,代码精简到了一万多行:

浏览器的补环境,无非就是document,navigator

相关推荐
明月_清风6 小时前
Python 装饰器前传:如果不懂“闭包”,你只是在复刻代码
后端·python
明月_清风6 小时前
打破“死亡环联”:深挖 Python 分代回收与垃圾回收(GC)机制
后端·python
ZhengEnCi1 天前
08c. 检索算法与策略-混合检索
后端·python·算法
明月_清风1 天前
Python 内存手术刀:sys.getrefcount 与引用计数的生死时速
后端·python
明月_清风1 天前
Python 消失的内存:为什么 list=[] 是新手最容易踩的“毒苹果”?
后端·python
Flittly2 天前
【从零手写 ClaudeCode:learn-claude-code 项目实战笔记】(3)TodoWrite (待办写入)
python·agent
千寻girling2 天前
一份不可多得的 《 Django 》 零基础入门教程
后端·python·面试
databook2 天前
探索视觉的边界:用 Manim 重现有趣的知觉错觉
python·动效
明月_清风2 天前
Python 性能微观世界:列表推导式 vs for 循环
后端·python
明月_清风2 天前
Python 性能翻身仗:从 O(n) 到 O(1) 的工程实践
后端·python