跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
JavaScriptAI算法

TK X-Gnarly:基于 AI 辅助的 JSVMP 纯算还原方案

综述由AI生成针对 X-Gnarly 设备指纹检测的 JSVMP 逆向还原方案。通过分析 Webmssdk.js 文件,采用日志挂钩结合大模型推理的策略,识别出魔改 ChaCha 算法及混淆逻辑。该方法避免了硬啃 VMP 指令的低效问题,成功从日志中还原出原始 JS 代码,为类似混淆场景提供了新的技术路径。

怪力乱神发布于 2026/4/6更新于 2026/5/2331 浏览
TK X-Gnarly:基于 AI 辅助的 JSVMP 纯算还原方案

TK X-Gnarly:基于 AI 辅助的 JSVMP 纯算还原方案

前言:攻防背景与环境
  • 目标参数:X-Gnarly (设备指纹/环境检测)。
  • 分析版本:
    • Webmssdk 版本:2.0.0.447
    • 内部版本:5.1.3
    • 文件地址:webmssdk.js
  • 难点痛点:
    • JSVMP 虚拟机保护(几百个解释器函数,堆栈晦涩)。
    • 高频的混淆与复杂的控制流扁平化。
    • AST 没有实战水平,日志量大很难理清思路。
第一部分:逆向工程方法论
  • 核心思路:不硬啃 VMP 指令,采用日志挂钩(Logging)+ 结果倒推(Backtracking)策略。
  • 新颖手段:利用大模型(Cursor/ChatGPT)进行算法特征识别。
第二部分:X-Gnarly 逆向实战
2.1 定位与插桩
  • 寻找入口:通过搜索字符串 X-Gnarly 快速定位 n.u.o[971]。
  • 跟栈进行插桩:
    • Prompt 调优与人工兜底 面对几十个插桩点,AI 生成插桩日志,导致 VMP 执行流崩溃。这可能是 Prompt 约束不够严格所致。最终的解决方案是人工手写效率太低,全 AI 生成风险太高。

      面对 JSVMP 的复杂混淆,硬啃 AST 效率极低。本文提出一种新思路:利用日志插桩提取原始表达式,借助 AI 的推理引擎进行逻辑重组。

      在这里插入图片描述

      标准的 JSVMP 格式,单步调试,找 apply、call 和运算进行插桩

      在这里插入图片描述

2.2 日志分析 - 倒推分析法(由果索因)
  1. 324 位字符串生成逻辑: 乱码观察拼接结构:K + 193 位乱码 - 上 + 48 乱码 + 193 乱码 - 下。 乱码通过 Base64 自定义码表 (u09tbS3UvgDEe6r-ZVMXzLpsAohTn7mdINQlW412GqBjfYiyk8JORCF5/xKHwacP=) 生成 324 位字符串。 将日志全盘喂给 AI 可以直接生成 代码。

js

在这里插入图片描述

在这里插入图片描述

  • 第二层 193 位乱码分析:

    • 193 位乱码由 16 位数组 + 轮询次数 + 193 位数组 通过计算生成。
    • 通过日志观察 48 位乱码、12 位数组 和 轮询次数是日志输出很接近。将日志喂给 AI,直接生成代码。
    • 将日志投喂给 AI,识别出 ChaCha 算法特征,魔改的 chacha 算法。

    在这里插入图片描述

  • 第一层 193 位乱码分析:

    • 16 位对象根据 key 的打乱的顺序推断,这里存在打乱算法,把日志喂给 AI,同上。
  • 16 位的对象生成:

    • 同上,日志喂给 AI,输出 JS 代码。

    在这里插入图片描述

    观察日志是由 193 位乱码是由一个 16 位的对象生成

    在这里插入图片描述

  • 结语
    • 总结:JSVMP 逆向从'人肉硬跟'转变为'日志分析+AI 识别'的趋势。
    • 声明:技术研究用途,请勿用于非法业务。

    目录

    1. TK X-Gnarly:基于 AI 辅助的 JSVMP 纯算还原方案
    2. 前言:攻防背景与环境
    3. 第一部分:逆向工程方法论
    4. 第二部分:X-Gnarly 逆向实战
    5. 2.1 定位与插桩
    6. 2.2 日志分析 - 倒推分析法(由果索因)
    7. 结语
    • 💰 8折买阿里云服务器限时8折了解详情
    • Magick API 一键接入全球大模型注册送1000万token查看
    • 🤖 一键搭建Deepseek满血版了解详情
    • 一键打造专属AI 智能体了解详情
    极客日志微信公众号二维码

    微信扫一扫,关注极客日志

    微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

    更多推荐文章

    查看全部
    • 贪心算法专题:最大子段和与纪念品分组
    • ThinkPHP 和 Laravel 框架的基于 Web 的在线考试答题游戏设计与实现
    • 字节跳动音视频前端一面面经与性能优化深度解析
    • AI 产品经理进阶路线图:产业链、分类与核心能力提升
    • C++ 递归实战:合并两个有序链表与反转链表
    • Python 教学方案管理系统设计与实现
    • Edge 边栏 Copilot 图标消失的修复方案
    • 基于 Python 的旅行数据可视化与分析系统
    • C++ 递归算法实战:汉诺塔问题详解
    • Java 集合框架核心接口与类层次结构详解
    • JavaScript 核心概念与机制速通
    • Linux 管道通信实战:匿名进程池与命名管道服务端模型
    • Web Worker:前端后台线程与性能优化
    • 攻防世界 Web 挑战题解:反序列化、RCE 与文件包含实战
    • 计算机视觉基础与实战开发指南
    • C++ 控制流详解:从基础语法到高级应用实践
    • 大模型领域 13 篇必读前沿论文精选
    • CTF Web 安全实战:PHP 反序列化与文件包含漏洞解析
    • AcWing 1152 格雷码:递归与位运算解析
    • Python 网络爬虫技术基础与实战指南

    相关免费在线工具

    • 加密/解密文本

      使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

    • RSA密钥对生成器

      生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

    • Mermaid 预览与可视化编辑

      基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

    • 随机西班牙地址生成器

      随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

    • Gemini 图片去水印

      基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

    • Keycode 信息

      查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online