[JS逆向] 趣X条登陆【username、password加密逆向】

aHR0cHM6Ly9xYWMtcXVwb3N0LnF1dG91dGlhby5uZXQvbWVtYmVyL2xvZ2lu

注意:文章内容仅用于学习和技术交流,如有侵权请联系我删除。

学者应洁身自好,切勿做出违法的事情。

➣➣欢迎关注本人微信公众号:Anonymous NoteBook➣➣

分享好玩有趣的网络资源&软件工具~

分享各种技术性PDF资源/付费查询PDF资源~

分享各种编程语言、开发技术、分布式事务、大数据与云计算技术~

分享有关网络爬虫(Web爬虫逆向 | 安卓逆向)案例、数据挖掘、技术心得等~

开始分析:

 [ Ps:  手机号为随意填写,请勿当真!!!    ]

我们看下请求得接口:

 请求参数均为加密参数,所以我们第一步要破解这两个加密参数才能在后续的模拟请求中使用。

逆向开始:

我们进行全局搜索(Ctrl+shift+f), 我们先搜索下 " telephone "这个参数,看下结果:

在搜索的结果项中,返现了一条与加密相关的语句,我们点进去看下,不出意外,加密逻辑就在此处。

加密逻辑一下子就清晰起来了,一般懂点js语法的都能看出其中的逻辑判断语句,这里不多做讲解。

我们在其中看到了加密关键词 “encryptDes”  ,另外仔细观察的话,可以看到“telephone”和“password”使用的是同一个加密函数 ---encryptDes,这里可以打个断点进行动态调试看下:

这里的变量 ‘e’ 是 ‘pwdForm’的值,而变量‘pwdForm’是一个事先声明的字典对象,在后面逻辑判断中动态的设置字段:

 根据调试的结果,e.password 就是我们传进来的 “密码/手机号”,被当作匿名函数的参数,我们跟进去匿名函数后发现,这是一个典型的AES加密:

接下来,就很好办了,把加密逻辑代码拷贝下来粘贴到js文件中,稍加改进后,就可以进行测试了,最后结果与网页数据一毛一样:

 

 完整代码:

var CryptoJS = require('crypto-js')

//账号、密码加密
function encryptDesPwd(t) {
    var e = CryptoJS.enc.Utf8.parse("625202f9149e061d");
    return CryptoJS.DES.encrypt(t, e, {
        mode: CryptoJS.mode.ECB,
        padding:CryptoJS.pad.Pkcs7
    }).toString()
}


console.log(encryptDesPwd('15864566545'))
console.log(encryptDesPwd('123456789'))

完事~~~收工~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值