AI 驱动 EvilTokens 设备码钓鱼产业化攻击机理与多层防御实践研究

简介: 本文剖析2026年EvilTokens产业化AI钓鱼攻击:利用OAuth设备码协议绕过MFA,依托生成式AI定制诱饵、合法云平台(Railway/BL)隐匿流量,导致344家企业失陷。提出五层防御体系,含协议管控、条件访问、IP阻断、日志审计与人员运营,并提供两套Python检测代码及落地脚本。(239字)

摘要

传统多因素认证(MFA)长期被视作企业云身份安全核心防护手段,但 2026 年爆发的 EvilTokens 商业化钓鱼即服务(PhaaS)平台彻底打破该防护体系的安全边界。安全厂商 Huntress 监测数据显示,2025 年 7—12 月至 2026 年 1—4 月,设备代码钓鱼攻击总量增幅达 1380%,单轮攻击覆盖 344 家企业机构,依托生成式 AI 实现全目标独立定制化钓鱼诱饵,不存在两份重复诱导文本。该平台全程复用微软原生 OAuth 设备授权协议,无仿冒登录页面、无恶意程序、无风险附件,仅依靠 Railway、BL Networks 等合法云基础设施分发攻击流量,甚至借助思科、趋势科技、Mimecast 可信厂商重定向链接绕过邮件过滤系统,受害者在完整完成 MFA 验证后仍会向攻击者移交长期访问令牌。EvilTokens 通过 Telegram 渠道公开售卖分级订阅服务,最低 600 美元即可获取全套 AI 钓鱼能力,大幅降低高级身份劫持攻击的技术门槛。本文结合 IT Security Guru 专项报道与 Huntress 原始威胁报告,系统拆解 EvilTokens 产业化运营模式、全链路 AI 赋能机制、合法云基础设施滥用逻辑、后续商业邮件劫持(BEC)链式攻击流程;基于 Python 构建邮件 AI 诱饵语义识别、Entra ID 审计日志恶意设备授权双重自动化检测代码;反网络钓鱼技术专家芦笛指出,AI 赋能协议滥用型钓鱼标志网络黑产完成标准化商业化转型,安全防御重心必须从邮件边界静态特征过滤转向云身份全生命周期动态管控。文章从协议权限约束、条件访问策略、流量 IP 阻断、日志自动化审计、人员安全运营五个维度构建闭环防御体系,配套可落地运维脚本与检查清单,为部署 Microsoft 365 云办公体系的政企单位提供完整对抗方案,弥补现有安全体系对合规协议滥用类 AI 钓鱼的防护短板。

关键词:AI 钓鱼;EvilTokens;设备代码钓鱼;PhaaS;OAuth 2.0;BEC 攻击;云身份防护;MFA 失效风险

image.png 1 引言

1.1 研究背景

多因素认证(MFA)自普及以来,被全球政企视为抵御账号密码窃取钓鱼攻击的核心防线,行业普遍认为开启完整 MFA 防护即可阻断绝大多数凭证窃取类网络入侵。但 2026 年上半年出现的 EvilTokens 攻击浪潮推翻了这一固有安全认知:攻击者无需破解账号密码、无需绕过 MFA 验证流程,而是诱导用户在微软官方认证页面主动完成全部身份核验,依托标准 OAuth 设备码授权流程直接劫持长期有效访问令牌,即便企业全员启用短信、验证器类 MFA,账户仍会被完全接管。

2026 年 6 月 24 日 IT Security Guru 发布专项跟踪报道,完整披露 Huntress 安全团队对 EvilTokens 平台的全维度监测结果。数据显示设备代码钓鱼攻击在半年周期内暴涨 1380%,攻击载体不再是传统批量重复的钓鱼模板,而是由生成式 AI 针对每一名目标员工岗位、业务场景独立生成专属诱导邮件;攻击基础设施全部选用合规商用云平台 Railway、BL Networks、Cloudflare Workers,依托服务商优质 IP 信誉规避威胁情报标记,57.5% 的监测攻击流量均来自两类平台。EvilTokens 以标准化商业产品模式在 Telegram 社群运营,划分三档付费订阅套餐,最低 600 美元即可采购 AI 钓鱼投递能力,普通网络犯罪从业者无需掌握 OAuth 协议、大模型开发、服务器运维技术,就能规模化发起针对企业 Microsoft 365 租户的高级身份劫持攻击。

相较于早年零散、手动化的定向钓鱼,EvilTokens 具备三大颠覆性特征:全链路 AI 自动化赋能、合法云基础设施隐匿流量、标准化付费 PhaaS 降低攻击门槛,三类特征叠加使得传统邮件网关、网页黑名单、终端杀毒、基础 MFA 防护全部失效。当前国内多数政企 IT 与安全团队的防护策略仍基于传统钓鱼攻击逻辑搭建,未针对协议滥用、AI 个性化诱饵、可信云基础设施恶意流量建立专项管控手段,大量 Microsoft 365 租户存在系统性安全漏洞,一旦遭遇 EvilTokens 同类攻击极易引发商业邮件劫持(BEC)、核心财务数据泄露、大额资金欺诈等重大安全事件。

1.2 研究问题与研究目的

现有网络安全领域相关研究多聚焦仿站钓鱼、中间人钓鱼、恶意附件木马等传统攻击形态,针对 2026 年新出现的 EvilTokens 产业化 AI 设备码钓鱼,缺少完整的运营模式拆解、全链路 AI 赋能分析、基础设施溯源、自动化检测工程实现与分层落地防御方案,待解决核心研究问题分为四项:

第一,EvilTokens 作为商业化 PhaaS 平台,如何通过分级订阅、Telegram 社群运营实现黑产标准化盈利,AI 在诱饵生成、入侵后分析、BEC 链式攻击规划全流程的具体赋能机制;

第二,设备代码钓鱼依托微软原生 OAuth 协议实现 MFA 失效的底层原理,Railway、BL Networks、Cloudflare Workers 等合法云平台被恶意利用的流量隐匿逻辑,可信厂商重定向链接绕过邮件过滤的技术路径;

第三,如何基于文本语义特征、云审计日志行为特征开发可直接部署的自动化检测代码,实现 EvilTokens 攻击事前拦截、事后溯源;

第四,面向政企单位搭建覆盖协议、身份、流量、日志、人员五层的闭环防御体系,形成可落地、可校验的安全加固操作规范。

