Credential Intelligence Tool for SOC
Project description
SOC MRE
Ferramenta defensiva de análise de credenciais vazadas para equipes de SOC. Lê ficheiros na pasta de leaks, cruza com domínios monitorados (pastas sob CTI) e grava resultados em SQLite e ficheiros de blacklist por domínio.
Dependências do sistema
O pacote Python inclui várias bibliotecas; para deteção MIME (python-magic) e UnRAR (rarfile), use conforme o SO:
Linux (Kali / Ubuntu / Debian)
sudo apt install libmagic1 unrar
macOS
brew install libmagic
Instale também as ferramentas UnRAR disponíveis para macOS se precisar de ficheiros .rar.
Windows
pip install python-magic-bin
Para .rar, instale o binário UnRAR (WinRAR / linha de comandos) conforme a documentação do rarfile.
Instalação
cd soc-mre
pip install .
Instalação a partir de um repositório Git
Substitua o URL pelo do seu fork ou organização:
pip install git+https://github.com/SEU-USUARIO/soc-mre.git
Configuração
Gere um ficheiro JSON de exemplo e edite os caminhos (leaks, cti, database_dir):
soc-mre --init-config
Ficheiro padrão: soc_mre.json no diretório atual (alterável com --config).
Primeira execução
Sem soc_mre.json (ou sem database_dir definido) e sem --database-dir na linha de comandos, ao correr:
soc-mre
o programa pede interativamente os caminhos das pastas leaks, CTI e database, cria ./database por omissão se carregar Enter nesse campo, grava a configuração em soc_mre.json e segue para o menu.
Se soc_mre.json já existir com database_dir (e, no modo menu, leaks e cti), o menu abre sem repetir o assistente.
Também pode configurar manualmente o soc_mre.json (chaves usadas pelo programa):
{
"leaks": "/caminho/leaks",
"cti": "/caminho/CTI",
"database_dir": "/caminho/database"
}
Uso interativo
soc-mre --leaks /caminho/leaks --cti /caminho/CTI --database-dir /caminho/database
Ou defina os caminhos no soc_mre.json e execute:
soc-mre
Linha de comando e modo stdin
soc-mre --help
python -m soc_mre --help
Modo pipe (exige CTI válido para localizar a pasta do domínio e exportar blacklist):
rg -i "@exemplo.com" /caminho/leaks | soc-mre --stdin --domain @exemplo.com -c /caminho/CTI -d /caminho/database
Persistência (SQLite)
database.db— criado/atualizado dentro do diretório passado em--database-dir/database_dir. Tabelacredentialscom chave(email, password), modo WAL.- Migração — se existir
masterList.txtnesse diretório na primeira execução, o conteúdo é importado para o SQLite e o ficheiro legado é renomeado paramasterList.txt.bak(mensagem na consola).
Blacklists por domínio
-
Ficheiros exportados seguem o padrão lógico
blackList-<dominio-sanitizado>.txt, mas cada exportação com dados gera um novo ficheiro com timestamp e microssegundos no nome, por exemplo:blackList-exemplo.com.br_2026-05-03_14-30-00-123456.txt -
Não se sobrescrevem exportações anteriores; o histórico acumula-se no disco.
-
Se não houver credenciais para aquele domínio na base, a exportação não cria ficheiro novo (retorno
0). -
O menu continua a carregar credenciais já guardadas a partir do caminho “canónico” da pasta do domínio (
blackList-*.txtexistentes); novas execuções acrescentam ficheiros com timestamp.
Formatos de leak suportados
| Formato | Comportamento |
|---|---|
.txt, .csv |
Leitura em fluxo (linhas em bytes). |
.gz |
Descompressão em fluxo. |
.zip |
Leitura com zipfile sem extrair para disco; vários membros e subpastas internas. |
.7z, .rar, .pdf, .xlsx |
Tratados como formatos lentos: é pedida confirmação no terminal antes de processar; leitura em memória/streaming conforme o tipo (sem extractall para disco nos arquivos compactados). |
Extensões reconhecidas na pasta de leaks estão alinhadas com o que o motor de deteção e o rg (quando instalado) consideram.
Outras dependências Python
Instaladas automaticamente com pip install . (ver pyproject.toml): Rich, tqdm, psutil, python-magic, py7zr, rarfile, pdfplumber, openpyxl.
Avisos de memória
Durante análise de ficheiros muito grandes, pode ser mostrado um aviso se a RAM do sistema ultrapassar um limiar (percentagem configurada no código); o processo não termina so por isso.
Repositório
O código-fonte vive no pacote soc_mre/ (nome com underscore). A pasta soc-mre/ (hífen) é a raiz do projeto instalável.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file soc_mre-1.0.1.tar.gz.
File metadata
- Download URL: soc_mre-1.0.1.tar.gz
- Upload date:
- Size: 26.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8ffd76e977afee5f0d27e23526e89598c62126dcc54419a38e40af25d13c2969
|
|
| MD5 |
cff712b4765a016d19c6fe2b3a802b8f
|
|
| BLAKE2b-256 |
182f2373b70196ab92a1f338426ae5419549b13a7fc54fd7e1252b7045798175
|
File details
Details for the file soc_mre-1.0.1-py3-none-any.whl.
File metadata
- Download URL: soc_mre-1.0.1-py3-none-any.whl
- Upload date:
- Size: 23.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c01792445a8c4a6046549886ae2a3be2a911eabfc2595828fdad5dc8eeef8c9
|
|
| MD5 |
e4f2cba4ba49c6cabc23f2d6137859dd
|
|
| BLAKE2b-256 |
acae3e4da48a60a86615864557778ff3a5362d89b9af051800d13a2f44493004
|