js逆向-某恩电影数据获取

声明

本文仅供学习参考,请勿用于其他途径,违者后果自负!

前言

目标网站:aHR0cHM6Ly93d3cuZW5kYXRhLmNvbS5jbi9Cb3hPZmZpY2UvQk8vWWVhci9pbmRleC5odG1s

接口:aHR0cHM6Ly93d3cuZW5kYXRhLmNvbS5jbi9BUEkvR2V0RGF0YS5hc2h4

目标:数据解密

参数分析

在这里插入图片描述

打下xhr断点,寻找堆栈,分析疑似加密的地方。

逆向流程的老套路了。在这里加密点非常好找,没有什么难度。
在这里插入图片描述
前端发送ajax请求,成功后返回解密数据,失败后做别的操作。这里我们看成功的地方就可以,success后的回调函数使用了很多的三目运算符,解密肯定是在这里完成然后由前端页面完成渲染,最终展现给我们。

将这一段代码拿到本地看一下在哪里进行的解密操作。

简单分析一下代码,最后的结果是
JSON.parse(webInstace.shell(e))这里做了解密操作.
在这里插入图片描述

可以看到在这里已经完成了解密操作,接下来将webInstace.shell(e)拿下来就可以了。

跳进该函数,观察一下。
在这里插入图片描述
其实就是一个DES加解密算法,知道IV和key,使用python就可以还原。但是看了一下只有二千多行,直接copy到本地调试也没啥问题。

在这里插入图片描述
没有navigator对象,navigator是浏览器中的对象,没有就伪造一个

navigator = {}

补完环境之后发现运行不出结果。
在这里插入图片描述

将相同的代码放进浏览器中却可以出结果。
在这里插入图片描述
毫无疑问是环境伪造的不够成功,直接copy浏览器中的navigator到本地,重新运行代码。
在这里插入图片描述
成功得到结果,完结撒花!

根据提供的引用内容,似乎是在讨论对于一个加密的网址进行解密的问题。其中使用了AES加密算法和CryptoJS库来实现解密操作。具体代码如下: const CryptoJS = require('crypto-js'); function getRealUrl(hh) { var s = "qnbyzzwmdgghmcnm"; var aa = hh.split("/"); var aaa = aa.length; var bbb = aa[aaa - 1].split('.'); var ccc = bbb; var cccc = bbb; var r = /^\ ?[1-9][0-9]*$/; if (r.test(ccc) && cccc.indexOf('jhtml') != -1) { var srcs = CryptoJS.enc.Utf8.parse(ccc); var k = CryptoJS.enc.Utf8.parse(s); var en = CryptoJS.AES.encrypt(srcs, k, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }); var ddd = en.toString(); ddd = ddd.replace(/\//g, "^"); ddd = ddd.substring(0, ddd.length - 2); var bbbb = ddd + '.' + bbb; return bbbb; } } getRealUrl() 这段代码是用于对加密的网址进行解密,具体的解密过程如下: 1. 将加密前的字符串cc分割成数组aa,获取数组长度aaa和数组最后一个元素bbb。 2. 判断最后一个元素bbb是否符合一定的格式要求。 3. 如果符合要求,则将cc转换成CryptoJS的Utf8格式的srcs,并生成一个Utf8格式的密钥k。 4. 使用AES加密算法将srcs和k进行加密操作,采用ECB模式和Pkcs7填充方式。 5. 将加密结果转换成字符串ddd,并替换其中的'/'字符为'^'。 6. 截取ddd中除去最后两个字符的部分,然后与bbb拼接起来,得到解密后的网址bbbb。 7. 返回解密后的网址bbbb。 关于js逆向深圳信数据服务的问题,根据提供的引用内容,目前并没有相关的信息来回答该问题。请提供更多相关的信息,以便更好地回答您的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [js逆向-某市公共资源交易网](https://blog.csdn.net/weixin_46672080/article/details/126003502)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [aqistudy真气网JS逆向 + 数据采集(20220801)](https://blog.csdn.net/zhu6201976/article/details/126124548)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值