基于上述问题,本文设定四层研究目标:

(1)依托 IT Security Guru 报道与 Huntress 原始监测数据,完整还原 EvilTokens 商业运营模式、三档付费产品功能、全链路 AI 攻击流程,量化设备码钓鱼攻击增长规模与受害企业分布特征;

(2)拆解 OAuth 设备授权协议原生设计缺陷,梳理合法云基础设施、可信跳转链接两类隐匿手段的技术细节,还原从诱饵投递到 BEC 资金欺诈的完整链式攻击场景;

(3)设计并实现两套 Python 自动化检测程序,分别完成 AI 钓鱼邮件实时识别、Entra ID 异常设备授权日志批量筛查,提供无第三方复杂依赖、适配企业 SIEM 与邮件网关的工程代码;

(4)结合微软官方连续访问评估(Continuous Access Evaluation)、条件访问策略、IP 阻断机制,构建五层协同防御体系,配套运维脚本与标准化检查清单,形成完整的政企安全加固落地指南。

1.3 研究数据与边界说明

本文研究对象限定 EvilTokens 平台发起、针对 Microsoft 365 租户的 AI 驱动设备代码钓鱼及衍生 BEC 攻击,不拓展数字货币钓鱼、供应链攻击、移动端恶意 APP 钓鱼等无关威胁;技术分析边界锁定 OAuth 2.0 RFC 8628 设备授权协议、Entra ID 身份管控、企业邮件安全过滤、无服务器云基础设施、Microsoft Graph 审计日志五大技术域。

研究核心数据来源为 2026 年 6 月 24 日 IT Security Guru 专题报道,配套 Huntress 官方 EvilTokens 威胁报告监测遥测数据,包含 2025 年 7 月至 2026 年 4 月跨 344 家受害机构攻击样本、Railway 与 BL Networks 流量占比、平台订阅定价、AI 全链路功能说明;辅助参考微软 Entra ID 令牌安全、连续访问评估官方技术文档、云服务商无服务器平台安全管控规范。

1.4 论文整体结构安排

全文共设六大核心章节:第一章为引言,阐述研究背景、核心问题、研究边界与全文框架;第二章界定基础概念,对比传统钓鱼与 EvilTokens AI 设备码钓鱼的核心差异,梳理攻击产业化、AI 赋能、合法基础设施滥用三大核心威胁特征;第三章系统剖析 EvilTokens 商业化运营模式、全链路 AI 攻击流程、底层云基础设施隐匿机制、完整 BEC 链式入侵场景;第四章设计并实现双层自动化检测 Python 代码,分别用于邮件诱饵前置过滤、云身份审计日志异常行为识别,说明代码部署与集成方式;第五章搭建五层全域闭环防御体系,包含协议管控、条件访问、流量 IP 阻断、日志自动化审计、人员安全运营,配套运维 PowerShell 脚本与落地检查清单;第六章为结论与研究展望,总结全文核心研究结论,客观说明研究局限,提出后续 AI 协议滥用钓鱼对抗技术的拓展研究方向。

2 基础概念界定与攻击形态差异化对比

2.1 核心概念定义

2.1.1 钓鱼即服务(PhaaS)产业化平台

钓鱼即服务是网络黑产工业化成熟后的标准化商业模式,运营方搭建集成全套攻击能力的云平台,通过暗网、Telegram 等加密社群以订阅制对外售卖,攻击者仅需支付费用即可获取完整攻击工具、投递渠道、凭证捕获后台,无需具备编程、服务器运维、域名搭建、协议开发等专业技术。EvilTokens 是 2026 年面向 Microsoft 365 生态推出的高端 PhaaS 平台,区别于传统低端仿站钓鱼工具,深度集成生成式 AI,主打设备码令牌劫持与后续 BEC 资金欺诈全流程能力,具备完整商业化运营体系、分级定价、7×24 黑产客服、演示宣传素材。

2.1.2 OAuth 2.0 设备代码钓鱼(Device Code Phishing)

设备代码钓鱼依托 RFC 8628 标准设备授权流程,该协议最初面向无完整输入设备(智能电视、打印机、云终端)设计,允许客户端向微软身份服务器申请专属用户验证码,引导用户在浏览器访问官方验证页面完成授权。攻击者以恶意客户端身份调用接口获取合法验证码,通过社会工程学诱导受害者访问microsoftonline.com原生页面输入验证码、完成账号密码与 MFA 验证;由于授权流程由攻击者侧发起,服务器下发的 access_token 与 refresh_token 令牌会同步推送至攻击者后台,全程无伪造页面、无恶意文件,传统边界防御无法识别恶意行为。Huntress 监测数据证实该类攻击半年增幅达 1380%,成为企业云身份泄露首要威胁。

2.1.3 AI 全链路赋能钓鱼攻击

传统 PhaaS 仅提供固定静态邮件模板,批量群发时文案高度同质化,极易被邮件网关关键词、重复文本规则拦截;EvilTokens 将生成式 AI 嵌入攻击全流程,覆盖诱饵生成、入侵后数据分析、BEC 场景规划三大环节:AI 基于目标员工岗位、企业业务、历史往来邮件生成独一无二的诱导文本;捕获令牌后自动读取收件箱、日历、云端文档定位高价值转账线索;自动推演后续仿冒高管、财务人员的二次钓鱼话术,实现全自动化链式攻击,大幅提升攻击隐蔽性与收益上限。

2.1.4 合法云基础设施滥用

攻击者不使用自建恶意服务器、黑名单域名,而是租用 Railway、BL Networks、Cloudflare Workers 等正规开发者云平台部署攻击服务,此类平台拥有干净 IP 信誉、可信 SSL 证书、合规 CDN 分发节点,微软风险评分系统无法标记异常流量;同时借助思科、趋势科技、Mimecast 等安全厂商合法重定向链接封装恶意跳转,规避邮件网关 URL 黑名单过滤,实现攻击流量 “隐匿于可信基础设施中”。

2.1.5 商业邮件劫持(BEC)

BEC 攻击是钓鱼后的衍生高阶欺诈手段,攻击者接管企业员工账户后,检索内部财务转账、供应商对账、付款审批邮件,仿冒企业管理层、财务负责人发送虚假付款指令,诱导财务人员执行大额资金转账,造成企业直接经济损失。EvilTokens 内置 AI 自动分析模块,可批量筛选高金额付款线索并生成配套欺诈话术,大幅降低 BEC 攻击实施难度。

