关于GraphRunner
GraphRunner 是一款用于与 Microsoft Graph API 交互的安全测试工具,该工具专为红队和蓝队研究人员设计,可以帮助针对Microsoft Entra ID (Azure AD) 帐户执行网络安全侦查和取证等任务。
功能介绍
1、搜索和导出电子邮件;
2、搜索并导出用户可访问的 SharePoint 和 OneDrive 文件;
3、搜索用户可见的所有 Teams 聊天和频道并导出完整对话;
4、扫描和识别暴露的错误配置邮箱;
5、查找可由用户直接修改的群组,或可滥用成员资格规则来获取访问权限的群组;
6、在所有用户属性中搜索特定术语;
7、利用基于 Graph API 构建的 GUI 收集待测帐户数据;
8、转储条件访问策略;
9、转储应用程序注册和外部应用程序(包括同意和范围)以识别潜在的恶意应用程序;
10、在同意授予安全测试期间完成 OAuth 流程的工具;
11、GraphRunner 不依赖任何第三方库或模块;
12、适用于 Windows 和 Linux;
13、持续刷新 token 包;
工具要求
PowerShell
工具组成
当前版本的GraphRunner由三个独立的部分组成:
GraphRunner.ps1:PowerShell 脚本包含多个模块,用于对Microsoft Entra ID (Azure AD) 目标帐户进行网络安全侦察、持久化和信息安全取证。
2、GraphRunnerGUI.html:一个与访问令牌一起使用的 HTML 图形用户界面。提供各种模块,用于枚举和从 Outlook、SharePoint、OneDrive 和 Teams 等服务中收集数据。
3、PHP重定向器:一个基本的 PHP 脚本,可用于在 OAuth 同意流程中捕获 OAuth 授权码,以及一个 Python 脚本,用于自动完成获取访问令牌的流程。
工具安装
广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clonehttps://github.com/dafthack/GraphRunner.git
工具使用
GraphRunner的大多数都依赖于经过身份验证的访问令牌。为了协助实现这一点,有多个模块用于获取和使用用户和应用程序(服务主体)令牌。
在使用该工具之前,需要确保导入工具的PowerShell脚本,并运行Get-GraphTokens模块即可:
Import-Module .\GraphRunner.ps1 Get-GraphTokens
工具运行演示
许可证协议
本项目的开发与发布遵循MIT开源许可协议。
项目地址
GraphRunner:【GitHub传送门】