你有没有收到过这样的邮件?“您的 Microsoft 账户需要立即完成安全验证。请访问 https://aka.ms/devicelogin,输入以下代码:**ABCD-EFGH**。”...更令人不安的是,这种攻击对多因素认证(MFA)几乎免疫——即使你启用了短信或 Authenticator 验证,只要在微软官网输入了那串“设备代码”,攻击者就能绕过所有防线,直接获取访问令牌(Access...授权完成后,攻击者的服务器立即通过 OAuth 2.0 的 /token 端点兑换访问令牌和刷新令牌(Refresh Token),从而获得对受害者邮箱、日历、文件等资源的长期访问权——全程无需知道密码...更危险的是,一旦获得 Refresh Token,攻击者可长期维持访问,即使用户更改密码也无效——因为 OAuth 令牌独立于密码体系。...print("❌ 授权失败:", token_resp.text)break一旦拿到 access_token,攻击者即可调用 Microsoft Graph API 执行任意操作:# 示例:读取受害者最近
,包括对 JWT 令牌的解析和验证。...// -用途:用来处理身份验证失败的情况,例如,记录失败原因、执行额外的错误处理逻辑等。.... * *OnForbidden * *: // -触发时机:当授权失败时触发(即用户已通过身份验证,但没有足够的权限访问特定资源)。...以下是一个简单的登录 API 示例: using Microsoft.AspNetCore.Mvc; using Microsoft.IdentityModel.Tokens; using System.IdentityModel.Tokens.Jwt...路由 一旦有了 JWT 令牌生成机制,接下来需要保护 API 路由,确保只有携带有效 JWT 令牌的请求可以访问受保护的资源。
攻击者通过伪造合法服务(如Cloudflare验证页或微软账户修复向导),引导用户在浏览器中完成看似无害的操作——复制粘贴一个URL或点击“同意”按钮,实则触发OAuth授权请求,将访问令牌(access...用户被诱导相信这是正常验证流程的一部分。(二)授权诱导与令牌捕获当用户点击“继续”或“验证”按钮时,浏览器跳转至微软官方登录页。...Graph API读取邮件、发送钓鱼邮件、下载OneDrive文件等。...(二)策略管理层:建立授权生命周期管理定期授权审计:每季度导出全组织应用授权清单,清理未使用或来源不明的应用;实施最小权限原则:推动业务部门使用权限更细的现代API(如Microsoft Graph的delegated...permissions with scopes);自动化撤销机制:当检测到可疑活动时,自动调用Microsoft Graph API撤销相关应用授权:# 使用Microsoft Graph API撤销用户授权
本文聚焦于2025年披露的一类高隐蔽性钓鱼攻击:攻击者诱导用户授权伪装成合法工具的恶意OAuth应用,利用其申请的高权限API作用域(如Mail.Read、Files.ReadWrite.All),在无需密码或一次性验证码的情况下访问邮箱...关键词:OAuth 2.0;MFA绕过;Microsoft Entra ID;钓鱼攻击;身份安全;API权限;条件访问;第三方应用治理1 引言随着云办公的普及,Microsoft 365已成为全球企业数字基础设施的核心组成部分...(Access Token)与刷新令牌(Refresh Token);应用使用令牌调用Microsoft Graph API。...关键点在于:MFA仅在第3步验证用户身份,而第5步的“同意”操作本身无二次验证。一旦用户授权,即使账户启用了MFA,攻击者仍可通过令牌直接访问资源。...3.4 数据窃取与横向移动获得令牌后,攻击者可调用Microsoft Graph API执行以下操作:# 读取最新100封邮件Invoke-RestMethod -Uri "https://graph.microsoft.com
在此过程中,攻击者不仅捕获用户名与密码,更重要的是截获认证成功后返回的会话Cookie、OAuth 2.0访问令牌及刷新令牌(Refresh Token),从而实现无需凭证重放的持久化账户访问。...对于Microsoft Entra ID,关键令牌包括:Session Cookie:如ESTSAUTHPERSISTENT,有效期可达90天;Refresh Token:用于在后台静默获取新的访问令牌...,即使用户登出仍有效;Access Token:短期有效(通常1小时),但可用于调用Microsoft Graph API。...攻击者利用这些令牌可直接通过API访问用户邮箱、OneDrive文件、Teams聊天记录等,完全绕过前端UI与MFA提示。...Microsoft Graph提供/revokeSignInSessions API,可编程终止可疑会话:import requestsdef revoke_suspicious_sessions(user_id
此类攻击不依赖凭据窃取,而是滥用OAuth 2.0授权框架中的“用户同意”流程,使恶意应用获得长期有效的刷新令牌(refresh token),进而通过Microsoft Graph API静默读取邮件...实验验证表明,所提方案可有效识别并阻断90%以上的高风险OAuth同意请求,显著降低企业云环境中的数据泄露风险。...关键词:OAuth 同意滥用;假冒微软应用;Entra ID;多因素认证绕过;Graph API;条件访问1 引言多因素认证(MFA)作为现代身份安全的核心防线,已在绝大多数企业环境中广泛部署。...一旦同意,攻击者即获得授权码,兑换为访问令牌(access token)与长期有效的刷新令牌,从而无需再次触发MFA即可持续访问用户邮箱与文件。...);用户点击“接受”,微软返回授权码;应用用授权码向令牌端点兑换访问令牌与刷新令牌;应用使用令牌调用Microsoft Graph API。
://microsoft.com/devicelogin),输入user_code;授权服务器验证用户身份(通常包括MFA)后,将授权授予客户端;客户端通过轮询使用device_code换取访问令牌(access_token...一旦授权完成,攻击者即可通过device_code兑换令牌,获得与用户同等的API访问权限。...与refresh_token;利用令牌调用Microsoft Graph API,读取邮件、日历、联系人,甚至创建新应用或修改权限。...随后,攻击者可使用该令牌调用Graph API:# Example: Read user's mailboxheaders = {'Authorization': f'Bearer {token_json...未来需推动更细粒度的权限委托机制(如Microsoft Graph Delegated Permissions with Scopes Restriction)。另一个挑战是刷新令牌的长期有效性。
文中提供了可落地的技术方案,包括精确匹配的重定向URI白名单配置、条件访问策略绑定设备指纹、自动化影子应用审计脚本等,并通过代码示例验证其有效性。...其核心价值在于解耦资源所有者(用户)与客户端应用之间的凭证传递,转而依赖短期有效的访问令牌(Access Token)与长期有效的刷新令牌(Refresh Token)完成资源访问。...向令牌端点换取访问令牌与刷新令牌;Client使用访问令牌调用受保护资源(如Microsoft Graph API)。...获得令牌后,攻击者通过Microsoft Graph API执行侦察:import requeststoken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.xxxxx"headers...以下Python脚本利用Microsoft Graph API实现自动化审计:import requestsfrom datetime import datetime, timedeltadef audit_shadow_apps
漏洞情况近期,火山信安实验室监测到DataEase其认证机制依赖 JWT 进行用户身份验证,但在受影响的版本中存在签名验证逻辑存在缺陷。...其根本原因为未严格验证 JWT 的签名算法(如允许 none 算法或弱签名密钥),未校验 JWT 的 iss(发行者)、aud(受众)等关键字段,服务器未对无效令牌返回明确的错误响应,导致客户端可能忽略验证失败...0x01漏洞利用方式攻击者无需有效凭据即可访问 DataEase 的管理界面、数据源或仪表盘,甚至可能执行敏感操作(如数据导出、修改配置)。...攻击者可以使用 none 算法绕过签名验证,篡改有效令牌的 sub(用户标识)或 roles(权限)字段,伪造管理员身份,如果服务器使用固定或弱密钥(如 HS256 算法配简单密钥),攻击者可暴力破解或直接复用密钥伪造令牌...,拦截用户请求,替换合法 JWT 为伪造令牌(需结合其他漏洞或配置错误)。
攻击者在后台部署中间人(Adversary-in-the-Middle, AiTM)代理,实时截获授权码、访问令牌及会话Cookie,从而实现对企业邮箱、云存储及协作平台的长期控制。...、第三方授权审计与用户行为验证的纵深防御框架。...Workspace账户的访问权限,从而合法获取高权限令牌。...攻击者服务器立即用该code向Google令牌端点交换访问令牌(access token)和刷新令牌(refresh token):# 攻击者后端:用授权码换取令牌import requestsdef...Graph API支持查询用户授予的同意记录:GET https://graph.microsoft.com/v1.0/me/oauth2PermissionGrantsAuthorization:
• 启用身份验证:确保所有用户都需要进行身份验证才能访问MinIO实例。强制使用安全的认证方法,例如用户名和密码、访问密钥等。...小阑修复建议• 及时更新:确保Joomla及其相关组件和插件保持最新版本,以便修复已知的漏洞。• 访问控制:限制Rest API接口的访问权限,只允许经过身份验证和授权的用户或应用程序访问。...可以通过配置访问控制列表(ACL)、使用API密钥进行身份验证等方式来实现。...• 强化认证机制:采用更强的身份认证机制,如多因素身份验证(MFA)或令牌-based身份验证,以增加攻击者获取合法凭据的难度。...由于Argo CD在验证令牌时没有检查受众声明,导致攻击者可以使用无效的令牌来获取权限。
令牌请求: 客户端使用授权码或其他凭证,向授权服务器请求访问令牌。 令牌颁发: 授权服务器验证客户端并验证授权码,如果验证通过,则颁发访问令牌。...无效重定向URI的检测: 对于恶意客户端的保护,授权服务器应该能够检测到无效的重定向URI。...API访问控制: 在微服务架构中,OAuth 2.0可以用于限制和控制微服务之间的API访问。每个微服务可以充当资源服务器,并通过OAuth 2.0来授权其他服务访问其受保护的资源。...云服务集成: 企业可以使用OAuth 2.0来整合各种云服务,例如使用Google Drive API或Microsoft Graph API,以实现对云存储和办公应用的访问。...区别: OAuth 2.0: 主要关注在资源所有者和客户端之间的授权过程,允许客户端访问资源。 不包含对身份验证的具体规范,仅用于授权。 通常用于访问受保护的资源,如API。
例如,一个仅需读取日历的协作工具,常被授予“完全访问邮箱”权限,一旦该应用令牌泄露,攻击者可直接读取高管邮件。...2.2 攻击链中的角色演变在传统攻击模型中,凭证窃取多用于维持持久化访问;而在当前云原生环境中,它已成为初始访问(Initial Access) 的首选手段。...典型路径如下:钓鱼获取员工凭证(含MFA绕过,如MFA疲劳攻击);登录云控制台(如Azure AD、AWS IAM);枚举高权限账户或服务主体;申请或窃取OAuth令牌/会话Cookie;通过Graph...伪品牌验证流程嵌套:伪造Microsoft登录页后,跳转至“安全验证”页面,要求用户输入短信验证码,实则完成MFA劫持。此类攻击利用用户对协作工具的信任及多任务处理时的认知负荷,显著提升欺骗成功率。...应对这一挑战,组织必须摒弃“边界防护”思维,将身份视为动态、可度量、需持续验证的安全平面。
JWT 身份验证是保护 API 的标准方法之一。这允许无状态身份验证,因为签名令牌是在客户端和服务器之间传递的。在 .NET 8 中,使用 JWT 令牌的方式得到了改进。...xxxxx.yyyyy.zzzzz 更多详情请访问 https://jwt.io/introduction 设置 JWT 令牌身份验证 1....受众:指定令牌的目标受众(通常是使用 API 的客户端或服务)。 ❗️密钥:密钥用于对 JWT 进行签名,以确保其真实性。它应该是一个长而随机的字符串,以防止篡改。...iss ValidateAudience:验证令牌中的 (audience) 声明,以确保它与预期的受众匹配。aud ValidateLifetime:检查令牌的(过期)时间是否有效,令牌是否未过期。...这种方法提供了一种简单而干净的方法来保护您的 API,而不会产生控制器的开销。关键步骤包括配置 JWT 身份验证、生成令牌以及使用最少的代码保护终端节点。
API 终结点 URL OneDrive for Business 资源的访问令牌 在当前令牌到期时生成其他访问令牌的刷新令牌。...onedrive for business使用的是标准的Oauth2流程,所以大概流程就是先获取code,使用code交换access_token,然后就可以调用api了,这里先贴出获取code以及交换...refresh_token': token['refresh_token'], 'grant_type': 'refresh_token', 'resource': 'https://graph.microsoft.com...终结点是https://graph.microsoft.com onedrive的请求api是https://graph.microsoft.com/v1.0/me/drive,但是文档中以及网上教程写的是...https://graph.microsoft.com/me/drive,这也是我认为比较坑的一点 secret需要复制“值”,而不是“机密ID” 完整代码 此处内容需要评论回复后方可阅读 使用实例 1
上一篇结尾我们成功的拿到了 access_token,并且通过 access_token 验证获取到调用Api资源的结果。...此处应该有掌声,成功的通过验证,并且获取到 api资源,但是这种模式是最不推荐的,因为client可能存了用户密码,此模式仅用于受信任的客户端。复制会发生密码泄露。所以不推荐使用。...参数必传 这时候,就又有人问了,为什么这里的 scope 参数的值和上面不一样,确实,我也有这个疑问,后来找到微软官方给我的文档解释道: Microsoft Graph 示例中,该值为 https...://graph.microsoft.com/.default。...此值告知 Microsoft 标识平台终结点:在为应用配置的所有直接应用程序权限中,终结点应该为与要使用的资源关联的权限颁发令牌 使用共享机密访问令牌请求:https://docs.microsoft.com
2.3 会话令牌劫持流程攻击链的关键环节在于令牌的提取与重用。当受害者输入密码并提交后,代理将请求转发至Microsoft。...脚本进行会话重放,验证令牌的有效性并接管账户。...当用户通过Mamba 2FA构建的钓鱼域名(如 fake-login.com)进行认证时,浏览器的WebAuthn API会检测到起源不匹配,拒绝调用私钥进行签名,或者直接生成一个针对钓鱼域名的无效签名...Microsoft服务端验证签名失败,从而阻断攻击。...限制仅允许受信任的IP范围(如公司办公网、已知安全出口)访问核心应用。对于异常地理位置的登录请求,强制要求重新进行高强度的身份验证。最后,启用连续访问评估(CAE)。
API资源表示用户可通过访问令牌访问的受保护数据或功能。API 资源的一个示例是要求授权的 Web API(或 API集合)。...以便: 验证传入的token,确保token来自可信的颁布者(服务器) 验证这个token在这个api中使用是有效的(也就是受众) 看代码: { public void ConfigureServices...“JWT 持有者身份验证中间件还可以支持更高级的方案,例如颁发机构authority 不可用时使用本地证书验证令牌。...: 5.1 使用一个无效客户端id或者密钥请求token 没被注册的客户端,访问时,所以是invalid_client 类比场景:去办理门禁卡,物业没找到你这个业主信息,办个鬼呀 5.2 在请求token...scope的验证要求 被保护的资源webapi中配置plicy.RequireClaim("scope","api2"); 而客户端指定的scope是api1 客户端是有access-token,具有进入系统凭证
在此基础上,提出以“最小授权”“条件访问”“FIDO2强认证”为核心的纵深防御框架。...://microsoft.com/devicelogin),输入user_code;授权服务器验证用户身份(通常包括MFA)后,将授权授予客户端;客户端通过轮询使用device_code换取访问令牌(access_token...权限:勾选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...可行的折中方案包括:仅对高风险用户组(如高管、财务)禁用;启用“连续访问评估”(Continuous Access Evaluation, CAE),使令牌在检测到风险时实时失效;要求所有设备授权请求必须来自合规设备
值得注意的是,攻击者并非仅获取静态密码,而是通过代理中继完成MFA挑战,最终获得有效的OAuth 2.0访问令牌或会话Cookie,实现对邮箱、OneDrive乃至Azure资源的完全控制。...API枚举组织通讯录;部署恶意应用注册(如伪装为“HR Portal”)以持久化访问。...更危险的是,若攻击者已窃取Refresh Token,可长期静默访问API资源,而无需再次交互。...(Token Binding):将访问令牌与客户端TLS证书绑定,防止令牌被盗后在其他设备使用。...结果:未启用Private Link时,代理成功获取会话;启用Private Link后,代理因无法解析内网FQDN失败;启用连续验证后,非常规IP登录被阻断;授权监控规则在30秒内告警新应用注册事件。