Kali365 钓鱼工具对 Microsoft OAuth 令牌劫持机理与防御研究

简介: FBI预警新型PhaaS工具Kali365,滥用OAuth 2.0设备码流程,通过Telegram传播。攻击者诱导用户在微软官方页面输入设备码,绕过MFA劫持令牌,实现对M365服务的持久控制。本文系统解析其攻击链,提出协议管控、令牌治理、异常检测等五层闭环防御体系,并提供可落地代码与配置方案。(239字)

摘要

2026 年 5 月,FBI 发布安全公告,警示新型钓鱼即服务工具 Kali365 通过 Telegram 传播,大幅降低攻击门槛,使低技术攻击者可借助 AI 生成钓鱼诱饵,利用 OAuth 2.0 设备码授权流程劫持 Microsoft 365 令牌并绕过多重要素认证。Kali365 不窃取用户凭证,而是诱导受害者在微软官方验证页面输入设备码,在无感知状态下授权攻击者设备访问账号,获取访问令牌与刷新令牌,实现对 Outlook、Teams、OneDrive 等服务的持久化控制。传统基于恶意 URL、伪造页面的检测机制对此类攻击失效,企业身份安全面临严峻挑战。本文以 FBI 预警与 TechRadar 报道为核心依据,结合 OAuth 2.0 RFC 8628 协议规范与 Microsoft Entra ID 安全机制,系统解析 Kali365 的运作模式、攻击链路、协议滥用原理与危害特征,对比设备码钓鱼与传统钓鱼的差异,构建覆盖协议管控、条件访问、令牌治理、异常检测、应急响应的闭环防御体系,并提供可直接部署的代码示例与配置规范。反网络钓鱼技术专家芦笛指出,Kali365 代表钓鱼攻击向低门槛、平台化、协议武器化演进,企业必须从凭证防护转向授权行为与令牌生命周期管控,才能有效抵御此类威胁。本文研究成果可为企业加固 Microsoft 365 身份安全、防范 OAuth 令牌劫持攻击提供理论支撑与实践方案。

image.png 1 引言

云办公普及推动 Microsoft 365 成为政企核心生产力平台,其身份认证与授权体系的安全性直接决定数据边界。OAuth 2.0 作为主流授权协议,设备码授权流程(Device Code Flow)为无浏览器、输入受限设备提供便捷接入方式,却因官方验证、无需密码、MFA 由用户自主完成等特性,被黑产武器化为新型钓鱼攻击载体。

2026 年 4 月出现的 Kali365 钓鱼工具,将设备码流程滥用推向产业化。FBI 与 TechRadar 同期披露,Kali365 以订阅式服务在 Telegram 分发,集成 AI 诱饵生成、自动化模板、实时追踪仪表盘,使无开发能力攻击者快速发起攻击,全程使用官方域名与合法流程,绕过 MFA 且不留传统恶意痕迹,实现长期无凭证访问。

当前研究多聚焦传统钓鱼、凭证窃取、恶意页面检测,对合法协议滥用型令牌劫持钓鱼的系统性分析不足,缺乏对 PhaaS 平台机理、设备码流程缺陷、闭环防御的深入研究。本文基于权威通报、协议规范与实战场景,完成五项研究:解析 Kali365 平台架构与攻击链;揭示设备码流程安全缺陷;构建设备码钓鱼与传统钓鱼对比模型;提出可落地防御体系并提供代码实现;明确企业防御优先级与运维规范。本文保持客观严谨,不夸大威胁、不喊口号,为企业提供可工程化的防御指南。

2 Kali365 钓鱼工具概述

2.1 平台基本属性与分发模式

Kali365 是 2026 年 4 月首次被发现的钓鱼即服务(PhaaS)工具,核心定位为低门槛 Microsoft 365 OAuth 令牌劫持服务,主要通过 Telegram 频道付费订阅,价格区间约 10 美元 / 月至 1000 美元以上,按功能分级,满足不同攻击者需求。该平台大幅降低攻击技术门槛,使无专业能力的黑产人员可快速实施高隐蔽攻击,推动令牌劫持从高级威胁转向规模化泛化攻击。

Kali365 核心功能模块:

AI 生成钓鱼诱饵:自动生成仿冒微软、共享文档、IT 运维等场景的邮件 / 短信,支持多语言与个性化替换,提升欺骗性;

自动化攻击模板:预置高频场景模板,导入目标列表即可一键启动;

实时追踪仪表盘:可视化展示邮件打开、代码输入、令牌捕获状态,支持目标实时监控;

OAuth 令牌自动捕获:对接 Microsoft Entra ID 设备码接口,自动申请、轮询、存储令牌;

持久化访问管理:支持令牌复用、批量登录、规则篡改、横向拓展等后续利用。

