目标网站加密机制解析
本文提供了一个案例,以分析并模拟登录一个特定的同城网站。目标网站URL编码后为 == 。在登录过程中,用户发现使用错误账号密码时,系统返回了加密后的 password、token 和 fingerprint 。通过网络抓包,发现这些信息实际上存在于之前的请求响应中。
为了简化登录流程,直接搜索 token 和 fingerprint 的值,发现在之前的请求响应中已存在,无需额外构造。其中 fingerprint 包含浏览器环境信息,复制使用即可,也可通过后续分析自定义生成。
通过深入分析,发现目标网站在处理登录请求时,使用了特定的 JS 函数来加密 password 。函数名为 n.encrypt() ,其内部涉及 RSA 加密算法,使用固定值 i.rsaExponent 和 i.rsaMolus 。了解到这一机制后,可以自行编写代码解密加密后的 password ,从而实现模拟登录。
整个案例代码大约有 400 多行,已上传至作者的 GitHub 账户,可供学习和参考。同时,作者推荐关注其微信公众号“逆向新手”,了解更多逆向技术内容。
⑵ 介绍一点js加密的方法
你可以到网上下载下面所用的js文件。
1、base64加密
在页面中引入base64.js文件,调用方法为:
<scripttype="text/javascript"src="base64.js"></script>
<scripttype="text/javascript">
varb=newBase64();
varstr=b.encode("admin:admin");
alert("base64encode:"+str);
str=b.decode(str);
alert("base64decode:"+str);
</script>
2、md5加密
在页面中引用md5.js文件,调用方法为
<scripttype="text/ecmascript"src="md5.js"></script>
<scripttype="text/javascript">
varhash=hex_md5("123dafd");
alert(hash)
</script>
3、sha1加密
据说这是最安全的加密
页面中引入sha1.js,调用方法为
<scripttype="text/ecmascript"src="sha1.js"></script>
<scripttype="text/javascript">
varsha=hex_sha1('mima123465')
alert(sha)
</script>