LOGO 首页 OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 技术文档 其他文档  
 
网站管理员

软件逆向破解新手借助AI自动逆向软件注册码

admin
2026年9月22日 16:36 本文热度 37

免责声明

本文档所有内容仅供安全研究、学术交流与技术学习使用,严禁用于任何未经授权的逆向破解、网络攻击、隐私窃取、恶意软件开发。使用者应确保已获得目标软件权利人的合法授权并自行承担因使用本文档内容所产生的一切法律责任与后果,作者不对任何直接或间接损害承担任何责任,继续阅读即视为您已知悉并同意上述全部条款。


前面文章中也演示过用AI实现软件逆向,但还有很多新手朋友不会搭建MCP或安装过程出现问题的,另外网上还有不少在收费搭建环境的。

本篇继续讲解下MCP的搭建,并一起学习用AI辅助逆向的学习。

MCP环境搭建:

1、去X64DBG官网下载他们的调试器(snapshot_2026-05-27_12-11

2、打开github搜索X64DBG MCP,这里有很多的插件,我们选择这个https://github.com/SetsunaYukiOvO/x64dbg-mcp​,把编译好插件文件放到X64DBG调试器目录里。 插件安装使用也有详细说明。

现已同时支持 x64 和 x86 架构!

功能特性

  • 完整 MCP 规范支持:实现 MCP 三大核心构件

    • Tools(79)

      :可由 AI 调用的调试函数
    • Resources(7 + 8 模板)

      :由应用控制的上下文数据源
    • Prompts(10)

      :用户引导的调试工作流模板
  • JSON-RPC 2.0 协议:标准、语言无关的接口

  • Streamable HTTP 传输(MCP 2025-03-26 规范)端点 /mcp,并保留旧版 HTTP+SSE 端点 /sse 兼容老客户端

  • Tools - AI 可控调试(79 个函数)

    • 执行控制(init/run/pause/step/run_to/restart/stop)

    • 内存读/写/搜索/分配

    • 寄存器访问(50+ 寄存器,含 GPR、SSE、AVX)

    • 断点管理(软件断点、硬件断点、内存断点、条件断点、日志断点)

    • 反汇编与符号解析

    • 线程管理(列出、切换、挂起、恢复)

    • 调用栈追踪与分析

    • Dump 与分析

      (模块 dump、内存 dump、加壳检测、OEP 检测)
    • 脚本执行

      (执行 x64dbg/x32dbg 命令、批量操作)
    • 上下文快照

      (捕获并比较调试状态)
  • Resources - 上下文提供器(7 个直接资源 + 8 个模板)

    • 直接资源:调试器状态、寄存器、模块、线程、内存映射、断点、栈

    • 资源模板:内存内容、反汇编、模块信息、符号解析、函数分析

    • 只读、由应用控制的访问方式

  • Prompts - 工作流模板(10 个提示)

    • 崩溃分析、漏洞挖掘、函数追踪

    • 二进制脱壳、算法逆向、执行对比

    • 字符串狩猎、代码补丁、API 监控

    • 调试会话初始化

  • 安全性:基于权限的访问控制

  • 可扩展性:支持自定义方法、资源与提示的插件架构

安装

  1. 将编译好的插件复制到对应调试器目录:

# x64dbg(64 位)# 将 <x64dbg-path> 替换为你的实际安装目录copy dist\x64dbg_mcp.dp64 <x64dbg-path>\x64\plugins\# x32dbg(32 位)copy dist\x32dbg_mcp.dp32 <x64dbg-path>\x32\plugins\# 示例(安装在 C:\x64dbg):# copy dist\x64dbg_mcp.dp64 C:\x64dbg\x64\plugins\# copy dist\x32dbg_mcp.dp32 C:\x64dbg\x32\plugins\
  1. (可选)复制配置文件:
# x64dbgmkdir <x64dbg-path>\x64\plugins\x64dbg-mcp copy config.json <x64dbg-path>\x64\plugins\x64dbg-mcp\# x32dbgmkdir <x64dbg-path>\x32\plugins\x32dbg-mcp copy config.json <x64dbg-path>\x32\plugins\x32dbg-mcp\
  1. 重启 x64dbg/x32dbg 以加载插件

使用方法

启动服务器

  1. 64 位目标打开 x64dbg,32 位目标打开 x32dbg

  2. 进入 Plugins -> MCP Server -> Start MCP HTTP Server

  3. 服务器会在配置端口启动(默认:3000)

  4. 访问 http://127.0.0.1:3000

VS Code 集成

在 VS Code 设置或 MCP 客户端配置中添加:

{  "mcpServers": {    "x64dbg": {      "type""http",      "url""http://127.0.0.1:3000/mcp"     }   } }

旧版 HTTP+SSE 客户端(注意是 /sse 路径,不是根路径):

{  "mcpServers": {    "x64dbg": {      "type""sse",      "url""http://127.0.0.1:3000/sse"     }   } }

客户端我们以TraeCode,在官网下载后。直接安装即可。

安装完毕后,注册一个用户。在设置里点击MCP,开始配置。
添加配置参数,确认。
配置完成后,我们还要选择创建智能体,选择刚创建的MCP 服务
设置完毕后,点击创建,完成。
创建任务,选择我们创建好的智能体,开始逆向分析。
AI自动逆向
  环境搭建好了,现在就来测试下当前的AI逆向有多强大吧。
我们在对话框输入“用x32dbg调试程序 D:\160实例\Afkayas.1\Afkayas.1.Exe
可以看到它就开始自动工作了。到这里我们就可以直接输入文字或命令,AI就开始自动逆向分析了。
例如F9运行程序后,找到出现注册码的位置。
输入假的注册码和用户名,根据错误提示字符找到关键位置开始分析时。
这里的EAX出现了一个数值。这个数值就是注册码的一部分。我们之间问AI这个数值如何的来的。
AI还真给你找出了关键位置。还把算法都整理了出来。
### 算法公式12
`edi = len(TextBox2.Text) × 97531 + Asc(TextBox1.Text[0])字符串 = __vbaStrI4(edi)  ; 整数 → 字符串`
其中:
- `len(TextBox2.Text)` 由`__vbaLenBstr` (IAT[0x4040E4]) 在 0x402415 处计算- `0x17CFB` = 十进制 97531 (关键魔数)- `Asc(TextBox1.Text[0])` 由`rtcAnsiValueBstr` (IAT[0x4040F8],MSVBVM50 ordinal 0x204=516) 在 0x40242D 处计算- `__vbaStrI4` (IAT[0x4040E0]) 在 0x40243F 把整数转成十进制字符串### 反推用户输入585291 = 6 × 97531 + 105
- 6 × 97531 = 585186- 585291 − 585186 = 105 = ASCII('`i` ')所以:
- `TextBox2.Text` 长度 = 6 (用户在第二个文本框输入了 6 个字符)- `TextBox1.Text[0]` = 'i' (用户在第一个文本框输入了以 'i' 开头的用户名)### 后续流程1. 0x40244A`call __vbaStrMove` 把 "585291" 存到`[ebp-0x20]`2. 0x402458`call [ebx+0xA4]` COM 调用,把 "585291" 显示到 Label3.Caption("KeyGen It Now" 提示)3. 0x4024F4 读取 TextBox3.Text(用户输入的验证码)4. 0x402523`__vbaStrCat` 拼接`TextBox3.Text + "A.K.A.-" + TextBox1.Text`5. 0x402530`__vbaStrMove` 把拼接结果存入`[ebp-0x20]` ,返回旧值 "585291"6. 0x402533`call __vbaStrCmp` 比较字符串7. 0x40258B`jz 0x4025E5` 根据比较结果跳转到 "You Get It" 或 "You Get Wrong Try Again" 分支### 关键字符串与 IAT 映射地址 字符串/函数 `0x401B70` `"A.K.A.-"` `0x401B80` `"You Get It"` `0x401BA0` `"KeyGen It Now"` `0x401BC8` `"You Get Wrong Try Again"` IAT[0x4040E0] `__vbaStrI4` IAT[0x4040E4] `__vbaLenBstr` IAT[0x4040F8] `rtcAnsiValueBstr` (ordinal 516) IAT[0x404100] `__vbaStrCat` IAT[0x404128] `__vbaStrCmp`
总结 :内存数值`585291` 是程序通过公式`len(TextBox2) × 97531 + Asc(TextBox1[0])` 计算得出的整数结果(用户输入用户名首字符为 'i'、第二文本框输入 6 字符),再由`__vbaStrI4` 把整数`585291` 转换成 ASCII 字符串`"585291"` 后存入内存`[ebp-0x20]` 。
不得不佩服,放到以前这样一个程序,手工分析怎么也得好几小时。现在AI直接几分钟的时间就把注册机算法都给了你。整个过程你就需要打几个字就完成了。

阅读原文:点击这里


该文章在 2026/9/22 16:45:12 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved  粤ICP备13012886号-1  粤公网安备44030602007207号