首页
学习
活动
专区
圈层
工具
发布

ConsentFix攻击机制与OAuth授权滥用的防御对策研究

一、引言近年来,随着企业向云办公平台(如Microsoft 365、Google Workspace)的大规模迁移,身份认证体系逐步从传统的用户名/密码模型转向基于令牌(token)的现代协议,其中OAuth...(三)规避检测的关键设计ConsentFix之所以难以被发现,源于其多重规避特性:无密码交互:不触发密码爆破、撞库或凭证填充告警;合法IdP流量:所有OAuth请求均经由微软官方端点,无法通过IP或域名黑名单拦截...(二)策略管理层:建立授权生命周期管理定期授权审计:每季度导出全组织应用授权清单,清理未使用或来源不明的应用;实施最小权限原则:推动业务部门使用权限更细的现代API(如Microsoft Graph的delegated...permissions with scopes);自动化撤销机制:当检测到可疑活动时,自动调用Microsoft Graph API撤销相关应用授权:# 使用Microsoft Graph API撤销用户授权...v1.0/users/{user_id}/oauth2PermissionGrants"headers = {"Authorization": f"Bearer {access_token}"}# 获取该用户的授权记录

19010

设备代码钓鱼攻击对Microsoft 365 OAuth授权机制的威胁分析与防御策略

摘要近年来,随着基于云的身份认证体系广泛应用,OAuth 2.0协议成为现代企业身份联合与应用集成的核心组件。然而,其开放性和灵活性也为新型网络钓鱼攻击提供了可乘之机。...本文聚焦于近期在Microsoft 365环境中频发的“设备代码钓鱼”(Device Code Phishing)攻击,深入剖析攻击者如何滥用OAuth 2.0设备授权流程,在不获取用户密码的前提下实现账户接管...2 OAuth 2.0设备授权流程概述OAuth 2.0设备授权模式(Device Authorization Grant)定义于IETF RFC 8628,适用于无法直接处理重定向或输入复杂凭据的设备...)后,将授权授予客户端;客户端通过轮询使用device_code换取访问令牌(access_token)和刷新令牌(refresh_token)。...并输入代码:ABC123”;用户信以为真,在微软官方页面输入代码并完成MFA;攻击者轮询令牌端点,成功获取access_token与refresh_token;利用令牌调用Microsoft Graph