2.2 传统 MFA 防护钓鱼与 EvilTokens AI 设备码钓鱼核心差异

为直观体现 EvilTokens 攻击对现有安全体系的颠覆性冲击,从攻击底层原理、恶意载体、AI 赋能程度、MFA 防护有效性、基础设施、攻击成本、后续 BEC 能力七个维度开展对比,如表 1 所示。

表 1 传统仿站钓鱼与 EvilTokens AI 设备代码钓鱼对比

表格

对比维度 传统仿站钓鱼 EvilTokens AI 设备代码钓鱼

底层实现原理 伪造域名仿冒登录页面,窃取明文账号密码 复用微软 OAuth 原生授权流程,劫持长期令牌,不获取明文凭证

MFA 防护效果 开启 MFA 可完全阻断攻击 完整 MFA 验证后仍会丢失账户权限,MFA 防护失效

诱饵文案特征 固定模板批量群发,文本重复度高,存在统一风险关键词 AI 逐一生成个性化诱饵,单批次 344 家企业无重复邮件内容

承载基础设施 自建恶意服务器、黑名单域名,IP 信誉差 Railway、BL、Cloudflare 正规云平台,IP 无风险标记

跳转链接处理 直接使用恶意 URL,易被 URL 黑名单拦截 封装于思科、趋势科技等厂商可信重定向链接内

攻击入门成本 需注册域名、搭建服务器,技术门槛高 Telegram 订阅最低 600 美元,零开发门槛,开箱即用

后续攻击能力 仅窃取单次会话凭证,无自动化后续欺诈 AI 自动分析邮件线索,批量生成 BEC 资金欺诈话术

反网络钓鱼技术专家芦笛强调,二者最核心的本质区别在于恶意行为是否运行于厂商可信服务链路:传统钓鱼的恶意载体独立于微软身份体系,可在邮件、网页边界完成拦截;EvilTokens 全部操作依托微软官方认证流程与商用合法云基础设施,边界防御完全失效,安全团队必须将检测、管控重心下沉至身份授权行为与底层流量 IP 层面。

2.3 当前政企防御体系固有结构性短板

EvilTokens 攻击能够快速规模化爆发,根源在于国内多数 Microsoft 365 租户安全防护体系存在三重不可忽视的结构性短板:

第一,防御分层逻辑固化,过度依赖邮件网关静态关键词、重复文本、恶意 URL 黑名单检测,缺少针对 AI 差异化诱导文本的语义识别能力,无法拦截无重复模板的个性化钓鱼邮件;

第二,身份管控策略粗放,未对 OAuth 设备码授权流程做精细化 IP、设备、用户范围约束,未启用连续访问评估缩短令牌失效周期,对陌生异地设备授权无实时告警;

第三,流量与基础设施监测空白,安全团队未常态化监测 Railway、BL Networks 等高危云平台 IP 访问日志,无法在攻击发起阶段阻断恶意流量,仅能在账户泄露后被动处置。

3 EvilTokens 商业化运营模式与全链路 AI 攻击实证分析

3.1 EvilTokens 黑产标准化商业运营体系

IT Security Guru 报道完整披露 EvilTokens 依托 Telegram 加密社群搭建的成熟商业运营模式,整体运营逻辑与正规 SaaS 软件高度相似,具备完整定价、产品划分、客户服务、功能更新体系,大幅降低高级身份劫持攻击的参与门槛。

3.1.1 Telegram 社群运营渠道

EvilTokens 核心推广、交易、售后渠道集中于 Telegram 公开社群,社群内持续发布产品演示视频、功能更新公告、客户成功案例、三档套餐定价明细,配备 7×24 小时在线客服,订阅者可实时咨询功能问题、申请平台操作指导,黑产运营完成标准化客户服务流程,形成稳定付费客户群体。

3.1.2 三档分级付费订阅产品

平台划分三类差异化付费套餐,功能逐级递增,适配不同犯罪从业者需求:

B2B 邮件投递套餐,定价 600 美元:基础 AI 诱饵生成、批量邮件投递能力,仅支持基础设备码验证码分发,适合小规模定向企业攻击;

SMTP 专属投递套餐,定价 1000 美元:独立 SMTP 发信通道、更高发信量、基础令牌捕获后台,支持多渠道诱饵推送;

Office 365 完整捕获套件,定价 1500 美元:全套设备码钓鱼工具、全链路 AI 分析模块、完整令牌管理面板、多角色权限后台、Cloudflare Workers 页面托管权限,支持攻击后自动化 BEC 场景规划,是针对大中型企业的主力付费产品。

3.1.3 平台后台标准化功能

所有订阅用户可访问专属可视化仪表盘,内置可自定义诱饵模板库、捕获令牌统一管理面板、多管理员角色权限控制、攻击进度实时追踪功能;攻击者无需编写任何代码,仅导入目标企业邮箱列表即可一键启动规模化攻击,平台自动完成 AI 诱饵生成、验证码分发、邮件投递、令牌捕获全流程自动化处理。

3.2 EvilTokens 全链路 AI 赋能攻击完整流程

AI 并非仅用于生成钓鱼邮件,而是贯穿诱饵投递、令牌捕获、入侵后分析、二次 BEC 欺诈全攻击链条,四大 AI 核心模块分工协同,构建自动化闭环攻击链路。

3.2.1 AI 个性化诱饵生成模块(攻击入口)

该模块是 EvilTokens 区别于传统 PhaaS 的核心差异化能力,工作流程分为两步:

第一步,目标画像解析:攻击者导入企业邮箱清单后,平台自动抓取企业公开行业信息、岗位职能标签,同时通过轻量邮件探针读取目标收件箱历史往来邮件,提取发票审批、供应商对账、薪资通知、账户安全核验、语音留言等高敏感业务场景;

第二步,独立诱饵生成:基于解析完成的用户画像为每一个邮箱生成完全独立的邮件主题、正文、落款话术,同一轮覆盖 344 家机构的攻击中不存在两份重复钓鱼文本,规避邮件网关重复文本过滤规则;同时自动添加紧急性诱导语义,制造操作紧迫感,降低用户安全警惕。

诱饵载体支持企业邮件、Teams 即时消息、日历提醒多渠道同步投放,进一步扩大攻击触达范围。

