主页 > 创业  > 

JS逆向获取算法使用算法逻辑进行爆破

JS逆向获取算法使用算法逻辑进行爆破
前言

爆破的逻辑 : 最简单的就是登录框  不断的试账号密码   这个是无前端加密的情况下

假如我们猜中了  账号密码  admin 123 

但是这个时候前端是有加密的           服务器不会识别 admin 123  只会识别他的 算法之后的值 

固定的算法如base64等  解决这个和喝水一样但是如果是自己写的算法呢  现在的算法潮流是 SHA-256 是MD5的延伸但是这章我们不学习这个

使用算法逻辑进行爆破

使用算法之前我们需要进行寻找算法所在的js文件然后调试  看看能否运行

获取:交我算平台

(上个文章有获取的方法)

发现点直接断点不多 bb 

捕捉到了信息

但是我们真正需要的是加密的文件 .js  就是  他上面  new的这个库

点击 右键  下载到桌面  

使用 VS打开的同时我们把  这个网站的算法调用 复制一下

把 o替换为实际的私钥   r.set是创建公钥

替换一下加密的逻辑

var r = new JSEncrypt, o ='305c300d06092a864886f70d0101010500034b003048024100959684a0076fd2a8fc1589469cf8c95f16ef67490c519f4d274373f29cee64cf6a0db8ad8953122c5b3664e4a48acd34d9b95c0ae62a31be612632e1c49154db0203010001'; r.setPublicKey(o); var s = r.encrypt('xiaodi'); console.log(s);

这个是代码文件   

最后是可以直接运行成功的  那就说明我们拿到了这个算法的文件

接下来就是进行爆破

前提条件:

先配置环境变量

根据在环境变量系统的Path进行配置

cmd中输入   phantomjs   会出现一个尖括号

然后打开burp  导入

这个模块

之后我们就可以进行测试了

先将加密文件.js放到bur插件路径下和那个程序同一个目录   那可能会说了  加环境变量的那个工具有鸡毛用?他是用来生成加密逻辑下的加密数据   然后出现在本地的一个网站端口上 让插件进行测试

进入第三个文件

// 加载实现加密算法的js脚本 var wasSuccessful = phantom.injectJs('JSEncrypt.js'); /*引入实现加密的js文件*/ // 处理函数 function js_encrypt(payload) { // var newpayload; /**********在这里编写调用加密函数进行加密的代码************/ var r = new JSEncrypt, o = '305c300d06092a864886f70d0101010500034b003048024100959684a0076fd2a8fc1589469cf8c95f16ef67490c519f4d274373f29cee64cf6a0db8ad8953122c5b3664e4a48acd34d9b95c0ae62a31be612632e1c49154db0203010001'; r.setPublicKey(o); var newpayload = r.encrypt(payload); /**********************************************************/ return newpayload; }

复制上这个测试的url

然后我们去抓个包

进行爆破

还有命令行  别忘了 进行清空一下   开始攻击  :

只有这个样子对方的服务器才能正确的解析  这样才能表示我们的爆破不是无用功  这里是不能爆破成功的  一般这个弱口令在一些刚起步的企业是比较常见的

标签:

JS逆向获取算法使用算法逻辑进行爆破由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“JS逆向获取算法使用算法逻辑进行爆破