Skip to main content

Teams Forensic Investigation & Data Export Tool

Project description

TeamsReaver Banner

TeamsReaver: Teams Forensic Investigation & Data Export Tool

TeamsReaver é uma ferramenta de perícia computacional e exfiltração de dados desenvolvida para análise, busca e extração automatizada de informações do Microsoft Teams através da Microsoft Graph API.

Funcionalidades Principais

A ferramenta oferece três modos principais de operação para investigações:

  • Busca por Termos e Arquivos com Extração de Contexto: Ao realizar uma busca por termos (ex: apikey, senha) ou nomes de arquivos específicos (ex: documento.pdf, planilha.xlsx), a ferramenta não extrai apenas a mensagem ou anexo isolado. Caso um "match" seja encontrado no conteúdo da mensagem ou no nome de um arquivo, o histórico completo daquela conversa é baixado automaticamente, incluindo todos os anexos vinculados.
  • Extração Completa 1:1: Permite baixar todo o histórico de mensagens e arquivos trocados entre dois usuários específicos, sendo ideal para investigações direcionadas de conduta ou vazamento de informações.
  • Flexibilidade de Varredura Temporal:
    • Deep Sweep (Padrão): Se nenhum filtro de data for aplicado, a ferramenta realiza uma varredura completa desde a primeira mensagem do usuário.
    • Fast Search (-Fast): Varredura focada nos últimos X dias.
    • Data Específica (-Date): Alvo em um dia exato de incidente.

Público-Alvo e Casos de Uso

  1. Defensivo (Hunting, CTI, DLP e Blue Team): Projetado para investigações onde o Microsoft Purview se mostra limitado. O Purview pode levar horas para processar buscas e frequentemente entrega resultados fragmentados. O TeamsReaver entrega os dados de forma imediata, organizada em pastas e com todos os anexos vinculados.
  2. Ofensivo (Pentesters e Red Teamers): Essencial em cenários de Cloud Pentest. Se uma Enterprise Application for comprometida com permissões de leitura, a ferramenta permite exfiltrar comunicações sensíveis de forma rápida e silenciosa.

Instalação e Configuração

Via Pip (Recomendado)

Agora você pode instalar o TeamsReaver diretamente via pip:

pip install teamsreaver

Após a instalação, o comando teamsreaver estará disponível globalmente no seu terminal.

Dica (Windows/Linux/Mac): Caso receba um erro de "comando não encontrado" após instalar, você pode rodar a ferramenta utilizando o Python diretamente:

python -m teamsreaver -TargetUPN usuario ...

Adicionando ao PATH (Caso o comando acima falhe)

Se você deseja usar apenas o comando teamsreaver e o sistema não o reconhecer, adicione a pasta de scripts do Python ao seu PATH:

Windows (PowerShell)

# Descubra onde o Python guarda os scripts
$path = python -c "import sysconfig; print(sysconfig.get_path('scripts'))"
# Adicione ao PATH do usuário atual
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";$path", "User")

Reinicie o terminal após rodar os comandos.

Linux / macOS (Bash/Zsh)

# Adicione ao seu .bashrc ou .zshrc
echo 'export PATH="$PATH:$(python3 -m site --user-base)/bin"' >> ~/.zshrc
source ~/.zshrc

Configuração Inicial

Na primeira execução, a ferramenta iniciará um modo interativo no terminal solicitando as credenciais da sua Enterprise Application no Azure (Client ID, Secret, Tenant ID e o Domínio Padrão).

As configurações serão salvas automaticamente em ~/.reaverconf no seu diretório de usuário.

Configuração de Permissões (Microsoft Graph)

A ferramenta requer permissões de nível de Application no Microsoft Graph:

Módulo de Mensagens

  • User.Read.All: Mapeamento de usuários.
  • Chat.Read.All: Leitura de históricos de chat.

Módulo de Arquivos e Anexos

  • Files.Read.All: Download de anexos.
  • Sites.Read.All: Acesso a arquivos em canais/SharePoint.
  • Group.Read.All: Metadados de grupos.

Nota sobre acessos:

  • Se possuir apenas Chat.Read.All, a ferramenta extrairá todos os textos, mas não baixará os arquivos.
  • Caso tenha apenas acesso a arquivos (Files.Read.All) sem acesso aos chats, utilize a ferramenta GraphDump ([LINK_AQUI]).

Como Utilizar

Exemplos Práticos

# Busca termos especificos em um usuario alvo:
teamsreaver -TargetUPN usuario -SearchTerms "senha","chave"

# Busca um termo em TODOS os usuarios em uma data especifica:
teamsreaver -SearchTerms "senha" -Date "01/05/2026"

# Extrai toda a conversa entre dois usuarios:
teamsreaver -TargetUPN usuario -TargetTwo outro_usuario

# Busca parcial (ex: AKIA) em todos nos ultimos 30 dias:
teamsreaver -Fast 30 -SearchTerms "AKIA"

# Busca por um nome de arquivo especifico em todo o tenant:
teamsreaver -SearchTerms "relatorio.xlsx"

# Busca combinando alvo, termo e data:
teamsreaver -TargetUPN "admin" -SearchTerms "backup" -Date "20/04/2026"

Estrutura de Exportação

Os resultados são organizados para facilitar a custódia da prova:

Matches_Export_usuario/
├── Nome_Participante_ID/
│   ├── Nome_Participante.txt  <-- Histórico completo do chat onde houve o match
│   └── Files/                 <-- Todos os anexos daquela conversa

Disclaimer

O uso desta ferramenta para fins ilícitos não é apoiado. O TeamsReaver foi criado exclusivamente para auxiliar estudos, técnicas de segurança e profissionais de Blue e Red Team em atividades autorizadas. O desenvolvedor não se responsabiliza pelo uso indevido da ferramenta.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

teamsreaver-0.2.7.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

teamsreaver-0.2.7-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file teamsreaver-0.2.7.tar.gz.

File metadata

  • Download URL: teamsreaver-0.2.7.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for teamsreaver-0.2.7.tar.gz
Algorithm Hash digest
SHA256 ddad2495a134cd958439aac10623bed173076f080b7c80cd72267b9e6eda1973
MD5 320986efc8ea075db6de015b45ef4822
BLAKE2b-256 79b1a1ad0d45a060d88525fac1777f688cee40ff64dad22f00f9670937c8cd81

See more details on using hashes here.

File details

Details for the file teamsreaver-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: teamsreaver-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for teamsreaver-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c64ac828e831c52a565b598b97ceda72f93eba1d6737fc729668e90d2690cb08
MD5 9af785e00256ec0b6b5abd99e2c2c936
BLAKE2b-256 9a4b15ff204d7caf32d66659df021f31f9ee014146354c06c3a8f479d33569ed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page