3.2.2 OAuth 设备码动态调度模块

AI 诱饵生成完成后,平台自动调用微软 OAuth 设备认证接口,为每一条独立诱饵分配唯一 user_code 验证码,自动管控验证码 15 分钟有效期;若目标长时间未点击链接完成授权,AI 调度模块自动刷新验证码,持续维持攻击有效性,同时内置接口请求频率限制,规避微软接口限流拦截,支撑上万目标同步批量发起请求。

3.2.3 入侵后 AI 自动化分析模块

当受害者完成授权、平台捕获 access_token 与长期 refresh_token 后,AI 流水线自动调用 Microsoft Graph API 读取目标账户收件箱、日历、云端 SharePoint 文档,自动检索高价值业务线索:供应商付款单据、大额转账审批邮件、企业高管往来记录、财务内部对账文件,自动标记可用于 BEC 资金欺诈的关键信息,无需攻击者人工筛查海量邮件数据。

3.2.4 AI 驱动 BEC 二次攻击规划模块

AI 基于第一步分析获取的企业内部组织架构、人员往来、付款线索,自动推演后续社会工程攻击方案:判定需要仿冒的企业高管、财务负责人身份,自动生成贴合企业业务语境的虚假付款通知邮件,支持一键批量向企业内部其他员工投递二次钓鱼,实现攻击横向扩散,最大化欺诈收益。

3.3 合法云基础设施多层隐匿攻击流量机制

EvilTokens 攻击能够长期规避安全厂商监测、微软风险识别,核心依托三层可信基础设施隐匿手段,Huntress 监测显示 57.5% 的设备码钓鱼流量均来自 Railway 与 BL Networks 两大平台。

3.3.1 Railway 开发者 PaaS 平台

作为平台主服务部署载体,Railway 提供免资质轻量化云应用托管,攻击者可快速部署 AI 诱饵生成、设备码调度、令牌捕获后台,平台分配动态轮换 IP 地址,无不良信誉标记,微软风险评分系统未标记任何关联异常;单次攻击完成后攻击者可一键销毁云实例,彻底消除溯源线索。Huntress 在客户租户中部署条件访问策略阻断 Railway 全段 IP 后,单次攻击浪潮内直接阻止 600 余起账户劫持事件。

3.3.2 BL Networks(BitLaunch)加密云主机平台

作为备用流量中继基础设施,BL Networks 支持加密货币支付租用服务器,规避实名溯源;当 Railway 节点被服务商封禁后,平台自动切换至 BL 节点分流攻击流量,保障攻击链路不中断;BL 配套全球 CDN 分发节点,单节点流量规模较低,难以触发云服务商安全告警,形成攻击流量冗余备份通道。

3.3.3 Cloudflare Workers 无服务器托管与可信厂商重定向

EvilTokens 将钓鱼中转落地页面托管于 Cloudflare Workers 正规无服务器服务,依托 Cloudflare 全球可信域名与证书规避网页黑名单;同时将恶意跳转链接封装进思科、趋势科技、Mimecast 等主流安全厂商的合法重定向接口,邮件网关仅识别跳转源为可信安全厂商域名,无法解析底层恶意目标 URL,过滤规则完全失效。

3.4 标准化六步攻击全链路与 BEC 欺诈场景还原

结合 Huntress 对 344 家受害机构完整攻击样本拆解,EvilTokens 形成标准化六步攻击链路,攻击完成后自动触发 AI 规划的 BEC 资金欺诈流程,完整场景如下:

步骤 1:攻击者付费订阅 EvilTokens 1500 美元全套 Office 365 套件,导入目标制造企业全量财务、管理层邮箱清单,AI 引擎自动解析企业上月对账、付款往来邮件,批量生成 344 份完全差异化的钓鱼诱饵;平台依托 Railway 云节点调用微软 OAuth 接口,为每一个邮箱分配独立 5–8 位设备验证码与微软官方验证链接。

步骤 2:投递模块通过企业邮件渠道投放 AI 定制诱饵,邮件主题贴合财务对账、发票核验业务场景,正文提示访问微软官方页面输入验证码解锁附件,恶意跳转链接封装于趋势科技重定向域名内,绕过邮件 URL 过滤。

步骤 3:企业财务人员收到业务通知邮件,点击链接跳转原生microsoftonline.com验证页面,页面界面、域名、数字证书均为微软官方内容,无任何伪造痕迹。

步骤 4:受害者输入邮件附带的设备验证码,跳转 Microsoft 365 登录界面,输入个人账户密码并完成微软验证器 MFA 二次核验,页面提示确认授权设备访问邮件、云文档数据,用户确认授权完成操作。

步骤 5:授权完成瞬间,EvilTokens 后台轮询接口捕获长期有效 refresh_token 刷新令牌,加密存储至平台数据库;攻击者无需获取任何用户明文凭证,仅凭令牌即可永久接管账户,即便用户后续修改账户密码,刷新令牌仍可正常访问云资源。

步骤 6:平台 AI 流水线自动读取财务人员近半年全部转账邮件,筛选三笔千万元级待付款单据,自动推演仿冒企业总经理的虚假付款通知话术,批量向出纳、财务主管发送二次钓鱼邮件,诱导执行大额资金转账;企业财务内控审批拦截转账指令后,安全团队才排查出账户异常,此时企业全部核心财务数据已泄露。

反网络钓鱼技术专家芦笛针对该典型受害场景分析指出,传统安全防护存在两处根本性失效:一是 AI 生成无重复诱饵无法被静态关键词过滤拦截;二是全链路依托微软、正规云服务商可信基础设施,边界层不存在可识别的恶意特征,防御必须下沉至身份授权与底层 IP 流量管控。

4 EvilTokens 攻击自动化检测代码模型设计与工程实现

基于 EvilTokens 攻击双层特征:邮件层 AI 诱饵语义诱导特征、云身份审计日志层恶意设备授权行为特征,本文设计两套独立可运行 Python 检测程序,无第三方重型依赖,可直接嵌入企业邮件网关预处理脚本、SIEM 安全运营平台定时任务,实现事前拦截、事后溯源双重检测能力。

4.1 邮件 AI 诱饵语义风险检测代码模型

4.1.1 检测特征与加权评分规则

提取 EvilTokens 钓鱼邮件四类核心风险特征,采用加权评分机制,总分区间 0–100 分,评分≥40 判定为高风险 EvilTokens 设备码钓鱼诱饵:

