
Cyber Threat Intelligence (CTI) usando fontes e indicadores de ameaças nacionais, ou até globais, mas com evidencias ou indicadores nacionais do Brasil 🌎
O BRIntelcollector é uma ferramenta de Cyber Threat Intelligence (CTI) focada em indicadores de ameaças nacionais do Brasil. A ferramenta permite pesquisar e consolidar informações sobre ameaças cibernéticas através de múltiplas fontes de inteligência, facilitando a criação de um banco de dados centralizado para análise de segurança.
Atualmente, a ferramenta integra duas principais fontes de inteligência:
É necessário obter chaves de API das seguintes plataformas:
Importante: A chave da IBM deve estar no formato chave:senha codificado em Base64.
pip3 install BRIntel1
Crie um arquivo .env com suas credenciais:
echo "OTX_KEY = '<sua chave>'" > .env
echo "IBM_KEY = '<sua chave + senha em base64>'" >> .env
Exemplo de codificação da chave IBM:
echo -n "sua_chave:sua_senha" | base64
from BRIntel import allSources
# Retorna uma lista com dicionários contendo todos os dados das fontes
resultados = allSources("Termo de busca")
from BRIntel import default
# Retorna uma lista com dicionários em formato padronizado
resultados = default("Termo de busca")
A função default() retorna os dados no seguinte formato:
from BRIntel import xfe
# Busca no XFE (retorna formato STIX 2.1)
resultados_xfe = xfe.search("Termo de busca")
# Exibir em formato padrão
xfe.show(resultados_xfe[0])
# Obter detalhes completos de um relatório específico
detalhes = xfe.details(resultados_xfe[0]["id"])
from BRIntel import otx
# Busca no OTX (retorna formato aberto de pulse OTX)
resultados_otx = otx.search("Termo de busca")
# Exibir em formato padrão
otx.show(resultados_otx[0])
# Obter detalhes completos de um pulse específico
detalhes = otx.details(resultados_otx[0]["id"])
from BRIntel import default
# Buscar por um domínio suspeito
resultados = default("exemplo.com.br")
for resultado in resultados:
print(f"Título: {resultado['title']}")
print(f"Autor: {resultado['author']}")
print(f"TLP: {resultado['tlp']}")
print(f"URL: {resultado['url']}")
print("-" * 50)
from BRIntel import otx, xfe
# Buscar em ambas as fontes
resultados_otx = otx.search("malware Brasil")
resultados_xfe = xfe.search("malware Brasil")
# Obter detalhes do primeiro resultado de cada fonte
if resultados_otx:
detalhes_otx = otx.details(resultados_otx[0]["id"])
print("Detalhes OTX:", detalhes_otx)
if resultados_xfe:
detalhes_xfe = xfe.details(resultados_xfe[0]["id"])
print("Detalhes XFE:", detalhes_xfe)
from BRIntel import allSources
# Buscar em todas as fontes com dados completos
todas_fontes = allSources("phishing")
print(f"Total de resultados encontrados: {len(todas_fontes)}")
for item in todas_fontes:
print(f"Fonte: {item.get('fonte', 'N/A')}")
print(f"Título: {item.get('title', 'N/A')}")
A ferramenta utiliza o padrão TLP para classificação de compartilhamento de informações:
Mais informações: https://www.gov.br/cisc/pt-br/tlp
Para contribuir com o projeto, visite o repositório no GitHub: https://github.com/devfoundsec/BRIntelcollector
Para reportar bugs ou solicitar recursos, abra uma issue no GitHub do projeto.
Desenvolvido por: devfoundsec
Repositório: https://github.com/devfoundsec/BRIntelcollector
| Campo | Descrição |
|---|
title | Título do pulse/relatório |
description | Descrição detalhada do pulse/relatório |
author | Nome do autor |
created | Data de criação |
Modified | Data da última modificação |
tlp | Traffic Light Protocol (classificação de compartilhamento) |
url | URL do pulse/relatório |