青海找人做网站多少钱,定制网站建设与运营案例,电脑上重新下载一个wordpress,wordpress some chinese please持续创作文章#xff0c;只是为了更好的思考 如下内容#xff0c;如果有写的不清楚#xff0c;不对的地方#xff0c;也请大家提醒我一下#xff0c;谢谢#xff01; 本次的目标是某道翻译网站#xff0c;相信各位爷应该明白#xff0c;这次逆向的整体做法还是把webpac… 持续创作文章只是为了更好的思考 如下内容如果有写的不清楚不对的地方也请大家提醒我一下谢谢 本次的目标是某道翻译网站相信各位爷应该明白这次逆向的整体做法还是把webpack的内容全部抠出来然后根据缺失的环境去补把没有必要的环境去除掉这次的解密逆向部分我从试接口的角度看了下只需要把接口中返回的加密内容解密出来即可发送的接口请求参数中并不需要去逆向好接下来看解密步骤。 随便输入一个字符串接收到两个请求key请求经测试后是没有用的接口参数也经测试后不需要解密那么就对返回的加密字符串做解密即可。
光看解密的文本其实没有什么突破口没有信息可供参考那么我们还是从接口参数的角度去逆向找到返回加密字符串后最终解密的那个部分看到如下参数后笔者决定从sign参数入手。 在这里找到一个形似返回请求参数的地方断下断点后重新发送请求断点果然断下。 之后经过单步调试一步步调试直至翻译后的文本出现最终是在如下这个地方我们在此地方断点。 在控制台输出下相关字符串最终发现o是加密字符串Mo这块是解密部分。 我们往上寻找下Mo、Ko的生成过程发现是一个加载器中的方法 我们找到o的加载器发现加载器和函数是在同一个js文件里面那就直接全部抠出来方便多了放入本地后命名为wpack_app.js, 然后按照传统方法任意设置一个变量去接收这个加载器我这里用的是pengyuyan 在js最后我们还原出加密步骤然后使用node运行。 发现加载器报错后我们在加载器位置打一个日志输出重新运行js代码后发现是14d9这个函数缺少。 然后通过在网页上查找这个函数发现这个函数是在另外一个js文件里面。 我们将这个chunk.js文件保存在本地命名为wpack_chunk.js 并将在wpack_app.js 最上方里面导入。 重新运行一遍后发现缺少document环境这里涉及到dom树的操作所以我直接用jsdom方便补了。 重新运行后发现又缺少navigator环境继续补。 这里我直接将网页中整个navigator复制下来了。 重新运行后又缺少location环境继续补。 补完后在这里又出现问题我们在网页中找到这个位置断点进去查看。 发现最后r “utf-8”,这里我们将其写死如果不行就再看。 再跑一遍后又是环境的问题继续补。 因为这里需要一个getItem方法所以我们直接补上。 再次运行缺少Audio环境。 根据经验分析这个环境基本上没什么用所以笔者在代码这里直接将其置为空字典并将其相关的函数全部删除。 重新运行后又是新的问题。 老样子在网页上找到对应函数后断点将这个value值js写死替代进去如下。 重新运行后发现新的错误这个监听器可以补齐也可以删掉这里我选择删掉。 继续重新运行发现如下报错这里我长话短说少了document.domain环境。 最后运行成功但最后还长时间卡了一下报了一个异常。 我们将这里最后还会发送的请求删掉。 然后封装成一个函数供python调用。
import requests
import execjscookies {OUTFOX_SEARCH_USER_ID: 129574341210.108.162.134,OUTFOX_SEARCH_USER_ID_NCOO: 1875537872.7993217,
}headers {Accept: application/json, text/plain, */*,Accept-Language: zh-CN,zh;q0.9,Connection: keep-alive,Content-Type: application/x-www-form-urlencoded,# Cookie: OUTFOX_SEARCH_USER_ID129574341210.108.162.134; OUTFOX_SEARCH_USER_ID_NCOO1875537872.7993217,Origin: https://fanyi.youdao.com,Referer: https://fanyi.youdao.com/,Sec-Fetch-Dest: empty,Sec-Fetch-Mode: cors,Sec-Fetch-Site: same-site,User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36,sec-ch-ua: Chromium;v118, Google Chrome;v118, NotA?Brand;v99,sec-ch-ua-mobile: ?0,sec-ch-ua-platform: Windows,
}data {i: 你是猪,from: auto,to: ,domain: 0,dictResult: true,keyid: webfanyi,sign: 705568dcba3d1bc70548097826ab584b,client: fanyideskweb,product: webfanyi,appVersion: 1.0.0,vendor: web,pointParam: client,mysticTime,product,mysticTime: 1697534116771,keyfrom: fanyi.web,mid: 1,screen: 1,model: 1,network: wifi,abtest: 0,yduuid: abcdefg,
}response requests.post(https://dict.youdao.com/webtranslate, cookiescookies, headersheaders, datadata)
secret_data response.textjs_str open(wpack_app.js, r, encodingutf8).read()
js_str execjs.compile(js_str)data js_str.call(get_data, secret_data)
print(data)
最后大功告成