协议 URL 特征(权重 40 分):正文包含微软设备码官方验证域名login.microsoftonline.com/common/devicecode;

设备验证码特征(权重 35 分):文本匹配 5–8 位大写字母数字组合 user_code 验证码;

业务诱导场景词汇(权重 20 分):发票核验、对账文件、设备解锁、账户安全校验等场景词;

紧急施压诱导词汇(权重 5 分):立即、紧急、逾期、锁定、限时等催促类词汇。

4.1.2 完整 Python 实现代码

import re

from typing import Tuple, List


class EvilTokensMailRiskDetector:

   def __init__(self):

       # 匹配微软官方设备码验证URL正则

       self.device_code_url = re.compile(r"login\.microsoftonline\.com/common/devicecode", re.IGNORECASE)

       # 匹配5-8位大写字母数字验证码

       self.user_code_rule = re.compile(r"\b[A-Z0-9]{5,8}\b")

       # 业务诱导风险词汇库

       self.business_risk_words = ["发票核验", "对账文件", "设备解锁", "账户安全校验", "薪资通知", "语音留言"]

       # 紧急施压词汇库

       self.urgent_trigger = ["立即", "紧急", "逾期", "锁定", "限时", "失效"]


   def scan_mail_risk(self, mail_title: str, mail_body: str) -> Tuple[bool, int, List[str]]:

       """

       单封邮件EvilTokens钓鱼风险扫描主函数

       :param mail_title: 邮件主题文本

       :param mail_body: 邮件完整正文

       :return: 是否高风险、风险总分、风险判定依据列表

       """

       full_text = (mail_title + mail_body).lower()

       risk_score = 0

       risk_reason_list = []


       # 特征1:检测官方设备码URL,固定40分

       if self.device_code_url.search(full_text):

           risk_score += 40

           risk_reason_list.append("邮件包含OAuth设备码官方验证链接,高危协议特征")


       # 特征2:检测设备验证码,最高35分

       code_matches = self.user_code_rule.findall(full_text)

       if len(code_matches) > 0:

           add_score = min(len(code_matches) * 18, 35)

           risk_score += add_score

           risk_reason_list.append(f"识别到{len(code_matches)}组疑似设备授权验证码")


       # 特征3:业务诱导词汇,最高20分

       hit_biz_words = [word for word in self.business_risk_words if word in full_text]

       if hit_biz_words:

           add_score = min(len(hit_biz_words) * 7, 20)

           risk_score += add_score

           risk_reason_list.append(f"存在业务诱导词汇:{','.join(hit_biz_words)}")


       # 特征4:紧急施压词汇,最高5分

       hit_urgent = [word for word in self.urgent_trigger if word in full_text]

       if hit_urgent:

           add_score = min(len(hit_urgent) * 2, 5)

           risk_score += add_score

           risk_reason_list.append(f"存在紧急施压诱导词汇:{','.join(hit_urgent)}")


       # 判定阈值:总分≥40标记为高风险钓鱼邮件

       high_risk_flag = True if risk_score >= 40 else False

       return high_risk_flag, risk_score, risk_reason_list


# 程序调用测试示例

if __name__ == "__main__":

   detector = EvilTokensMailRiskDetector()

   # 模拟EvilTokens AI生成的财务钓鱼邮件样本

   test_subject = "【紧急】6月供应商对账发票需完成设备安全校验"

   test_content = "请访问https://login.microsoftonline.com/common/devicecode 输入验证码S9G7P2解锁对账附件,逾期账户将临时锁定,请立即完成验证操作。"

   risk_flag, score, reasons = detector.scan_mail_risk(test_subject, test_content)

   print(f"风险判定结果:{'高风险EvilTokens钓鱼邮件' if risk_flag else '正常业务邮件'}")

   print(f"综合风险评分:{score}")

   print("风险判定依据:")

   for item in reasons:

       print(f"- {item}")

4.1.3 工程落地说明

该检测类仅依赖 Python 内置 re 正则库,无需额外第三方组件,可嵌入邮件网关入站预处理脚本;检测判定为高风险的邮件可执行自动隔离、发送安全告警至运维人员;支持批量离线扫描历史邮件样本,用于入侵事件回溯复盘,适配 Windows、Linux 全类型服务器运行环境。

4.2 Microsoft Entra ID 审计日志恶意设备授权检测代码模型

EvilTokens 攻击完成后会在云身份审计日志留存明确异常痕迹:Railway/BL Networks 可疑 IP、境外陌生登录地域、无操作系统标识虚拟客户端、授权后访问 Exchange/SharePoint 高敏感资源。本代码调用 Microsoft Graph 接口批量拉取登录审计日志,自动识别恶意设备码授权行为并输出异常清单。

4.2.2 完整 Python 实现代码

import requests

import json

from typing import List, Dict


class DeviceCodeAbuseLogScanner:

   def __init__(self, graph_admin_token: str, trusted_region_list: List[str], black_ip_keywords: List[str]):

       self.graph_token = graph_admin_token

       self.trusted_countries = trusted_region_list

       self.black_ip_label = black_ip_keywords

       self.graph_signin_url = "https://graph.microsoft.com/v1.0/auditLogs/signIns"

       # 过滤设备码授权相关登录日志

       self.filter_rule = "appDisplayName eq 'Microsoft Authentication Broker' and status/errorCode eq 0"


   def get_abnormal_auth_records(self, scan_hours: int = 24) -> List[Dict]:

       """

       拉取指定时间范围内异常设备码授权日志

       :param scan_hours: 日志回溯检测时长

       :return: 异常日志完整字典列表

       """

       headers = {

           "Authorization": f"Bearer {self.graph_token}",

           "Content-Type": "application/json"

       }

       query_params = {

           "$filter": self.filter_rule,

           "$top": 200,

           "$orderby": "createdDateTime desc"

       }

       resp = requests.get(self.graph_signin_url, headers=headers, params=query_params)

       if resp.status_code != 200:

           raise ConnectionError(f"Graph API调用失败,响应状态码:{resp.status_code}")

       all_log_items = resp.json().get("value", [])

       abnormal_result = []


       for log in all_log_items:

           abnormal = False

           abnormal_desc = []

           # 判定1:登录地区不在企业可信地域列表

           login_area = log.get("location", {}).get("countryOrRegion", "")

           if login_area not in self.trusted_countries:

               abnormal = True

               abnormal_desc.append(f"登录地域{login_area}不属于企业可信区域")

           # 判定2:客户端无设备操作系统标识,虚拟恶意客户端特征

           device_os = log.get("deviceDetail", {}).get("deviceOS")

           if device_os is None or device_os.strip() == "":

               abnormal = True

               abnormal_desc.append("授权客户端无设备系统信息,疑似EvilTokens恶意程序")

           # 判定3:授权后访问邮件、云文档等高敏感资源

           target_resource = log.get("resourceDisplayName", "")

           if target_resource in ["Microsoft Exchange Online", "SharePoint Online"]:

               abnormal = True

               abnormal_desc.append("授权后访问邮件/云端文档等高敏感业务资源")

           # 判定4:登录IP关联Railway、BL Networks高危基础设施

           ip_info = log.get("ipAddress", "")

           for keyword in self.black_ip_label:

               if keyword in ip_info:

                   abnormal = True

                   abnormal_desc.append(f"登录IP关联高危云基础设施:{keyword}")


           if abnormal:

               log["abnormal_cause"] = abnormal_desc

               abnormal_result.append(log)

       return abnormal_result


