上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

webpack逆向-中远海运

[复制链接]

126

主题

376

帖子

447

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
447

猫咪币纪念章三好学生活跃会员热心会员突出贡献中秋纪念章

发表于 2021-8-25 00:42:56 | 显示全部楼层 | 阅读模式

本帖最后由 小陈 于 2021-8-25 01:34 编辑

目标网站:

今天我们的目标就是这个aHR0cHM6Ly9zeW5jb25odWIuY29zY29zaGlwcGluZy5jb20v网站的登录加密。

第一步:抓包

来到网站之后,我们输入一下测试的账号密码,抓取登录包来看一下数据的格式。

如下图:

image.png

可以明显的看到密码的参数是加密的,接下来我们就要去源码里面寻找加密的位置,进行分析。

第二步:加密分析

首先,我们全局搜索password,在文件中找一下加密的位置。

image.png

没有混淆,我们通过几次简单的定位来到提交参数的这个位置,这里显示:

var a = {
                username: e,
                password: Object(o.a)(t),
                captcha: n
            };

password也就是我们提交的密码这一参数,在这个位置的时候,加密是已经完成了的。我们在此之前下一个断点。

下断点刷新当前页面,可以看到成功在当前位置断下。

image.png

n("MuMZ");这种格式,上次在jdj里面提到webpack的基本形式,此时我们需要去到n这个函数内部。

image.png

直接跳转过来,我们寻找头部和尾部将这个函数扣下来放入编辑器中。如图:

image.png

回到网页中来,我们看到这个函数的这个位置

image.png

这是webpack的常见形式,在我们扣出来的代码中,我们想让程序正常的执行这个函数,我们定义一个全局变量 get_sign,在函数内部进行赋值。

image.png

定义之后我们简单的测试一下这个函数,提示window未定义,那我们在全局定义一下window。

image.png

此时,可以正常调用,那我们回过头来继续分析。

image.png

从password的加密我们直接跳转过来,发现跳转到o这个函数这个位置,o这个函数又处于“MuMZ”这一模块里面,现在我们已经扣出来了webpack基本结构的代码,我们对其模块进行补充,首先补充的就是“MuMZ”这一模块,我们直接拿出来放在我们的编辑器中。

image.png

在“MuMZ”这一模块中有调用了这个东西,因为代码没有混淆 我们直接全局搜索,定位一下调用的这个模块。

image.png

定位过来之后我们发现,这个模块里面调用了很多其他的东西,我们简单的看了一下,发调用的东西都在整个文件夹中,同时这个文件没有关于浏览器的一些元素,我们直接把这个文件的代码全部拿下来进行调用就可以了。

image.png

如上图所示,现在我们来测试一下程序是否可以正常运行。

image.png

正常运行,没有报错。接下来我们就看一下如何进行调用完成加密。

函数调用

方法一

将密码设置为window的一个属性进行传递。

image.png

方法二

直接设置为全局变量,进行传递。

image.png

方法三

设置get函数进行包裹调用。

image.png

方法四

函数包裹password当作参数传递。

image.png

结束

至此,加密就已经搞定啦!可以通过python或者其他方式进行调用!

哥哥们晚安!

已有1人评分油猫币 理由
王一之 + 2 ggnb!

查看全部评分 总评分:油猫币 +2 

Vx:rsnhkx2015  公众号:陈公子的话

发表回复

本版积分规则

快速回复 返回顶部 返回列表