怎么做秒赞网站最专业的网站开发公司哪家最专业
- 作者: 五速梦信息网
- 时间: 2026年03月21日 06:47
当前位置: 首页 > news >正文
怎么做秒赞网站,最专业的网站开发公司哪家最专业,基于phpt漫画网站开发,汤臣倍健网站建设方案案例目标 目标网址:aHR0cHMlM0EvL21hdGNoLnl1YW5yZW54dWUuY29tL21hdGNoLzI= 本题目标:提取全部 5 页发布日热度的值,计算所有值的加和,并提交答案 常规 JavaScript 逆向思路 JavaScript 逆向工程通常分为以下三步: 寻找入口:逆向工程的核心在于找出加密参数的生成方式。…案例目标 目标网址:aHR0cHMlM0EvL21hdGNoLnl1YW5yZW54dWUuY29tL21hdGNoLzI= 本题目标:提取全部 5 页发布日热度的值,计算所有值的加和,并提交答案 常规 JavaScript 逆向思路 JavaScript 逆向工程通常分为以下三步: 寻找入口:逆向工程的核心在于找出加密参数的生成方式。关键逻辑可能隐藏在某个方法或变量中。一个网站可能加载了大量 JavaScript 文件,关键在于从这些文件中找到核心代码的位置。 调试分析:找到入口后,定位到可能执行关键参数的方法。接着,分析内部逻辑,了解使用了哪些加密算法和变量赋值变换。通过整理整体思路,利用断点或反混淆工具进行详细调试分析。 模拟执行:通过调试分析,掌握了逻辑后,需要复现加密过程,以获取最终所需的数据。 开始分析 1、打开chrome浏览器后,打开开发者工具,然后在开始之前,先清空一下缓存 2、重新刷新网页,发现网站开始进入 debugger; 解决的办法有以下几种: 1.禁用此处断点,在 debugger 行数单击鼠标右键,选择【never paush here】然后刷新页面h或点击下一步断点(F8)即可。 2.添加条件断点,同样,在行数单击右键,选择【add conditional breakpoint】然后输入 false,回车后再刷新页面 …3、 在 Network 中可以看到热度值的 api 数据接口为2,响应预览中可以看到当前页面各手机型号发布日热度值: 4、查看这个接口,好像也没什么特殊的地方 5、点击到第二页的时候有概率会提示:cookie 失效,正在重置页面: 6、点击确定,对比请求头,再结合题目,判定问题就出在这个动态cookie上,而且就是 m : 7、看下 m 的具体属性,并非服务器直接设置: cookie 中的 m 参数的样式如下: 2df979fcd34a0bfe193d10c45cae4632|17172091530008、(右键)清除 m 值重新加载页面 可以看到两个一样的请求,但是一个cookie 没有 m,看不到响应,且响应头没有 setcookie,另一个请求的 cookie 带有 m 值。由此猜测,cookie 中的 m 值是第一次请求后由 js 生成出来的。 9、既然第一个请求这么奇怪,我们使用 requests 看下它到底作了什么妖0*0。 用 fidder 抓包或者 python 请求可以发现其返回的是一个混淆的 js 代码: #!usr/bin/env python
-- coding:utf-8 _-import requestscookies = {‘tk’: ‘-5621756640779912732’,‘sessionid’: ‘qdlnifuic3h3iygdq3rcaoxpyrdo9c82’,‘qpfccr’: ‘true’,‘no-alert3’: ‘true’,
}headers = {‘accept’: ‘text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.7’,‘accept-language’: ‘zh’,‘cache-control’: ‘no-cache’,# ‘cookie’: ‘tk=-5621756640779912732; sessionid=qdlnifuic3h3iygdq3rcaoxpyrdo9c82; qpfccr=true; no-alert3=true’,‘pragma’: ‘no-cache’,‘priority’: ‘u=0, i’,‘referer’: ‘https://match.yuanrenxue.cn/match/2','sec-ch-ua': ’“Google Chrome”;v=“125”, “Chromium”;v=“125”, “Not.A/Brand”;v=“24”‘,’sec-ch-ua-mobile‘: ’?0‘,’sec-ch-ua-platform‘: ’“Windows”‘,’sec-fetch-dest‘: ’document‘,’sec-fetch-mode‘: ’navigate‘,’sec-fetch-site‘: ’same-origin‘,’sec-fetch-user‘: ’?1‘,’upgrade-insecure-requests‘: ’1‘,’user-agent‘: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36‘, }response = requests.get(’https://match.yuanrenxue.cn/match/2', cookies=cookies, headers=headers)print(response.text)发现返回了一堆 js 代码,进一步验证了 cookie 是由 js 生成的猜想: 浏览器调试 知道了大概位置,就可以开始找具体代码了。 在源代码选项卡中找到事件监听断点,勾选脚本,这样在遇到js时会自动断下,清除浏览器中保存的 cookie,刷新界面 这里 hook 下 cookie: (function () {Object.defineProperty(document, ‘cookie’, {set: function (val) {debugger;return val;},}); })();hook 好以后 让网页继续运行,成功断在 cookie 生成位置: 此时的 m 已经生成出来了,不过可以通过调用堆栈往前找到生成的位置。 _0x36f9ed$dbsm_0x2d28(‘\x30\x78\x34\x63\x31’, ‘\x51\x6e\x61\x7a’) + ‘\x79\x68’;location\(dbsm_0x2d28('\x30\x78\x63\x34', '\x57\x6f\x5b\x4f') + \)dbsm_0x2d28(‘\x30\x78\x34\x64\x36’, ‘\x72\x50\x50\x79’);再来看下_0x36f9ed: 这个_0x36f9ed里面包含了很多字符串和函数,也就是说上面的代码都是在调用它里面的函数。 稍加整理: _0x36f9ed‘LKayh’;这是个大套娃函数,逐一验证: 也就是最后只要计算: _0x36f9ed‘WXkfw’ + ‘|’ + _0x26b6ca剩下的就是补环境了。 用猿人学的采集工具解混淆(https://tool.yuanrenxue.cn/decode_obfuscator)看看,简单的读下代码。 解混淆之后的代码如下: setInterval(function () {\(dbsm_0x2cce85(); }, 4000);(function \)dbsm_0x5bf942(_0x31e196) {var _0x39cca0 = function () {var _0x13d1a6 = true;return function (_0x4cd36a, _0x4e4df1) {var _0x51fcc5 = _0x13d1a6 ? function () {if (_0x4e4df1) {var _0x174e7c = _0x4e4df1“apply”;_0x4e4df1 = null;return _0x174e7c;}} : function () {};_0x13d1a6 = false;return _0x51fcc5;};}();var _0x5a13d7 = function () {var _0x1aa8c9 = true;return function (_0xdbfd1d, _0x5bfa4e) {var _0x1409db = _0x1aa8c9 ? function () {if (_0x5bfa4e) {var _0x2f8d9f = _0x5bfa4e“apply”;_0x5bfa4e = null;return _0x2f8d9f;}} : function () {};_0x1aa8c9 = false;return _0x1409db;};}();function _0x7d37cb(_0x47959e, _0x3bc00b) {var _0x11ade0 = (65535 _0x47959e) + (65535 _0x3bc00b);return (_0x47959e 16) + (_0x3bc00b 16) + (_0x11ade0 16) 16 | 65535 _0x11ade0;}function _0x142d6a(_0x1bbddf, _0x3f144b) {return _0x1bbddf _0x3f144b | _0x1bbddf 32 - _0x3f144b;}function _0x3649fb(_0x21be27, _0xe6370b, _0x5eeffe, _0x11f158, _0x40461a, _0x2ee259) {return _0x7d37cb(_0x142d6a(_0x7d37cb(_0x7d37cb(_0xe6370b, _0x21be27), _0x7d37cb(_0x11f158, _0x2ee259)), _0x40461a), _0x5eeffe);}function _0x106504(_0x3f4fd4, _0x3c217b, _0x277540, _0x4ef3b1, _0x3be99b, _0x2d706f, _0x180aad) {return _0x3649fb(_0x3c217b _0x277540 | ~_0x3c217b _0x4ef3b1, _0x3f4fd4, _0x3c217b, _0x3be99b, _0x2d706f, _0x180aad);}function _0x569d9f(_0x3a1a35, _0x4e6ac2, _0x5a49a9, _0x312136, _0xd2eee1, _0x156125, _0x396c4c) {return _0x3649fb(_0x4e6ac2 _0x312136 | _0x5a49a9 ~_0x312136, _0x3a1a35, _0x4e6ac2, _0xd2eee1, _0x156125, _0x396c4c);}function _0x25e694(_0x2a8b77, _0x6278a0) {let _0x124cc7 = [99, 111, 110, 115, 111, 108, 101];let _0x23a395 = “”;for (let _0x29cf05 = 0; _0x29cf05 _0x124cc7[“length”]; _0x29cf05++) {_0x23a395 += String“fromCharCode”;}return _0x23a395;}function _0x573502(_0x21e7a6, _0x87331, _0xb0313, _0x3c93cc, _0x2b42ca, _0x490f6b, _0x18e811) {return _0x3649fb(_0x87331 ^ _0xb0313 ^ _0x3c93cc, _0x21e7a6, _0x87331, _0x2b42ca, _0x490f6b, _0x18e811);}function _0xc20d2b(_0x130de7, _0x243ab5, _0x5c559a, _0x4eb361, _0x178d6a, _0x3871a0, _0x325335) {return _0x3649fb(_0x5c559a ^ (_0x243ab5 | ~_0x4eb361), _0x130de7, _0x243ab5, _0x178d6a, _0x3871a0, _0x325335);}function _0x116551(_0x1dbd19, _0x3eb31e) {if (_0x3eb31e) {return _0xc20d2b(_0x1dbd19);}return _0x25e694(_0x1dbd19);}function _0x118b69(_0x118b98, _0x4dc3aa) {let _0x5350c = “”;for (let _0x51d6de = 0; _0x51d6de _0x118b98[“length”]; _0x51d6de++) {_0x5350c += String“fromCharCode”;}return _0x5350c;}function _0x7c9cae(_0x218784, _0x102f11) {var _0x4a24af = _0x39cca0(this, function () {var _0x58b618 = function () {var _0x4e2deb = _0x58b618“constructor”()“compile”;return !_0x4e2deb“test”;};return _0x58b618();});_0x4a24af();(function () {_0x5a13d7(this, function () {var _0x22c2f7 = new RegExp(“function *\( *\)”);var _0x1449c8 = new RegExp(“\+\+ (?:[a-zA-Z$][0-9a-zA-Z$])”, “i”);var _0x543b10 = \(dbsm_0x2cce85("init");if (!_0x22c2f7["test"](_0x543b10 + "chain") || !_0x1449c8["test"](_0x543b10 + "input")) {_0x543b10("0");} else {\)dbsm_0x2cce85();}})();})();_0x116551();qz = [10, 99, 111, 110, 115, 111, 108, 101, 32, 61, 32, 110, 101, 119, 32, 79, 98, 106, 101, 99, 116, 40, 41, 10, 99, 111, 110, 115, 111, 108, 101, 46, 108, 111, 103, 32, 61, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 40, 115, 41, 32, 123, 10, 32, 32, 32, 32, 119, 104, 105, 108, 101, 32, 40, 49, 41, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 102, 111, 114, 40, 105, 61, 48, 59, 105, 60, 49, 49, 48, 48, 48, 48, 48, 59, 105, 43, 43, 41, 123, 10, 32, 32
- 上一篇: 怎么做秒赞网站百胜招聘 网站开发
- 下一篇: 怎么做模板网站高端建站需要什么条件
相关文章
-
怎么做秒赞网站百胜招聘 网站开发
怎么做秒赞网站百胜招聘 网站开发
- 技术栈
- 2026年03月21日
-
怎么做免费域名网站网站抓取QQ获取系统
怎么做免费域名网站网站抓取QQ获取系统
- 技术栈
- 2026年03月21日
-
怎么做免费的网站链接沉默是金什么意思
怎么做免费的网站链接沉默是金什么意思
- 技术栈
- 2026年03月21日
-
怎么做模板网站高端建站需要什么条件
怎么做模板网站高端建站需要什么条件
- 技术栈
- 2026年03月21日
-
怎么做能让网站尽快收录自学网站建设 难吗
怎么做能让网站尽快收录自学网站建设 难吗
- 技术栈
- 2026年03月21日
-
怎么做批量的网站检查网络营销的特点主要体现为()
怎么做批量的网站检查网络营销的特点主要体现为()
- 技术栈
- 2026年03月21日