反网络钓鱼技术专家芦笛强调,Kali365 完成钓鱼攻击工具化→平台化→服务化演进,攻击成本下降、成功率提升、扩散加速,传统以用户意识为核心的防护模式已无法应对。

2.2 核心威胁能力与突破点

Kali365 的威胁本质是对合法机制的极致滥用,实现三大突破:

完全绕过 MFA:攻击中用户自主完成密码与 MFA 验证,攻击者不拦截凭证、不破解验证码,即可获取合法令牌;

全链路合法无痕迹:全程使用微软官方域名与标准协议,无恶意 URL、代码、伪造页面,传统网关、沙箱、信誉库失效;

持久化控制:刷新令牌有效期长,用户修改密码无法阻断访问,攻击者可长期潜伏控制账号。

FBI 明确指出,Kali365 可使攻击者在不获取凭证的情况下,长期控制 Microsoft 365 环境,实施数据窃取、内部钓鱼、账号勒索,危害远超传统钓鱼。

3 OAuth 2.0 设备码授权流程原理与安全缺陷

3.1 标准设备码授权流程(RFC 8628)

设备码授权流程由 IETF 在 RFC 8628 定义,适用于智能电视、IoT、CLI 等无浏览器 / 弱输入终端,核心是用户在可信设备完成授权,替代设备直接输入密码。标准流程共 6 步:

设备客户端向授权服务器(Microsoft Entra ID)/devicecode 端点请求,携带客户端 ID 与权限范围;

服务器返回设备码、用户码、验证 URI、过期时间、轮询间隔;

设备展示用户码与 URI,提示用户在可信设备访问;

用户在官方页面登录、完成 MFA、输入用户码并确认授权;

服务器标记授权状态,设备按间隔轮询 /token 端点;

轮询成功,设备获取访问令牌与刷新令牌,调用资源接口。

该流程平衡安全与便捷,但未考虑恶意客户端诱导授权场景,为 Kali365 提供攻击入口。

3.2 流程原生安全缺陷与武器化条件

设备码流程存在四项原生缺陷,构成 Kali365 攻击基础:

验证页面绝对可信:用户访问官方域名,无视觉特征区分恶意 / 合法授权,信任基础被利用;

无授权上下文校验:仅校验身份与用户码,不校验发起方 IP、设备、应用合法性;

短码易诱导传播:用户码 8–9 位字母数字,易嵌入邮件、短信、二维码;

刷新令牌长效机制:有效期通常 90 天且支持续期,泄露后可长期控制,密码重置无效。

反网络钓鱼技术专家芦笛指出,设备码流程核心矛盾是授权便捷性与主体不可控性,攻击者只需包装为合法需求,即可利用官方信任完成劫持,传统防护无法覆盖。

3.3 Kali365 对流程的武器化改造

Kali365 未破坏协议,而是全流程合规滥用,改造点如下:

恶意客户端伪装:使用合法客户端 ID 或仿冒应用,获取设备码请求权限;

诱饵替代设备展示:将用户码与 URI 通过钓鱼邮件发送,替代设备展示;

诱导官方授权:欺骗用户在官方页面输入代码,完成攻击者设备授权;

自动轮询窃令:后台轮询令牌接口,捕获并入库管理令牌;

持久化维持:用刷新令牌续期,篡改规则屏蔽告警,延长潜伏时间。

全程符合 RFC 8628 规范,是其高隐蔽、高成功率的核心原因。

4 Kali365 全流程攻击链解析

4.1 攻击前置准备

攻击者订阅 Kali365,获取平台权限与客户端配置;

选择攻击模板,导入目标邮箱列表;

平台调用 Microsoft Entra ID 设备码接口,批量申请设备码、用户码、验证 URI;

AI 生成个性化钓鱼邮件,嵌入用户码与官方地址,设置发送与追踪参数。

4.2 诱饵投放与社会工程诱导

Kali365 通过邮件、企业通信工具投放诱饵,典型话术:

“您有共享文档待确认,请访问微软官方页面输入代码验证”;

“账号异常登录,需设备授权解除限制”;

“打印任务等待授权,输入设备码激活权限”。

诱饵核心特征:仅含官方地址与用户码,无任何可疑元素,用户无法通过域名、页面检查识别风险,与传统钓鱼本质不同。

4.3 用户误授权与令牌捕获

用户信任官方域名,正常登录并完成 MFA;

输入邮件中的用户码,点击确认,完成攻击者设备授权;

Kali365 后台轮询令牌接口,获取访问令牌与刷新令牌;

平台记录令牌、账号、时间、权限,提供可视化管理。

此阶段用户无异常感知,MFA 被合法绕过,安全防护完全失效。

4.4 持久化入侵与数据滥用

攻击者获取令牌后可实施:

无密码登录 Outlook、Teams、OneDrive、SharePoint;

读取、下载、删除业务文件与邮件;

