前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【JS逆向】某天下登陆密码加密逆向分析探索!

【JS逆向】某天下登陆密码加密逆向分析探索!

作者头像
二爷
发布2024-01-23 15:52:15
1590
发布2024-01-23 15:52:15
举报
文章被收录于专栏:二爷记二爷记

某网站的登陆密码加密逆向分析探索,其密码很明显采用了RSA 加密,加密特征比较明显,按照步骤一步步即可找到并扣取下来,适合新人JS逆向练手学习使用!

网址:

代码语言:javascript
复制
aHR0cHMlM0EvL3Bhc3Nwb3J0LmZhbmcuY29tLw==

特征:

代码语言:javascript
复制
#123456
pwd: 
00fe1ac66f2a7a4c5e2c7d665980b6a3a75f1c484f2e9438eefb2839529a0d4ed2c34c71cd7d9764cf78fc7d02b57b583c6e03bd0226f18bca23feeffcc0e1d9bd882e7e755a4e61e3529050cc908273bac3b7e6e3643d43aace077b758cb53042012cbf27be941346d77d26cdc797d0485ca1218504791353c1b0fbd11aff70
  1. 打开网站,使用错误的账号登陆。密码:123456

2.登陆测试

3.获得加密特征,pwd

4.老规矩,搜索关键字 pwd

5.找到最可疑的加密位置

6.打开至面板,打上断点调试

如果有多个位置,不妨多打几个断点进行断点调试,这里明显有两处地方

7.重新登陆调试

8.继续刷新调试

关键生成代码:

代码语言:javascript
复制
data: {
    uid: that.username.val(),
    pwd: encryptedString(key_to_encode, that.password.val()),
    Service: that.service.val(),
    AutoLogin: that.autoLogin.val()
},

9.console.log打印 关键验证

10.查看关键加密函数

11.格式化加密函数

12.关键参数 key_to_encode 的获取

参数在页面js里就能找到,可通过搜索关键字即可找寻到!

代码语言:javascript
复制
  <script>
        setMaxDigits(129);
        var key_to_encode = new RSAKeyPair("010001", "", "978C0A92D2173439707498F0944AA476B1B62595877DD6FA87F6E2AC6DCB3D0BF0B82857439C99B5091192BC134889DFF60C562EC54EFBA4FF2F9D55ADBCCEA4A2FBA80CB398ED501280A007C83AF30C3D1A142D6133C63012B90AB26AC60C898FB66EDC3192C3EC4FF66925A64003B72496099F4F09A9FB72A2CF9E4D770C41");
    </script>

13.RSAKeyPair 生成函数

14.整个 RSA.min.js 文件扣取,本地运行

附:这里踩的坑,key_to_encode 是加密生成,需要通过加密函数,而不是某个固定值,如果使用调试的固定值,运行函数会报错!

报错信息:

如果本地运行出错,一定是某个参数或者方法错误了,这导致了语法错误,本身js代码是正确的!

Python 调用js文件生成密码加密效果:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python与SEO学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档