跳到主要内容

快速入门

HeartbeatSocks 是一个基于 .NET 的 Windows 桌面应用,提供 SOCKS5 代理服务,具备数据包分析、伪心跳替换和智能采集功能。

系统架构

┌─────────────────────────────────────────────────────────────────────────────┐
│ HeartbeatSocks 系统架构 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────┐ ┌─────────────────────────────────────────────────────┐ │
│ │ 游戏客户端 │────▶│ 采集代理 (:1080) │ │
│ └──────────┘ │ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │ │
│ │ │ │ 包头过滤 │─▶│ 签名匹配 │─▶│ GameID/地址过滤 │ │ │
│ │ │ └──────────┘ └──────────┘ └────────┬─────────┘ │ │
│ │ └───────────────────────────────────────│─────────────┘ │
│ │ │ │
│ │ ▼ │
│ │ ┌────────────────┐ │
│ │ │ 数据池 │ │
│ │ │ ┌──────────┐ │ │
│ │ │ │ 全局池 │ │ │
│ │ │ ├──────────┤ │ │
│ │ │ │ 账号池 A │ │ │
│ │ │ ├──────────┤ │ │
│ │ │ │ 账号池 B │ │ │
│ │ │ └──────────┘ │ │
│ │ │ SQLite 持久化 │ │
│ │ └───────┬────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ 心跳模拟代理 (:1088) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │ │
│ │ │ SNI 过滤 │─▶│ 包过滤 │─▶│ 心跳匹配 │─▶│ 数据替换 + 选择 │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ └────────┬─────────┘ │ │
│ │ │ │ │
│ │ ┌──────────────────────────────────────────────────┐│ │ │
│ │ │ 流量塑形引擎 ││ │ │
│ │ │ 时序抖动 │ 包大小填充 │ CV监测 │ 自适应调整 ││ │ │
│ │ └──────────────────────────────────────────────────┘│ │ │
│ └──────────────────────────────────────────────────────│─────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────┐ │
│ │ 目标服务器 / 二级代理 │ │
│ └──────────────────────────┘ │
│ │
│ ┌───────────────────┐ │
│ │ 远程管理 API │ HTTP Basic Auth + IP 白名单 │
│ │ REST (:8080) │ 账号管理 / 数据池查询 / 用户信息 │
│ └───────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

核心概念

伪心跳

伪心跳是指用真实玩家的心跳数据包替换用户自身的心跳数据包,使目标服务器无法区分真实玩家和代理用户。

数据池

数据池存储通过采集代理收集的真实心跳数据。替换时从数据池中按策略选择合适的数据,支持按 GameID 长度、包类型、新鲜度等多维度智能匹配。

流量塑形

通过时序抖动、包大小填充等技术,使网络流量特征接近真实玩家,规避反作弊系统的统计分析检测。

双代理架构

HeartbeatSocks 运行两个独立的代理服务:

代理默认端口功能
采集代理1080纯数据采集,透传数据包并记录到数据池
心跳模拟代理1088从数据池选择数据替换用户心跳包

数据处理流程

                    ┌─── 采集模式 ───┐          ┌─── 替换模式 ───┐
│ │ │ │
客户端 ──▶ SOCKS5 代理 ──▶ 包分析 │ 客户端 ──▶ SOCKS5 代理 │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ 质量检查 │ │ 特征匹配 │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ 去重入池 ◀──┤──────────┤──▶ 池中选择 │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ 透传转发 │ │ 替换 + 转发 │
│ │ │ │ │ │
└────────┼───────┘ └────────┼───────┘
▼ ▼
目标服务器 目标服务器

30 秒上手

  1. 安装并激活许可证 — 首次启动输入激活码完成激活
  2. 启动采集代理 — 在「数据采集」页面点击启动,将游戏客户端代理指向采集端口
  3. 积累数据 — 等待数据池收集到足够的心跳数据(建议 50 条以上)
  4. 启动心跳模拟 — 在「心跳模拟」页面配置心跳特征后启动
  5. 切换代理 — 将游戏客户端代理切换到心跳模拟端口
提示

建议先在采集模式下运行一段时间积累数据,再切换到心跳模拟模式。数据池中的数据越丰富,替换效果越自然。

功能模块总览

┌─────────────────────────────────────────────────────────────────┐
│ HeartbeatSocks 功能页面 │
├───────────────┬───────────────┬───────────────┬─────────────────┤
│ 数据采集 │ 数据仓库 │ 心跳模拟 │ 流量塑形 │
│ ・包头过滤 │ ・分页查看 │ ・基础配置 │ ・时序抖动 │
│ ・签名匹配 │ ・自动管理 │ ・心跳特征 │ ・包大小填充 │
│ ・地址过滤 │ ・导入导出 │ ・二级代理 │ ・CV 监测 │
│ ・GameID过滤 │ ・账号隔离 │ ・SNI 过滤 │ ・自适应调整 │
│ ・游戏类型 │ ・智能清理 │ ・包过滤 │ ・微差异扰动 │
│ │ │ ・包替换 │ │
├───────────────┼───────────────┼───────────────┼─────────────────┤
│ 账号管理 │ 运行日志 │ 授权管理 │ 系统配置 │
│ ・多账号管理 │ ・分类查看 │ ・硬件指纹 │ ・远程管理 API │
│ ・过期管理 │ ・错误过滤 │ ・多种授权 │ ・Basic Auth │
│ ・数据池隔离 │ ・磁盘管理 │ ・在线激活 │ ・IP 白名单 │
└───────────────┴───────────────┴───────────────┴─────────────────┘