# 代码调用示例

if __name__ == "__main__":

   # 管理员Graph全局审计日志读取令牌

   admin_graph_token = "填入企业Entra ID管理员授权Token"

   # 企业可信登录地域

   trusted_area = ["CN"]

   # 高危基础设施IP标识关键词

   risk_infra_keywords = ["Railway", "BL Networks"]

   scanner = DeviceCodeAbuseLogScanner(admin_graph_token, trusted_area, risk_infra_keywords)

   try:

       abnormal_list = scanner.get_abnormal_auth_records(scan_hours=24)

       print(f"本次检测共发现{len(abnormal_list)}条恶意设备码授权日志:")

       for record in abnormal_list:

           print("-" * 60)

           print(f"授权发生时间:{record['createdDateTime']}")

           print(f"受害账户:{record['userPrincipalName']}")

           print(f"登录IP地址:{record['ipAddress']}")

           print(f"异常判定原因:{record['abnormal_cause']}")

   except Exception as err:

       print(f"日志扫描任务执行失败:{str(err)}")

4.2.3 部署与运维说明

管理员需提前申请 Microsoft Graph 审计日志全局读取权限,配置企业可信地域、高危基础设施 IP 关键词;脚本可配置定时任务每 15 分钟自动执行,检测到异常授权后对接企业告警接口推送短信、邮件预警;安全运营人员可基于输出的异常账户,立即执行令牌吊销、账户风险重置操作,阻断攻击者持续访问权限。

5 面向 EvilTokens 产业化 AI 钓鱼的五层闭环防御体系

结合 Huntress 官方防御建议、IT Security Guru 披露的攻击基础设施特征、微软 Entra ID 安全规范,本文搭建协议管控、身份条件访问、流量 IP 阻断、日志自动化审计、人员安全运营五层协同防御体系,配套可直接运行的 PowerShell 运维脚本与标准化落地检查清单,全方位阻断 EvilTokens 全链路攻击。

5.1 协议层:OAuth 设备码授权流程源头管控

协议层是阻断 EvilTokens 攻击的核心源头,通过约束设备码授权流程使用范围,从底层切断攻击者生成验证码的通道,分两类管控方案适配不同安全等级企业。

5.1.1 高安全单位全局禁用设备码授权

政府、金融、涉密制造业无智能电视、IoT 打印机等外部设备登录需求,可通过 Azure AD PowerShell 全局关闭设备认证服务主体,彻底屏蔽 RFC 8628 设备授权流程,完整执行脚本如下:

powershell

# 连接Azure AD身份模块

Connect-AzureAD

# 定位微软设备认证服务主体

$deviceAuthServicePrincipal = Get-AzureADServicePrincipal -Filter "displayName eq 'Microsoft Account Authentication Broker'"

# 禁用设备码授权服务

Set-AzureADServicePrincipal -ObjectId $deviceAuthServicePrincipal.ObjectId -AccountEnabled $false

脚本执行后,所有设备码接口请求直接被微软服务器拒绝,EvilTokens 平台无法生成 user_code 验证码,攻击链路第一步直接失效。

5.1.2 普通企业精细化条件限制设备授权

存在会议室 Teams 终端、Azure CLI 运维登录需求的企业,不可全局禁用流程,需配置三层约束规则:

IP 地域约束:仅允许企业办公固定公网 IP、国内可信 IP 段发起设备码授权,境外 IP、Railway/BL Networks 云 IP 直接阻断;

设备信任约束:仅企业 MDM 托管注册终端可发起设备码流程,未托管陌生设备禁止调用授权接口;

用户权限约束:普通员工账户无设备码授权发起权限,仅 IT 运维、管理员账号开放对应权限,缩小攻击暴露面。

5.1.3 缩短令牌有效期、关闭离线刷新权限

在 Entra ID 应用权限配置中关闭 offline_access 离线刷新令牌权限,将短期访问令牌有效期由 90 分钟缩短至 15 分钟;启用微软连续访问评估(Continuous Access Evaluation),将令牌吊销生效延迟由 1 小时压缩至数分钟,即便发生授权泄露,大幅压缩攻击者可利用的时间窗口。

5.2 身份层:多层 Conditional Access 条件访问防护策略

反网络钓鱼技术专家芦笛指出,针对 EvilTokens 协议滥用攻击,必须部署四项强制条件访问策略,构建动态身份风险拦截能力:

高风险登录强制交互式防钓鱼 MFA:系统判定异地、陌生设备、高危基础设施 IP 登录时,强制用户使用 FIDO 硬件密钥、交互式验证,阻断仅验证码完成的简易授权;

令牌硬件绑定保护(Token Protection):将刷新令牌与终端设备硬件指纹强制绑定,攻击者窃取令牌后无法在自有设备复用,彻底解决令牌重播滥用;

高敏感操作二次身份校验:读取全部邮件、批量下载 SharePoint 文档、修改收件箱转发规则、创建邮件自动转发等高敏感操作,强制二次核验身份;

第三方应用管理员审批管控:普通员工无自主授权第三方应用访问云数据权限,所有高权限应用访问请求必须由 IT 管理员人工审批,杜绝 EvilTokens 恶意客户端自动获取账户权限。

5.3 流量基础设施层:高危云平台 IP 阻断机制

针对 Railway、BL Networks 两类 57.5% 攻击流量来源,建立常态化 IP 阻断机制:

批量导入 Railway、BL Networks 全段 IP 地址至条件访问阻断规则,所有来自该类 IP 的设备码授权请求直接拦截;Huntress 实测该策略单次阻止 600 余起账户劫持事件;

持续跟踪安全厂商发布的高危云平台 IP 情报,按月更新阻断 IP 段;攻击者切换 BL Networks 节点后,同步更新阻断规则避免防护失效;

邮件网关拦截封装于 Cloudflare Workers、第三方安全厂商重定向链接内的设备码验证 URL,对携带设备码关键词的跳转链接执行隔离。

5.4 日志层:自动化审计与实时告警闭环

仅依靠人工日志排查无法及时发现 EvilTokens 入侵,企业需搭建自动化日志审计链路,配套前文两套 Python 检测代码实现全流程监控:

全量日志留存:Entra ID 登录、授权、Graph API 访问日志统一同步至企业 SIEM 平台,日志留存周期不低于 180 天,用于入侵溯源复盘;

双层自动化检测部署:邮件诱饵检测脚本嵌入邮件网关前置过滤,异常设备授权日志脚本定时轮询 Graph 接口,双维度识别攻击行为;

分级告警处置流程:邮件层识别高风险诱饵推送一级实时告警,安全人员立即隔离恶意邮件;身份日志检测到 Railway/BL IP 设备授权触发紧急告警,系统自动执行批量令牌吊销操作;

入侵事后标准化处置流程:确认账户被劫持后,吊销全部刷新令牌、重置账户登录密码、清除收件箱自动转发规则、审计云端文档下载记录、对受害员工开展专项安全培训。

5.5 运营层:AI 设备码钓鱼专项人员安全运营

AI 个性化诱饵打破传统安全培训的识别逻辑,企业需要重构常态化人员安全运营体系:

新型攻击专项培训:重点讲解设备代码钓鱼核心特征 —— 微软官方域名页面、5–8 位验证码诱导授权,明确正规企业业务通知不会通过邮件要求设备解锁验证;纠正员工 “微软官方链接一定安全” 的认知误区;

月度 AI 模拟钓鱼演练:搭建轻量化 AI 诱饵生成工具,批量推送差异化模拟钓鱼邮件,统计员工点击、授权操作比例,针对财务、人事、管理层等高风险岗位强化专项培训;

简化可疑邮件上报通道:配置邮件一键上报插件,员工可一键推送可疑邮件至安全团队,对主动上报风险邮件的员工设置正向激励;

季度行业案例复盘:汇总全网 EvilTokens 同类攻击受害案例,同步至全体员工,持续更新员工风险识别认知,适配黑产 AI 攻击技术迭代。

5.6 EvilTokens 攻击防御落地标准化检查清单

为便于安全运维人员逐项落地加固措施,整理覆盖五层防护维度的可校验检查清单,如表 2 所示。

表 2 EvilTokens AI 设备码钓鱼防御落地检查清单

表格

防护层级 检查项目 达标判定标准

协议管控 设备码授权流程管控 涉密单位全局禁用;普通企业限制可信 IP / 托管设备才可发起授权

协议管控 离线刷新令牌与连续访问评估 关闭 offline_access 权限,启用连续访问评估缩短令牌吊销延迟

身份条件访问 令牌硬件绑定保护 全终端启用 Token Protection,禁止跨设备复用刷新令牌

身份条件访问 高风险登录交互式 MFA 境外、高危 IP、陌生设备登录强制硬件密钥验证

流量 IP 阻断 Railway、BL Networks IP 阻断 条件访问规则批量拦截两类高危云平台 IP 段,按月更新情报

日志审计 全量身份日志采集与留存 Entra ID 审计日志同步 SIEM,留存周期≥180 天

日志审计 双层自动化检测脚本部署 邮件诱饵、异常授权日志两套 Python 检测程序正常定时运行

人员运营 设备码钓鱼专项安全培训 每季度开展新型协议滥用钓鱼专题培训

人员运营 AI 模拟钓鱼常态化演练 每月定向推送个性化模拟诱饵,统计员工风险操作率

6 结论与研究展望

6.1 全文核心研究结论

本文依托 2026 年 6 月 IT Security Guru 专题报道与 Huntress EvilTokens 威胁监测数据,系统完成产业化 AI 设备码钓鱼攻击全维度分析,形成四项客观核心结论:

第一,EvilTokens 标志网络黑产完成标准化、商业化、AI 赋能三位一体转型,依托 Telegram 付费订阅模式大幅降低高级身份劫持攻击门槛,最低 600 美元即可获取全套攻击能力;生成式 AI 贯穿诱饵生成、入侵后数据分析、BEC 二次欺诈全链路,单轮攻击可生成 344 份无重复个性化诱饵,传统静态邮件过滤机制完全失效。2025 年末至 2026 年一季度设备代码钓鱼攻击增幅达 1380%,MFA 防护在协议滥用攻击场景下完全失效,云身份授权层已成为企业网络安全核心对抗战场。反网络钓鱼技术专家芦笛强调,该类攻击的核心对抗逻辑不再是拦截恶意页面与恶意文件,而是管控合法协议下的异常授权行为与底层攻击流量。

第二,EvilTokens 攻击依托 Railway、BL Networks、Cloudflare Workers 等合法云基础设施隐匿流量,57.5% 攻击流量来自前两类平台,同时借助主流安全厂商可信重定向链接绕过邮件过滤,整套攻击链路不存在可被静态特征识别的恶意标识,防御存在天然滞后性;攻击完成后 AI 自动挖掘企业财务转账线索,链式触发 BEC 大额资金欺诈,对企业造成数据泄露与经济损失双重风险。

第三,本文设计并实现两套轻量化 Python 自动化检测代码,分别从邮件文本语义加权评分、云审计日志异常设备授权两个维度识别 EvilTokens 攻击,无重型第三方依赖,可直接集成至邮件网关、企业 SIEM 安全运营平台,实现攻击事前拦截、入侵事后溯源,弥补现有商用安全设备针对 AI 个性化钓鱼的检测空白。

