flashspring520 发表于 2023-1-10 23:04

220620【JS 逆向百例】中烟新商盟登陆001

220620【JS 逆向百例】中烟新商盟登陆001逆向目标
[*]目标:中烟新商盟登陆参数密码的加密解密
[*]链接:https://www.xinshangmeng.com/xsm2/?Version=2022052100
[*]简介:主要对加密的函数的提取,找到加密的地方,分析加密函数,提取重要的js代码进行还原加密算法。
逆向参数
[*]逆向的目标主要是j_mcmm 参数,调用的加密方法仍然是b = F(F(b) + c);,要进到F函数体观察是怎么进行加密的,并提取加密函数体。

[*]通过在1126行进行断点,重新发送一次请求,使断点停留在这个函数的地方,第一次停留断点的地方1135,b参数是加密后的,我们要看没有加密前b和c的值,通过在控制台输出b和c:可以看出b是输入的明文密码,c是输入的验证码,从函数字面上理解:先对明文密码b执行F函数,结果再加上验证码c,当做参数,再执行F函数,得到加密后的结果:874096a27eb8571f24936cc9dc30cd1。

[*]下面通过点击进入下一个函数调用按钮或F11进入到F函数的函数体中,可以看到F(b)就是对函数d(a)的调用进行的加密,里面return返回的就是第一次对明文b进行加密的结果:

[*]拆分这个函数d(a),可以分别执行了以下一些函数:
[*]m(a + "{1#2$3%4(5)6@7!poeeww$3%4(5)djjkkldss}")
[*]o(m(a + "{1#2$3%4(5)6@7!poeeww$3%4(5)djjkkldss}"))
[*]e(o(m(a + "{1#2$3%4(5)6@7!poeeww$3%4(5)djjkkldss}")), 32)
[*]n(e(o(m(a + "{1#2$3%4(5)6@7!poeeww$3%4(5)djjkkldss}")), 32))


[*]下面就是扣js代码,把用到的相关的函数体全部扣取出来,复制到乐易助手中进行调用测试,通过测试并加入自己写的函数encrypt_pwd(),可以正确的还原出加密的算法逻辑,至此,js代码的分析和扣取结束。

rhci 发表于 2023-1-11 11:44

阿祖,收手吧,外面全是警察。

aa361611002 发表于 2023-1-11 10:05

52896009 发表于 2023-1-11 07:56
加密完了入户解密的呢

这个是验证手段,不需要加密,   网页后台也是通过同样的加密得到结果跟你提交的结果对比,是否一样,来验证你这个包是否可用的.

tanzhijun8 发表于 2023-1-11 02:02

谢谢分享

52896009 发表于 2023-1-11 07:56

加密完了入户解密的呢

istat 发表于 2023-1-11 08:12

谢谢分享。

guyuelintian 发表于 2023-1-11 08:13

谢谢分享

zhugyun08 发表于 2023-1-11 08:22

谢谢分享

chaojiak47 发表于 2023-1-11 08:26

52896009 发表于 2023-1-11 07:56
加密完了入户解密的呢

他这个post 登录不需要解密

zqczqczqc 发表于 2023-1-11 08:58


谢谢分享

wangguang 发表于 2023-1-11 09:44

这不是志远那个吗{:17_1068:}

52896009 发表于 2023-1-11 10:02

chaojiak47 发表于 2023-1-11 08:26
他这个post 登录不需要解密

上边提到解密,我以为哈希算法可逆了
页: [1] 2 3
查看完整版本: 220620【JS 逆向百例】中烟新商盟登陆001