with one click
js-reverse-analyzer
通用的 JavaScript 逆向分析工具,用于分析网站的加密和签名算法,生成详细的逆向报告和 Python 实现代码
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
通用的 JavaScript 逆向分析工具,用于分析网站的加密和签名算法,生成详细的逆向报告和 Python 实现代码
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | JS Reverse Analyzer |
| description | 通用的 JavaScript 逆向分析工具,用于分析网站的加密和签名算法,生成详细的逆向报告和 Python 实现代码 |
| version | 1.0.0 |
| author | AI Assistant |
| tags | ["reverse-engineering","javascript","web-scraping","security"] |
这是一个通用的 JavaScript 逆向分析工具,能够帮助分析目标网站的加密算法、签名机制和反爬策略。该工具会:
本 Skill 提供完整的 JS 逆向分析流程,引导 AI 进行系统化的分析。
主要使用方式:
本 Skill 配备了 13个 MCP 辅助工具,用于突破技术限制。
何时考虑使用 MCP 工具:
bypass_challenge 工具绕过deobfuscate_code 工具反混淆analyze_with_browser 工具detect_protection 工具检测重要提示:
当用户请求分析某个网站的 JS 逆向算法时:
请分析 [网站URL] 的 JS 加密算法
按照以下步骤进行分析:
使用 read_url_content 工具获取目标页面的 HTML:
read_url_content(目标URL)
从 HTML 中识别加载的 JS 文件列表。
💡 MCP 工具提示:如果 JS 文件高度混淆难以阅读,使用
deobfuscate_code工具先反混淆!
下载并分析识别到的关键 JS 文件:
重点查找以下关键字:
sign, signature, encrypt, decryptmd5, sha, aes, rsa, crctimestamp, nonce, tokenheaders, request, axios, fetch从 JS 代码中提取核心算法:
常见算法类型:
提取要点:
axios.post, fetch)创建结构化的逆向分析报告,包含以下章节:
# [网站名称] JS 逆向分析报告
## 1. 目标网站信息
- URL、网站名称、分析时间
## 2. 关键 JS 文件识别
- 主要 JS 文件列表
- 第三方库依赖
## 3. 请求签名算法分析
- 核心代码片段
- 算法步骤说明
- 参数构造方式
## 4. 算法实现细节
- 具体算法的代码实现
- 关键常量和变量
## 5. Python 逆向实现
- 完整的 Python 代码
- 使用示例
## 6. 关键要点
- API 域名
- 签名特点
- 注意事项
## 7. 验证方法
- 浏览器调试步骤
- 验证方式
## 8. 可能的反爬措施
- User-Agent 检测
- Cookie 验证
- 频率限制
- IP 限制
## 9. 总结
提供完整的 Python 逆向代码,必须包含:
Python 代码模板:
import json
import time
import hashlib
import requests
def custom_algorithm(data):
"""自定义算法实现"""
# TODO: 实现具体算法
pass
def generate_signature(params, timestamp):
"""生成签名"""
# 1. 参数处理
# 2. 拼接字符串
# 3. 计算签名
pass
def make_request(url, params):
"""发送请求"""
# 1. 生成时间戳
# 2. 生成签名
# 3. 构造请求头
# 4. 发送请求
pass
# 使用示例
if __name__ == '__main__':
result = make_request(api_url, params)
print(json.dumps(result, indent=2, ensure_ascii=False))
特征:
识别方法:
// 查找 md5、MD5、hash 等关键字
md5(data)
crypto.MD5(data)
Python 实现:
import hashlib
def md5_sign(data):
return hashlib.md5(data.encode('utf-8')).hexdigest()
特征:
识别方法:
// 查找 AES、encrypt 等关键字
CryptoJS.AES.encrypt(data, key)
Python 实现:
from Crypto.Cipher import AES
import base64
def aes_encrypt(data, key, iv):
cipher = AES.new(key.encode(), AES.MODE_CBC, iv.encode())
# 加密逻辑
特征:
识别方法:
// 查找 RSA、publicKey 等关键字
encrypt.setPublicKey(publicKey)
encrypt.encrypt(data)
Python 实现:
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_v1_5
import base64
def rsa_encrypt(data, public_key):
# RSA 加密逻辑
特征:
识别方法:
// 查找 crc、CRC32 等关键字
// 特征常量:0xEDB88320 或 3988292384
Python 实现:
def crc32(data):
crc = 0xFFFFFFFF
# CRC32 算法
return crc & 0xFFFFFFFF
识别方法:
在报告中必须包含:
分析完成后,生成以下文件:
按照本 Skill 的步骤 1-5 进行分析是主要方式。在分析过程中需要注意:
read_url_content 获取页面内容deobfuscate_code 工具辅助bypass_challenge 工具analyze_with_browser 工具参考之前为 vbdata.cn 生成的分析报告:
用户输入:
分析 https://example.com/api 的 JS 逆向算法
AI 执行流程:
read_url_content 获取页面最终输出: