【JS逆向系列】梦幻西游藏宝阁

777 阅读1分钟
声明:本文只作学习研究,禁止用于非法用途,否则后果自负,如有侵权,请告知删除,谢谢!

前言

目标网址:aHR0cHM6Ly94eXEuY2JnLjE2My5jb20vY2dpLWJpbi94eXFfb3ZlcmFsbF9zZWFyY2gucHk/YWN0PXNob3dfb3ZlcmFsbF9zZWFyY2hfbGluZ3NoaQ==


页面分析

点击搜索,在接口出看到这么些密文 在这里插入图片描述

在这里插入图片描述

解析

直接走栈下断点跟吧,目测解密位置再这些地方,直接下第一个,往回跟

在这里插入图片描述

继续走起 在这里插入图片描述 跟了一会后,看到了我们要的数据,之后就继续往里跟

在这里插入图片描述 r然后找到加密位置抠出来即可了 在这里插入图片描述

总结

这是之前不用登入的版本,现在是需要登入的

# -*- coding: utf-8 -*-
'''
@File:      run.py
@SourceUrl: 
@Author:    阿J
@Date:      2021/7/26 14:04
@Software:  PyCharm
@Desc:
'''
import requests,json
import execjs

headers = {
    'Connection': 'keep-alive',
    'Pragma': 'no-cache',
    'Cache-Control': 'no-cache',
    'sec-ch-ua': '" Not;A Brand";v="99", "Google Chrome";v="91", "Chromium";v="91"',
    'sec-ch-ua-mobile': '?0',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36',
    'Accept': '*/*',
    'Sec-Fetch-Site': 'same-origin',
    'Sec-Fetch-Mode': 'no-cors',
    'Sec-Fetch-Dest': 'script',
    'Referer': 'https://xyq.cbg.163.com/cgi-bin/xyq_overall_search.py?act=show_overall_search_lingshi',
    'Accept-Language': 'zh-CN,zh;q=0.9',
}

params = (
    ('callback', 'Request.JSONP.request_map.request_25'),
    ('_', '1627279253892'),
    ('act', 'recommd_by_role'),
    ('page', '1'),
    ('equip_level_min', '60'),
    ('equip_level_max', '160'),
    ('count', '15'),
    ('search_type', 'overall_search_lingshi'),
    ('view_loc', 'overall_search'),
)
with open('./code.js',encoding='utf8') as f:
    ctx = execjs.compile(f.read())

response = requests.get('https://xyq.cbg.163.com/cgi-bin/recommend.py', headers=headers, params=params)
datas = json.loads(response.text[37:-1])
print(datas)
for data in datas['equips']:
    print(data['equip_name'],ctx.call('dec_data',data['desc']),ctx.call('dec_data',data['other_info']))

在这里插入图片描述