第四,抵御 EvilTokens 类产业化 AI 设备码钓鱼必须搭建五层闭环防御体系:协议层约束 OAuth 设备码授权范围、身份层部署多层条件访问令牌防护、流量层阻断高危云平台 IP、日志层部署自动化审计告警、运营层开展新型钓鱼专项人员培训,五层技术与管理措施协同形成完整防护闭环,配套标准化 PowerShell 运维脚本与落地检查清单,可直接指导政企安全团队逐项完成安全加固。

6.2 研究客观局限性

本文研究存在两处不可规避的客观局限:其一,邮件检测代码仅基于基础文本语义关键词匹配实现风险判别,未引入深度学习文本分类模型,对极简短、低特征隐蔽 AI 诱饵的识别准确率存在提升空间;其二,实证数据仅依托海外安全厂商监测的 EvilTokens 攻击样本,未覆盖国内本土同类 PhaaS 平台攻击案例,针对国内钉钉、企业微信等多云办公场景的适配拓展仍可完善。

6.3 后续研究拓展方向

伴随生成式 AI 技术持续普及,协议滥用型钓鱼攻击的产业化、隐蔽化程度会持续提升,后续相关对抗研究可从三个方向拓展:

融合深度学习的 AI 钓鱼诱饵精准识别模型:基于海量 EvilTokens 类 AI 生成钓鱼文本数据集训练文本分类模型,提升低特征、极简诱导话术的识别精度;

跨多云平台通用设备码钓鱼防御框架:将当前仅适配 Microsoft 365 的管控策略拓展至 Google Workspace、国内钉钉、飞书云办公体系,构建跨平台标准化防御方案;

黑产 PhaaS 云基础设施溯源与协同阻断技术:针对 Railway、BL Networks 等被滥用的商用云平台,研究流量行为特征识别、恶意实例快速协同封禁机制,从攻击底层基础设施压缩黑产生存空间。

网络安全对抗的重心已从传统终端、网页边界转向云身份体系,政企安全体系必须同步完成智能化、身份中心化防御转型,持续跟踪 AI 赋能协议滥用钓鱼的技术迭代,动态迭代检测、管控与运营手段,构建长期适配黑产技术演变的长效安全防护机制。

编辑:芦笛(公共互联网反网络钓鱼工作组)

目录
相关文章
|
3天前
|
人工智能 定位技术 SEO
我学 GEO 第 15 天:终于知道AI GEO该如何做?
我是暴走的莉莉酱,边旅行边研究AI GEO的数字游民。专注普通人如何提升“AI可见度”——让AI在回答用户问题时准确识别、理解并推荐你。不讲玄学,只做可测、可调、可持续的GEO实践。
369 124
|
5天前
|
机器学习/深度学习 人工智能 调度
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
HappyHorse 1.1 是新一代视频生成大模型,全面升级动态表现力、角色一致性、指令遵循、视觉质感与音画协同能力。支持I2V/T2V/R2V三类生成,适配短剧、电商广告、品牌营销等场景,提供高质、流畅、可控的AI视频生产力。
633 4
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
|
1天前
|
人工智能 自然语言处理 API
阿里云Token Plan团队版解析:功能、三档套餐与省钱订阅指南
阿里云百炼平台推出的Token Plan团队版,是面向企业与团队的AI大模型订阅服务,以Credits为统一计量单位,整合文本与图像生成模型,提供团队管理、数据安全、多工具兼容等核心能力,解决团队零散订阅AI服务的管理混乱、成本失控、数据安全等痛点。本文将从核心定位、套餐详情、计费规则、团队管理、工具兼容、便宜订阅技巧等方面,全面解析Token Plan团队版,帮助企业与团队高效、低成本地使用AI服务。
283 108
|
3天前
|
缓存 人工智能 运维
阿里云618百炼大模型Qwen3.7-Max功能、免费试用、订阅计费、配置接入详解
Qwen3.7-MAX是阿里云百炼平台推出的通义千问3.7系列旗舰大语言模型,专为智能体时代复杂任务打造,依托阿里云全域算力与自研技术,在逻辑推理、长文本处理、代码工程、长周期自主执行等领域达到行业顶尖水平。2026年618期间,该模型推出多重免费试用权益、按量计费5折、订阅套餐优惠等专属福利,覆盖个人开发者、团队与企业全场景需求,以下从核心功能、免费试用、订阅计费、配置接入四方面展开详细解析。
373 123
|
16天前
|
缓存 测试技术 API
Qwen 3.7 Plus 与 Max 实测:性价比与多模态能力差异解析(2026)
2026 年 6 月 1 日,阿里悄无声息地发布了 Qwen 3.7 Plus,距 Qwen 3.7 Max 上线刚好 11 天。同样的 1M 上下文,同样的 35 小时自治上限。但价格才是头条:Plus 是 0.40/M输入,Max是 2.50/M——便宜约 6 倍——并且还能看图、看视频。Vision Arena 上 Plus 已经排到 #16。所以这周真正值得讨论的问题不是”要不要为视觉能力买单”,而是”Max 凭什么用 6 倍价格换来 2 个百分点的 benchmark 领先”。
|
2天前
|
存储 人工智能 数据可视化
别再手动复制 Skill 了:多 Agent 时代的 Skill 管理方案
多 Agent 场景下 Skill 的统一管理与同步。
190 122
|
9天前
|
缓存 人工智能 运维
GLM 5.2自托管全流程实战:硬件选型、vLLM/SGLang部署与成本盈亏测算
2026年智谱发布GLM 5.2超大混合专家模型,区别于以往仅开放API的闭源大模型,该模型权重以MIT开源协议对外发布,企业与开发者可完整下载、本地审计、私有化部署,实现数据不出环境、自定义微调、自主调度推理资源。GLM 5.2拥有753B总参数,原生支持百万级上下文窗口,在代码生成、长文档推理、数学逻辑等多项基准测试中对标国际顶尖商用模型,是首款可完整自托管的前沿代码向大模型。
764 0
|
2天前
|
SQL 存储 运维
日志能不能改?SLS LogStore 原生支持更新和删除了
随着日志承载的业务语义越来越多,数据订正、回填、清理等需求变得越来越常见。SLS 现已为 LogStore 提供原生 update/delete 能力——支持按 RowID 精确修改,按查询条件批量操作,类似计费调账、标签刷新、反馈回填等场景都可以直接在 LogStore 内完成闭环。
173 124

热门文章

最新文章