21510
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【壹刊】Azure AD 保护的 ASP.NET Core Web API (下)

    上一篇结尾我们成功的拿到了 access_token,并且通过 access_token 验证获取到调用Api资源的结果。...是的,这里也不要感觉到奇怪,Azure AD 也是基于OAuth 2.0和Open Id Connect协议的一种认证授权体系。...通过User的用户名和密码向认证中心申请访问令牌。   按照惯例,在postman中直接进行调用order的接口。 ResponseCode:401,提示没有权限。...此处应该有掌声,成功的通过验证,并且获取到 api资源,但是这种模式是最不推荐的,因为client可能存了用户密码,此模式仅用于受信任的客户端。复制会发生密码泄露。所以不推荐使用。...这种模式直接是通过 client id 和 client secret 来获取 access_token,该方法通常用于服务器之间的通讯 以上就是使用 资源持有者密码授权以及 客户端凭据授权两种授权模式

    3K10

    微软365“设备代码钓鱼”风暴来袭:无需密码,黑客秒控企业邮箱

    网络安全公司 Proofpoint 近日披露,一种利用 Microsoft OAuth 2.0 设备授权流程(Device Code Flow) 的新型钓鱼手法正大规模针对 Microsoft 365...授权完成后,攻击者的服务器立即通过 OAuth 2.0 的 /token 端点兑换访问令牌和刷新令牌(Refresh Token),从而获得对受害者邮箱、日历、文件等资源的长期访问权——全程无需知道密码...它允许第三方应用在不获取用户密码的前提下,访问用户在其他服务(如 Google、Microsoft)上的资源。...更危险的是,一旦获得 Refresh Token,攻击者可长期维持访问,即使用户更改密码也无效——因为 OAuth 令牌独立于密码体系。...":time.sleep(5)else:print("❌ 授权失败:", token_resp.text)break一旦拿到 access_token,攻击者即可调用 Microsoft Graph API

    29510

    VoidProxy平台对多因素认证的绕过机制与防御对策研究

    在此过程中,攻击者不仅捕获用户名与密码,更重要的是截获认证成功后返回的会话Cookie、OAuth 2.0访问令牌及刷新令牌(Refresh Token),从而实现无需凭证重放的持久化账户访问。...(二)会话令牌捕获与持久化利用与传统钓鱼仅窃取密码不同,VoidProxy的核心目标是获取有效的会话标识符。...,即使用户登出仍有效;Access Token:短期有效(通常1小时),但可用于调用Microsoft Graph API。...例如,使用被盗Refresh Token获取新Access Token的请求如下:POST /common/oauth2/v2.0/token HTTP/1.1Host: login.microsoftonline.comContent-Type...(三)浏览器内令牌绑定(DPoP)推动SaaS供应商支持OAuth 2.0 DPoP规范。DPoP要求客户端在每次API请求中附带一个由私钥签名的证明令牌,该私钥与TLS连接绑定。

    24110

    俄罗斯国家级黑客组织借“设备代码钓鱼”潜入全球政企云邮箱,安全界拉响新型OAuth攻击警报

    要理解这场危机的严重性,必须先厘清技术本质。传统钓鱼攻击依赖伪造登录页面窃取用户名和密码。但随着MFA(多因素认证)普及,仅凭密码已无法完成登录。于是,攻击者转向更隐蔽的“令牌窃取”路径。...# 攻击者侧:使用Microsoft Graph API发起设备代码请求(简化示例)import requestsclient_id = "attacker-controlled-app-id" # 攻击者注册的恶意应用...()["access_token"]print("✅ 成功获取受害者Token!")...breaktime.sleep(5)拿到Token后,攻击者即可调用Microsoft Graph API,读取邮件、日历、OneDrive文件、Teams消息,甚至发送新邮件冒充受害者——全程无需知道密码...同时,开启风险用户检测(Identity Protection)和异常登录活动告警。例如,若某账户在短时间内从不同国家调用Graph API,即使Token合法,也应触发二次验证。

    17110

    设备代码钓鱼攻击的战术趋同化及其对企业身份安全的挑战

    研究揭示,此类攻击通过滥用OAuth 2.0设备授权流程,在用户主动授权的掩护下获取长期有效的刷新令牌,从而规避传统基于密码泄露或会话劫持的检测机制。...2 OAuth 2.0设备授权流程的技术基础OAuth 2.0设备授权模式(Device Authorization Grant)定义于IETF RFC 8628,适用于无法直接处理重定向或输入复杂凭据的设备...)后,将授权授予客户端;客户端通过轮询使用device_code换取访问令牌(access_token)和刷新令牌(refresh_token)。...留空(设备授权无需回调)API权限:勾选Microsoft Graph的Delegated权限,如:Mail.ReadWriteCalendars.ReadWriteUser.Read.AllFiles.ReadWrite.All4.2...,攻击者可调用Microsoft Graph API读取邮件:import requestswith open('stolen_token.json') as f:token = json.load(f

    21510

    基于恶意OAuth应用的MFA绕过攻击:微软身份体系中的新型钓鱼威胁研究

    然而,近期多起安全事件表明,攻击者正通过滥用Microsoft Entra ID(原Azure AD)的OAuth 2.0授权框架,绕过MFA保护,直接获取对Microsoft 365账户的持久化访问权限...关键词:OAuth 2.0;MFA绕过;Microsoft Entra ID;钓鱼攻击;身份安全;API权限;条件访问;第三方应用治理1 引言随着云办公的普及,Microsoft 365已成为全球企业数字基础设施的核心组成部分...该机制极大提升了用户体验,但也引入了新的攻击面:若用户被诱导授权一个恶意应用,攻击者即可绕过所有基于密码和MFA的验证环节,直接通过合法API接口操作账户。...(Access Token)与刷新令牌(Refresh Token);应用使用令牌调用Microsoft Graph API。...攻击者使用refresh_token定期换取新access_token,实现长期潜伏。所有API调用均来自微软合法IP,难以被网络层检测。

    25310

    oAuth2.0——接入QQ三方登录

    oauth的发展 OAuth协议的发展历史可以追溯到2004年,当时美国国防部提出了一个名为“OpenID Connect”的开放式身份认证和授权标准,旨在解决Web 2.0中的身份认证和授权问题。...OAuth1.0的主要特点是将用户的认证信息(如用户名和密码)与第三方应用的请求分离开来,从而提高了安全性。...OAuth2.0则在OAuth1.0基础上进一步改进,增加了更多的功能和灵活性,如授权码模式、隐式模式、密码模式等 。...这样做可以减少用户数据泄露的风险。OAuth是一个开放的标准,由OAuth工作组维护,并得到许多组织的支持和使用。...使用openid去注册网站用户,显示nickname网名 ⭐技术选型+实现 技术选型: 后端:node 前端:vue2 后端node封装qq相关的oauth2.0接口 service/api.js const

    1.7K30

    基于OAuth同意滥用的假冒微软应用钓鱼攻击研究

    此类攻击不依赖凭据窃取,而是滥用OAuth 2.0授权框架中的“用户同意”流程,使恶意应用获得长期有效的刷新令牌(refresh token),进而通过Microsoft Graph API静默读取邮件...关键词:OAuth 同意滥用;假冒微软应用;Entra ID;多因素认证绕过;Graph API;条件访问1 引言多因素认证(MFA)作为现代身份安全的核心防线,已在绝大多数企业环境中广泛部署。...2 攻击技术原理与实施路径2.1 OAuth 2.0 用户同意机制回顾在Microsoft Entra ID中,第三方应用若需访问用户资源(如邮件、日历),必须通过OAuth 2.0授权码流程获取权限。...);用户点击“接受”,微软返回授权码;应用用授权码向令牌端点兑换访问令牌与刷新令牌;应用使用令牌调用Microsoft Graph API。...:# 读取最近100封邮件headers = {'Authorization': f'Bearer {access_token}'}resp = requests.get('https://graph.microsoft.com

    24110

    基于OAuth滥用的定向钓鱼攻击与防御机制研究

    通过可执行代码示例,验证了OAuth授权监控与自动撤销机制的有效性。研究结论指出,仅依赖用户教育无法应对当前高度专业化、协议级的钓鱼威胁,必须从身份治理与协议使用规范层面重构企业安全边界。.../callback'})tokens = resp.json()# 保存access_token与refresh_token用于后续API调用store_tokens(tokens['access_token...2.3 设备码流程(Device Code Flow)滥用在针对Microsoft账户的变体中,UTA0355采用OAuth 2.0设备码流程,该流程原本用于无浏览器设备(如智能电视)的认证。...该URL实际包含设备码和用户代码:https://login.microsoftonline.com/common/oauth2/v2.0/devicecode?...Graph API支持查询用户授予的同意记录:GET https://graph.microsoft.com/v1.0/me/oauth2PermissionGrantsAuthorization:

    27810

    oauth的权限系统

    码云地址:https://gitee.com/mark-steven/oauth2.0 oauth2.0 介绍 OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。...与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。...(dhtmlx组件是由位于俄罗斯圣彼得堡的DHTMLX公司开发的,适用于B/S模式的Web应用开发) 启动教程 ApiApplication 先启动api接口 ResourceApplication 在启动静态资源...ManageApplication 启动前端页面 登录账户:admin 密码:123456 oauth2.0请求流程 获取access_token 业务中配置如下 ?...携带access_token请求接口 我这边随便一个接口地址拼接access_token去请求系统的接口 请求链接:http://localhost:8080/api/dev/param/category

    1.3K20

    国家级黑客与黑产“共用武器库”:M365设备代码钓鱼成云时代通用入侵钥匙

    一、一场“巧合”的攻击暴露了更危险的趋势2025年10月,一家位于德国的能源企业安全团队在例行日志审计中发现异常:多个高管账户在凌晨时段调用了Microsoft Graph API,读取了大量内部邮件和...要理解这场“战术趋同”的本质,必须回到OAuth 2.0协议的设计初衷。设备代码授权流(Device Code Flow, RFC 8628)本是为智能电视、打印机等无浏览器设备设计的身份验证机制。...此时,受害者实际上是在向攻击者控制的应用授权!一旦确认,攻击者的轮询脚本立即获得Access Token,并可调用任意Graph API权限。...(如非常规地理位置、高频API调用);使用Microsoft Defender for Cloud Apps设置异常活动告警,如“单用户1小时内下载10GB OneDrive数据”。...六、未来展望:身份安全进入“后密码、后MFA”时代设备代码钓鱼的泛滥,标志着一个残酷现实:传统的“用户名+密码+MFA”三层模型已不足以应对现代云威胁。

    16510

    高级OAuth钓鱼攻击的演化机制与防御体系构建

    劫持授权响应、绕过多因素认证(MFA)等手段,在不获取用户密码的前提下实现持久化账户访问。...关键词:OAuth 2.0;钓鱼攻击;PhaaS;令牌劫持;条件访问;Microsoft Entra ID1 引言OAuth 2.0协议自标准化以来,已成为现代Web与移动应用实现第三方授权的事实标准。...2024年以来,Barracuda等安全厂商陆续披露多起高级OAuth钓鱼事件,攻击者不再试图窃取密码,而是诱导用户向恶意注册的应用授予权限,从而直接获取合法令牌。...向令牌端点换取访问令牌与刷新令牌;Client使用访问令牌调用受保护资源(如Microsoft Graph API)。...获得令牌后,攻击者通过Microsoft Graph API执行侦察:import requeststoken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.xxxxx"headers

    28410

    OAuth 2.0 的四种方式

    第三种方式:密码式 如果你高度信任某个应用,RFC 6749 也允许用户把用户名和密码,直接告诉该应用。该应用就使用你的密码,申请令牌,这种方式称为"密码式"(password)。...第一步,A 网站要求用户提供 B 网站的用户名和密码。拿到以后,A 就直接向 B 请求令牌。 https://oauth.b.com/token?...表示"密码式",username和password是 B 的用户名和密码。...这种方式需要用户给出自己的用户名/密码,显然风险很大,因此只适用于其他授权方式都无法采用的情况,而且必须是用户高度信任的应用。...下一篇文章会编写一个真实的 Demo,演示如何通过 OAuth 2.0 向 GitHub 的 API 申请令牌,然后再用令牌获取数据。

    80830

    OAuth2密码模式

    OAuth 2.0是一种授权框架,用于授权第三方应用程序访问资源。OAuth 2.0提供了四种授权模式:授权码模式、简化模式、密码模式和客户端模式。...在密码模式中,客户端直接向授权服务器请求授权,使用用户的用户名和密码作为授权凭证,从而获取access_token,然后使用access_token访问受保护的资源。...密码模式虽然简单,但存在一些安全风险,例如,客户端可能会保存用户的密码,从而导致密码泄露。因此,在使用密码模式时,需要根据具体的业务需求和安全要求,对授权服务器和资源服务器进行适当的配置和实现。...和Secret,"grant_type=password"表示使用密码模式进行授权,"username"和"password"分别是用户的用户名和密码。...授权服务器验证身份授权服务器验证客户端的身份和用户的用户名和密码。如果验证成功,授权服务器将颁发一个access_token,然后将其返回给客户端。

    1.9K20
    领券