添加转发 / 归档规则,屏蔽安全通知;

用被盗账号发起横向钓鱼,扩大攻击范围;

长期持有刷新令牌,实现数周 / 数月持久控制。

FBI 预警强调,此类攻击可导致核心数据泄露、通信监控、流程篡改,常规审计难以发现。

4.5 与传统钓鱼攻击对比

表格

对比维度 传统钓鱼 Kali365 设备码钓鱼

目标 密码 + MFA 验证码 OAuth 访问 / 刷新令牌

页面 伪造域名 / 仿冒页面 官方域名 + 合法流程

MFA 可绕过但留痕 完全绕过,用户自主完成

持久化 依赖密码有效性 长效令牌,改密码无效

检测难度 特征可识别 无恶意特征,日志隐蔽

门槛 需搭建站点 平台化,低技能可用

用户感知 易发现异常 全程无感知

反网络钓鱼技术专家芦笛指出,对比表明设备码钓鱼是合法协议恶意劫持,突破传统防护逻辑边界,威胁与防御难度指数级上升。

5 Kali365 攻击技术实现与代码示例

本节基于协议规范与实测,提供核心功能简化代码,仅用于安全研究与防御验证。

5.1 恶意客户端申请设备码(Python)

模拟 Kali365 向 Microsoft Entra ID 请求设备码,攻击起点。

import requests


def request_device_code():

   """模拟Kali365申请设备码"""

   url = "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode"

   payload = {

       "client_id": "d3590ed6-036b-45a7-98f1-1c9123456789",

       "scope": "https://graph.microsoft.com/.default offline_access"

   }

   headers = {"Content-Type": "application/x-www-form-urlencoded"}

   try:

       resp = requests.post(url, data=payload, headers=headers, timeout=10)

       result = resp.json()

       if "user_code" in result:

           return result

   except Exception:

       return None


# 执行

device_info = request_device_code()

if device_info:

   print(f"用户码:{device_info['user_code']}")

   print(f"验证地址:{device_info['verification_uri']}")

5.2 自动轮询获取 OAuth 令牌(Python)

用户授权后,轮询捕获访问令牌与刷新令牌。

import requests

import time


def poll_token(device_code, client_id):

   """轮询获取令牌"""

   token_url = "https://login.microsoftonline.com/common/oauth2/v2.0/token"

   headers = {"Content-Type": "application/x-www-form-urlencoded"}

   max_wait = 600

   start = time.time()

   while time.time() - start < max_wait:

       data = {

           "grant_type": "urn:ietf:params:oauth:grant-type:device_code",

           "client_id": client_id,

           "device_code": device_code

       }

       resp = requests.post(token_url, data=data, headers=headers)

       result = resp.json()

       if "access_token" in result:

           return result

       elif "authorization_pending" in result.get("error", ""):

           time.sleep(5)

       else:

           break

   return None


# 调用

if device_info:

   token = poll_token(device_info["device_code"], "d3590ed6-036b-45a7-98f1-1c9123456789")

   if token:

       print(f"访问令牌:{token['access_token'][:50]}...")

5.3 异常设备码请求检测(Python)

防御侧识别批量申请行为,实现早期预警。

import pandas as pd


def detect_abnormal_device_code(log_path, threshold=10):

   """检测高频设备码申请"""

   logs = pd.read_csv(log_path)

   logs['request_time'] = pd.to_datetime(logs['request_time'])

   logs['window'] = logs['request_time'].dt.floor('5min')

   stats = logs.groupby(['source_ip', 'window']).size().reset_index(name='count')

   return stats[stats['count'] >= threshold].to_dict('records')

5.4 全局阻断设备码流(PowerShell)

FBI 推荐核心措施,全局阻止设备码流程,保留业务例外。

powershell

Connect-MgGraph -Scopes "Policy.ReadWrite.ConditionalAccess"

$params = @{

   DisplayName = "Block-DeviceCodeFlow-Global"

   State = "enabled"

   Conditions = @{

       Applications = @{ IncludeApplications = @("All") }

       UserActions = @{ IncludeUserActions = @("urn:user:action:deviceCodeFlow") }

   }

   GrantControls = @{ Operator = "AND"; BuiltInControls = @("Block") }

}

New-MgIdentityConditionalAccessPolicy -BodyParameter $params

反网络钓鱼技术专家芦笛强调,代码化、自动化、策略化是抵御 Kali365 的关键,人工与意识培训仅为辅助。

6 Kali365 类攻击闭环防御体系构建

基于 FBI 建议、Microsoft 最佳实践与实战,构建五层闭环防御,覆盖全流程。

6.1 协议层:最小化攻击面(核心)

全局限制 / 禁用设备码流程:执行 5.4 策略,仅必要业务例外,阻断 90% 以上批量攻击;

阻止认证转移:防止会话跨设备转移,阻断跨设备诱导;

