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

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

网址:

aHR0cHMlM0EvL3Bhc3Nwb3J0LmZhbmcuY29tLw==

特征:

21fc38c262f0fa427e3ff1f4af357ef4.png

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

e6bd4addec61c33bd856b6a5829ac711.png

d7db641fe77c7ef7a7c20c553232989c.png

2.登陆测试

4589ec4c037f17fd208181bc023835d6.png

3.获得加密特征,pwd

ad3211b6734ef24c6843f993ff8828d5.png

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

0664bee65d813be1f2aedfae56410a96.png

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

07635285de84e74e6b7b027d498e8ad6.png

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

9cf35617df520db64aac8e43d425a772.png

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

7.重新登陆调试

5614c858b3c09af5bac64a1800abd65f.png

8.继续刷新调试

8ec21e63d8563476560c617d0c2066c7.png

关键生成代码:

data: {
    uid: that.username.val(),
    pwd: encryptedString(key_to_encode, that.password.val()),
    Service: that.service.val(),
    AutoLogin: that.autoLogin.val()
},

9.console.log打印 关键验证

493fdde9dea44d5b5ed07f4cc0597de8.png

10.查看关键加密函数

f18d374a170afea7632e8e3d7df828d5.png

11.格式化加密函数

4b1086e5720aeb8df16de7576c41ba37.png

12.关键参数 key_to_encode 的获取

60048eaabaed7c1fabe6a743d23658f9.png

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

<script>
        setMaxDigits(129);
        var key_to_encode = new RSAKeyPair("010001", "", "978C0A92D2173439707498F0944AA476B1B62595877DD6FA87F6E2AC6DCB3D0BF0B82857439C99B5091192BC134889DFF60C562EC54EFBA4FF2F9D55ADBCCEA4A2FBA80CB398ED501280A007C83AF30C3D1A142D6133C63012B90AB26AC60C898FB66EDC3192C3EC4FF66925A64003B72496099F4F09A9FB72A2CF9E4D770C41");
    </script>

13.RSAKeyPair 生成函数

d8213e8d8e61266d471adbecac56d681.png

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

3ed9fe38ae7747dcfb4e0c4042db0c92.png

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

报错信息:

cf5fc9ca113e056d5c500aa941f08e67.png

68602ce6261de7046d263d96381072b9.png

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

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

413b2d17951d0d2a050e7645619a501c.png

完整代码获取 

请关注本渣渣公众号

8fadc492a235fc71216b6aaba8714403.jpeg

后台回复“某天下”

声明 

本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系立即删除!

参考来源:

【JS 逆向百例】房天下登录接口参数逆向-K哥爬虫

https://mp.weixin.qq.com/s/yQMlvddLHi_lSQAuK05HyA

ython爬虫进阶必备 | X天下与XX二手房密码加密分析-咸鱼学Python

https://mp.weixin.qq.com/s/R_9W2TKcMzKK46nOHystQw

·················END·················

你好,我是二大爷,

革命老区外出进城务工人员,

互联网非早期非专业站长,

喜好python,写作,阅读,英语

不入流程序,自媒体,seo . . .

公众号不挣钱,交个网友。

读者交流群已建立,找到我备注 “交流”,即可获得加入我们~

听说点 “在看” 的都变得更好看呐~

关注关注二大爷呗~给你分享python,写作,阅读的内容噢~

扫一扫下方二维码即可关注我噢~

4bd81cfb9ca2c47af5fddb8d7e1f3a69.jpeg

da1c0eaa6e01e2ba54ff8f9186c73e67.png

关注我的都变秃了

说错了,都变强了!

不信你试试

374e5519c4bca05df218b63576628053.jpeg

扫码关注最新动态

公众号ID:eryeji

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值