这不是科幻剧情,而是正在全球蔓延的真实攻击。...“您的 OneDrive 存储即将锁定,请验证设备以继续使用。”...向 Azure AD 请求设备代码client_id = "ATTACKER_APP_ID" # 攻击者注册的恶意应用IDscope = "https://graph.microsoft.com/.default"resp...print("❌ 授权失败:", token_resp.text)break一旦拿到 access_token,攻击者即可调用 Microsoft Graph API 执行任意操作:# 示例:读取受害者最近...推荐策略:对包含 offline_access(即请求 Refresh Token)的授权请求强制执行 MFA;阻止从未知国家/地区的登录尝试;对非托管设备(如个人手机)限制访问敏感数据。4.
此类攻击不依赖凭据窃取,而是滥用OAuth 2.0授权框架中的“用户同意”流程,使恶意应用获得长期有效的刷新令牌(refresh token),进而通过Microsoft Graph API静默读取邮件...);用户点击“接受”,微软返回授权码;应用用授权码向令牌端点兑换访问令牌与刷新令牌;应用使用令牌调用Microsoft Graph API。...或Microsoft官方图标;重定向URI:指向攻击者控制的服务器(用于接收授权码);API权限:请求高危权限组合,例如:["Mail.Read","MailboxSettings.ReadWrite"...(url, data=data).json()随后,通过Graph API执行恶意操作:# 读取最近100封邮件headers = {'Authorization': f'Bearer {access_token...未来工作将聚焦于权限最小化自动化推荐、应用开发者信誉链构建,以及跨租户授权行为的联邦式监控。唯有将“零信任”原则深度融入OAuth治理,才能真正实现云身份安全的可持续防护。
以Microsoft Entra ID(原Azure AD)为例,设备授权端点为:POST https://login.microsoftonline.com/{tenant}/oauth2/v2.0/.../devicelogin and enter the code ABC123 to authenticate."}随后,客户端以固定间隔轮询令牌端点:POST https://login.microsoftonline.com...Graph API,读取邮件、日历、联系人,甚至创建新应用或修改权限。...假设攻击者已注册一个Azure AD应用,client_id为“a1b2c3d4-5678-90ef-ghij-klmnopqrstuv”,并申请了以下API权限:Microsoft Graph: Mail.ReadWrite...未来工作可进一步探索基于行为分析的异常授权检测模型,以及零信任架构下OAuth令牌的动态生命周期管理。编辑:芦笛(公共互联网反网络钓鱼工作组)
本文描述了应设置的Entra ID设置和配置以提高安全性,包括:用户默认配置访客默认设置用户应用程序同意和权限保护Entra ID角色特权角色成员保护角色可分配组配置高特权应用程序条件访问策略合作伙伴访问保护...访客默认操作:将访客用户访问限制从"访客用户具有与成员相同的访问权限(最包容)"更改为"访客用户访问仅限于其自身目录对象的属性和成员资格(最严格)"用户应用程序同意和权限默认值最初在Azure AD/Entra...保护特权角色成员资格确保高特权角色中没有标准用户帐户作为成员确保角色成员是符合条件的,而不是永久的确保成员被要求使用MFA保护角色可分配组(RAGs)角色可分配组是安全组或Microsoft 365组,...创建它们是为了解决组被添加到Entra ID角色且组管理员可以修改成员资格的潜在问题。只有全局管理员或特权角色管理员可以创建角色可分配组并管理它们(成员资格)。角色可分配组的所有者可以管理它们。...当合作伙伴请求访问客户环境时提供。当客户接受此请求时:合作伙伴租户中的"管理代理"角色被提供对客户租户的有效"全局管理员"权限。
以Microsoft Entra ID为例,设备授权端点为:POST https://login.microsoftonline.com/{tenant}/oauth2/v2.0/devicecodeContent-Type...https://microsoft.com/devicelogin,增强迷惑性;请求高权限范围(如Directory.ReadWrite.All、Mail.ReadWrite),以实现横向移动与数据窃取...留空(设备授权无需回调)API权限:勾选Microsoft Graph的Delegated权限,如:Mail.ReadWriteCalendars.ReadWriteUser.Read.AllFiles.ReadWrite.All4.2...Graph API读取邮件:import requestswith open('stolen_token.json') as f:token = json.load(f)headers = {'Authorization...可行的折中方案包括:仅对高风险用户组(如高管、财务)禁用;启用“连续访问评估”(Continuous Access Evaluation, CAE),使令牌在检测到风险时实时失效;要求所有设备授权请求必须来自合规设备
其标准流程如下:用户在受限设备上请求访问资源(如OneDrive);设备向授权服务器(如Azure AD)发起请求,获取一个设备代码(device_code)和用户验证码(user_code);用户被引导至...# 攻击者侧:使用Microsoft Graph API发起设备代码请求(简化示例)import requestsclient_id = "attacker-controlled-app-id" # 攻击者注册的恶意应用...breaktime.sleep(5)拿到Token后,攻击者即可调用Microsoft Graph API,读取邮件、日历、OneDrive文件、Teams消息,甚至发送新邮件冒充受害者——全程无需知道密码...例如,若某账户在短时间内从不同国家调用Graph API,即使Token合法,也应触发二次验证。(4)员工意识培训需升级传统“别点可疑链接”已不够。...培训应聚焦:任何要求“输入代码到微软登录页”的请求都需高度警惕;即使链接是 microsoft.com,也可能被用于授权恶意应用;授权前务必确认应用名称是否可信(如“Microsoft Teams” vs
2025年英国议会成员遭遇的系列鱼叉式钓鱼事件表明,攻击者已具备深度情报收集能力,能够结合目标个体的政治议程、公开言论与机构职能定制高度可信的诱饵内容。...例如,发送一封看似来自《卫报》记者的邮件:“我们正在撰写关于您提案的报道,请在此OneDrive链接中查看事实核查草稿”,链接指向攻击者控制的SharePoint站点,页面模仿Microsoft登录界面...(2.3)凭证窃取与MFA绕过钓鱼页面常集成实时转发功能,用户输入用户名密码后,攻击者立即用其向真实服务发起登录请求,并将MFA推送通知转发至自身设备:// 钓鱼后端实时代理登录请求app.post('...部分样本还部署了基于OAuth应用的持久化后门:POST https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messageRulesAuthorization...(5.1)系统架构前端:Outlook插件,提供举报按钮与可疑链接预览;中台:基于Microsoft Graph API的行为分析引擎;后台:条件访问策略管理与OAuth授权审计模块。
一、一场“巧合”的攻击暴露了更危险的趋势2025年10月,一家位于德国的能源企业安全团队在例行日志审计中发现异常:多个高管账户在凌晨时段调用了Microsoft Graph API,读取了大量内部邮件和...标准流程如下:受限设备向授权服务器(如Azure AD)请求设备代码;服务器返回一个短时效的device_code和用户需手动输入的user_code;用户被引导至 https://microsoft.com...此时,受害者实际上是在向攻击者控制的应用授权!一旦确认,攻击者的轮询脚本立即获得Access Token,并可调用任意Graph API权限。...公共互联网反网络钓鱼工作组技术专家芦笛解释,“微软服务器看到的是正常API调用,防火墙看到的是HTTPS流量,EDR看到的是合法进程——没有任何异常信号。”...API创建新账户;通过Exchange Online PowerShell执行邮箱导出;部署Cobalt Strike Beacon,最终投放勒索软件。
AD中的组成员身份以递归方式应用,假设我们有三个组: Group_A Group_B Group_C Group_C是Group_B的成员,而Group_B本身又是Group_A的成员,当我们将...,如前所述用户帐户将继承用户所属(直接或间接)组中设置的所有资源权限,如果Group_A被授予在AD中修改域对象的权限,那么发现Bob继承了这些权限就很容易了,但是如果用户只是一个组的直接成员,而该组是...权限 writeDACL权限允许身份修改指定对象的权限(换句话说就是修改ACL),这意味着通过成为组织管理组的成员,我们能够将权限提升到域管理员的权限,而为了利用这一点,我们将之前获得的用户帐户添加到...writeDACL权限,该工具将枚举该域的ACL的所有ACE,ACE中的每个身份都有自己的ACL,它被添加到枚举队列中,如果身份是一个组并且该组有成员,则每个组成员也被添加到枚举队列中,正如您可以想象的那样...(几乎可以控制域中的所有组) 如果使用-upgrade-user标志指定了现有用户,则在可以执行ACL攻击的情况下,该用户将被授予复制权限,如果使用组攻击则该用户将被添加到高权限组,如果没有指定现有用户
CA服务器检查客户端是否可以请求证书。如果可以,它将通过查找CSR中指定的证书模板AD对象来确定是否发放证书。 CA将检查证书模板AD对象的权限,以判断验证帐户是否可以获取证书。...AD CS规定,在企业CA上启用证书模板是通过将模板名称添加到AD对象的certificatetemplates字段来实现的。...AD CS 枚举工具 Certify是一个使用C#编写的工具,可以枚举有关AD CS环境的有用配置和基础结构信息,并可以以多种不同的方式请求证书。...如果在AD环境中安装了Microsoft Exchange,通常会发现用户帐户甚至计算机作为该组的成员。 这个GitHub存储库解释了滥用这个组权限来提升权限的一些技术。...Organization Management 该组也存在安装了Microsoft Exchange的环境中。 该组的成员可以访问所有域用户的邮箱。
从内部威胁的角度来看,这可能是一个严重的威胁。尤其是在本文末尾探讨的这个问题的检测部分。 我还发现了一个似乎相关的 API,这意味着攻击者无需访问 Azure AD 门户即可执行此操作。...攻击者将“Azure 资源的访问管理”选项切换为“是”,这会将 Azure AD 帐户添加到适用于所有订阅的根级别的 Azure RBAC 角色“用户访问管理员”。 4....攻击者更新 Azure 角色成员资格以在 Azure VM 上运行命令: 为此帐户设置“所有者”权限是显而易见的(并且可以将帐户添加到虚拟机管理员)。...回到本地,然后我运行 Active Directory 模块 PowerShell 命令以获取域管理员组的成员身份,我们可以看到该帐户已添加。...攻击者可以破坏 Office 365 全局管理员,切换此选项以成为 Azure IAM“用户访问管理员”,然后将任何帐户添加到订阅中的另一个 Azure IAM 角色,然后将选项切换回“否”和攻击者来自用户访问管理员
Google Workspace与Microsoft Entra ID(原Azure AD)用户实施精准攻击。...,即使用户登出仍有效;Access Token:短期有效(通常1小时),但可用于调用Microsoft Graph API。...例如,若受害者通常使用Windows 11 + Chrome 124访问Office 365,攻击者将配置代理以相同特征发起API请求,使登录活动在审计日志中呈现为“正常行为”。...Microsoft Graph提供/revokeSignInSessions API,可编程终止可疑会话:import requestsdef revoke_suspicious_sessions(user_id...;自动化响应闭环:将威胁情报、UEBA与API控制联动,实现“检测-响应-修复”一体化。
这种高频、合法的使用模式使得攻击者可轻易将恶意链接嵌入伪造的业务邮件中,例如:“您有一份待审阅的Q3财报,请点击此处查看”。...更关键的是,SharePoint支持动态生成临时共享链接,且可通过Microsoft Graph API进行程序化管理。...(如普通员工创建大量登录页面)以下Python脚本示例展示如何通过Microsoft Graph API审计可疑共享项:import requestsimport jsondef detect_suspicious_sharing...五、防御体系构建5.1 权限最小化原则禁用非必要用户的“外部共享”权限对文档库设置“仅组织内成员可访问”审计并清理长期有效的匿名共享链接5.2 条件访问策略强化在Azure AD中配置策略:禁止从非托管设备访问...未来工作将聚焦于利用AI模型对SharePoint页面内容进行语义级风险评分,以及推动行业标准要求SaaS平台对用户上传的可执行内容实施更严格的沙箱隔离。
阶段3:凭据窃取与会话劫持钓鱼页面采用 动态加载技术,仅当检测到用户输入账号后,才请求密码字段,以规避静态扫描。...OAuth 授权请求,诱导用户授权恶意应用访问其 Office 365 数据,从而绕过密码直接获取 API Token。...阶段4:横向移动与持久化一旦获得有效凭据,攻击者立即使用 合法工具(如 PowerShell + Azure AD Graph API) 进行内网侦察:# 示例:使用窃取的凭据查询Azure AD用户列表...“企业往往以为启用了 MFA 就高枕无忧,但钓鱼攻击正在进化到能绕过 MFA 的阶段。”...更值得警惕的是,部分攻击者开始结合中文语境设计诱饵,如“钉钉安全中心通知:您的企业组织存在成员异常,请立即验证”。“中国企业的数字化程度高,但安全意识参差不齐。”
托管 GMSA 服务帐户的计算机从 Active Directory 请求当前密码以启动服务。 配置 GMSA 以允许计算机帐户访问密码。...此 GMSA 是域管理员组的成员,该组对域具有完全的 AD 和 DC 管理员权限。屏幕截图显示密码最近更改了,几周内不会更改 - 更改于 2020 年 5 月 11 日,并配置为每 30 天更改一次。...更重要的是,这个密码哈希是不正确的。Microsoft 将 GMSA 凭证加载到 LSASS 中,但似乎没有使用它。...此属性控制谁可以请求和接收明文密码。 枚举组“SVC-LAB-GMSA1 Group”的成员身份时,有计算机、用户和另一个组(“Server Admins”),因此让我们检查该组的成员。...减轻 确定实际需要的权利,并确保只有所需的有限权利适用于 GMSA。 不要添加到 AD 特权组,除非使用 GMSA 的服务器仅限于第 0 层(域控制器)。
典型路径如下:钓鱼获取员工凭证(含MFA绕过,如MFA疲劳攻击);登录云控制台(如Azure AD、AWS IAM);枚举高权限账户或服务主体;申请或窃取OAuth令牌/会话Cookie;通过Graph...典型场景包括:邮件+Teams/Slack消息联动:先发送看似合法的发票邮件,再通过即时通信工具“跟进”:“您收到财务部的付款请求了吗?请尽快确认。”...5.3 SOAR联动强制轮换(TheHive/Cortex 示例)当Stealer Logs中出现user@company.com:password123,SOAR工作流自动执行:调用Microsoft...本文提出的四层防御体系——以无密码认证消除攻击面、以行为分析实现精准检测、以自动化响应压缩攻击窗口、以管理流程固化安全文化——构成了面向身份面的纵深防御闭环。...然而,在此过渡期内,强化凭证管理、收紧权限控制、缩短检测响应时间,仍是企业抵御高级威胁的最现实路径。编辑:芦笛(公共互联网反网络钓鱼工作组)
"); } } 然后,我们可以在Startup.Configure()中的UseEndpoints()方法中调用MapGraphVisualisation("/graph")将图形终结点添加到我们的.../Values/{...}/"] 7 [label="/api/Values/ HTTP: GET"] 8 [label="/api/Values/ HTTP: POST"] 9...将图形可视化工具添加为中间件分支 在您进行终结点路由之前,将分支添加到中间件管道是创建“终结点”的最简单方法之一。...安装Microsoft.AspNetCore.Mvc.Testing 将测试项目的元素更新为Microsoft.NET.Sdk.Web"> 从测试项目中引用您的...GenericWebHostService 启动: 中间件管道已建立 服务器(Kestrel)开始侦听请求。 需要注意的重要一点是,直到您的IHostedServices的执行后中间件管道才会建立。
然而,近年来以“钓鱼即服务”(Phishing-as-a-Service, PhaaS)模式运作的商品化工具包大幅降低了攻击门槛。...该工具包以即用型套件形式在地下论坛销售,售价约200–500美元/月,使得无技术背景的犯罪分子亦可发起专业级攻击。...ID(原Azure AD)的复杂认证流程支持有限。...Token通过Microsoft Graph API访问邮箱、OneDrive等资源,实现持久化控制。...未来工作将探索基于浏览器扩展的实时钓鱼页比对技术,为用户提供最后一道防线。编辑:芦笛(公共互联网反网络钓鱼工作组)
Semantic Kernel (SK) 是一个开源的将大型语言模型(LLM)与流行的编程语言相结合的SDK,Microsoft将Semantic Kernel(简称SK)称为轻量级SDK,结合了OpenAI...由于SK来自Microsoft,因此它有一个用于Microsoft Graph [14]的OOTB插件集成了大量的Microsoft 服务。...若要成功执行此操作,应用程序需要具有跟踪功能。 性能优化:通过跟踪应用程序性能指标,您可以确定瓶颈和需要优化的区域。这种数据驱动的方法可确保应用程序以最佳状态运行,从而增强用户体验。...使用Semantic Kernel记录和计量请求有几个主要好处: 您可以轻松跟踪 API 使用情况和成本,因为每个令牌对应于一个计费单位。...您还可以比较不同模型和参数的令牌使用情况,以找到适合您的使用案例的最佳设置。 您可以排查请求期间可能发生的任何问题或错误,因为每个请求都会记录其提示、完成和令牌计数。
Graph API 的代码示例,验证防御措施的可行性。...邀请可通过以下方式发起:手动邀请:管理员或具有“Guest Inviter”角色的用户通过 Azure 门户、Microsoft Graph API 或 PowerShell 发送邀请。...一旦获得权限,攻击者可通过 Microsoft Graph API 发送邀请。...此致,Microsoft 账单团队"@}New-MgInvitation -BodyParameter $inviteParams该请求将触发微软后端服务生成一封来自 invites@microsoft.com...默认情况下,所有成员用户均可邀请访客,应通过以下步骤限制:登录 Entra 管理中心;导航至 外部标识 > 外部协作设置;将“成员用户可邀请”设置为 否;明确指定可邀请的用户组或角色(如“B2B Inviters