豁免紧急账号:避免全局阻断导致管理员锁死,保障运维。

6.2 身份层:强化令牌与应用管控

严格 OAuth 应用审批:禁止用户自主注册,管理员审批,建立白名单,定期审计;

缩短令牌生命周期:限制刷新令牌最大使用 / 空闲时间,降低泄露危害窗口;

令牌风险检测:监控跨地区、高频调用、批量下载,自动告警 / 撤销。

6.3 检测层:全维度威胁识别

邮件内容检测:正则识别含官方验证地址、用户码、授权话术的邮件,隔离高风险;

登录日志分析:监控异常 IP、匿名代理、短时间多设备授权,实时告警;

流量行为检测:识别批量申请、高频轮询、大量用户授权同一应用,联动阻断。

6.4 响应层:快速止损与清除

自动化令牌撤销:发现可疑授权,立即调用 Graph API 撤销刷新令牌,强制下线;

账号加固:重置密码、重新验证 MFA、清除恶意规则、删除可疑授权;

溯源取证:提取 IP、设备、令牌日志、诱饵模板,形成证据链。

6.5 认知层:针对性培训

传统培训无效,需升级:

明确:官方不会主动发送设备码要求输入;

任何设备码请求需通过可信渠道核实;

树立 “授权即风险” 意识,非主动请求一律拒绝;

建立快速举报机制。

反网络钓鱼技术专家芦笛强调,认知与技术同步落地,形成技术阻断为主、意识防范为辅的协同体系。

7 防御方案落地优先级与实施指南

按见效速度、难度、范围制定三级优先级,便于快速落地。

7.1 一级优先级(24 小时内,立即止损)

启用设备码流全局阻断;

审计并撤销非必要 OAuth 授权;

管理员启用 FIDO2/Windows Hello;

网关拦截设备码验证话术邮件。

7.2 二级优先级(1 周内,强化管控)

建立 OAuth 应用审批白名单;

配置令牌生命周期策略;

启用异常登录 / 令牌告警;

专项安全培训。

7.3 三级优先级(1 个月内,体系化防御)

接入 SIEM 集中审计;

开发自动化响应脚本;

定期渗透测试验证;

完善应急响应预案。

FBI 指出,上述措施可有效降低攻击成功率与危害,企业应优先完成一级配置。

8 讨论与未来趋势

8.1 研究价值与创新点

基于权威通报系统解析 Kali365 机理,填补设备码钓鱼研究空白;

明确攻击是协议滥用而非漏洞,纠正行业认知;

提供闭环防御与可部署代码,具备工程价值;

融入实战专家观点,平衡学术与实践。

8.2 局限性

未逆向 Kali365 后台架构与付费体系;

方案基于 Microsoft 365,其他云平台适配需验证;

未涉及 AI 诱饵对抗检测,为后续方向。

8.3 未来攻击趋势

PhaaS 深度集成大模型,诱饵更个性化、场景化;

令牌劫持扩展到授权码、静默授权流程,攻击面扩大;

攻击定向化,针对高价值账号精准实施;

形成 “窃取 — 交易 — 使用 — 清洗” 完整黑产链。

反网络钓鱼技术专家芦笛指出,企业必须从边界防护转向身份 - centric 防护,以零信任为核心,精细化校验每一次授权、每一枚令牌、每一次访问。

9 结语

Kali365 揭示云身份协议被武器化滥用的现实,依托 OAuth 设备码流程,以官方页面为掩护、社会工程为手段、令牌劫持为目标,绕过 MFA 并实现持久控制,对云办公安全构成重大威胁。本文基于权威通报、协议规范与实战,解析其架构、攻击链、机理与危害,构建五层闭环防御,提供代码与配置策略。

研究表明,抵御此类攻击的核心是放弃恶意页面 / URL 检测,转向授权行为与令牌全生命周期管控。企业应立即落实设备码阻断、OAuth 审计、令牌监控等措施,升级用户认知,形成技术与管理协同防御。随着钓鱼攻击平台化、服务化、智能化演进,身份安全成为防御核心战场,只有建立零信任、精细化、自动化机制,才能应对令牌劫持威胁,保障核心资产安全。

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

目录
相关文章
|
5天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
2627 9
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
|
13天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
3442 12
|
16天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
3518 25
|
9天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
2642 6
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
|
7天前
|
人工智能 自然语言处理 供应链
|
7天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全+三种模式+记忆体系+实战工作流完整手册
Claude Code 是当前最流行的终端级 AI 编程助手,能够直接在命令行中完成代码生成、项目理解、文件修改、命令执行、错误修复等全流程开发工作。它不依赖图形界面、不占用额外资源,却能深度理解项目结构,自动生成规范代码,大幅提升研发效率。
1202 3
|
28天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23611 15
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」

热门文章

最新文章