Skip to content

Ferramenta CLI em Python para análise de logs de segurança com isolamento por projeto, detecção de ameaças via assinaturas regex e gerenciamento de IPs maliciosos.

Notifications You must be signed in to change notification settings

pwviptbl/LogAnalyse

Repository files navigation

LogAnalyse 2.0 - Security Ops

Ferramenta CLI em Python para análise de logs de segurança com isolamento por projeto, detecção de ameaças via assinaturas regex e gerenciamento de IPs maliciosos.

🚀 Início Rápido

# 1. Carregar assinaturas padrão (SQL Injection, XSS, LFI, etc.)
python assinaturas_padrao.py

# 2. Iniciar a ferramenta
python loganalyse.py

📁 Estrutura

Arquivo Descrição
loganalyse.py CLI principal - ponto de entrada
database.py Camada de dados SQLite
parsers.py Parsers para Apache, PostgreSQL e logs genéricos
analisador.py Motor de análise com pipeline de detecção
assinaturas_padrao.py Script para carregar regras de detecção iniciais
importar_assinaturas.py Importador de assinaturas via arquivo TXT

🛡️ Funcionalidades

Projetos

  • Isolamento completo de dados por projeto/cliente
  • Um IP malicioso no "Projeto A" não afeta o "Projeto B"
  • Métricas e estatísticas por projeto

Assinaturas (Regras de Ataque)

  • Detecção via regex ou texto literal
  • Três níveis de severidade: ALTA, MÉDIA, BAIXA
  • Assinaturas globais (compartilhadas entre projetos)

Importar Assinaturas via TXT

python importar_assinaturas.py assinaturas.txt

Formato do arquivo (separado por ;):

# Comentários começam com #
# padrao;descricao;nivel (1=ALTA, 2=MEDIA, 3=BAIXA)

hacker;Conteúdo Malicioso - Hacking;1
upload;Monitoramento de Upload;3
casino;SEO Spam - Casino;1

Análise de Logs

  • Apache: Combined Log Format
  • PostgreSQL: Logs padrão
  • Genérico: Extração automática de IP e data
  • Rastreabilidade: Cada log suspeito registra o arquivo de origem

Pipeline de Detecção

Linha do Log
    ↓
[Parser extrai IP/Data]
    ↓
[IP é reincidente?] ──Sim──→ suspeito=1, motivo=REINCIDENTE
    ↓ Não                           ↓
[Match com assinatura?]      [Incrementa pontuação]
    ↓ Sim                           ↓
[Registra novo IP]           [INSERT no banco]
    ↓
[INSERT no banco]

❌ Logs não suspeitos são DESCARTADOS (não ocupam espaço)

Exportação para Firewall

  • Lista simples (um IP por linha)
  • Comandos iptables prontos
  • Comandos ufw prontos

💾 Banco de Dados

O banco SQLite (loganalyse.db) é criado automaticamente com as tabelas:

  • projetos - Ambientes/clientes
  • assinaturas - Regras de detecção (globais)
  • ips_maliciosos - IPs suspeitos (por projeto)
  • logs - Eventos de segurança (por projeto, com arquivo_origem)

📊 Exemplo de Uso

=== LOG ANALYSE 2.0 (Security Ops) ===

[MENU PRINCIPAL]
1. Gerenciar Projetos
2. Gerenciar Assinaturas
3. Entrar no Painel de um Projeto
0. Sair

# Após selecionar projeto:

--- PAINEL DO PROJETO: ECIDADE ---
📊 IPs Maliciosos: 42 (Alto Risco: 8)
📋 Logs Suspeitos: 1337

1. Importar Logs
2. Ver IPs Maliciosos
3. Exportar IPs para Firewall
4. Limpar Logs deste Projeto
5. Limpar IPs deste Projeto
0. Voltar

🔧 Requisitos

  • Python 3.7+
  • Sem dependências externas (usa apenas stdlib)

📝 Licença

Uso interno - DBSeller

About

Ferramenta CLI em Python para análise de logs de segurança com isolamento por projeto, detecção de ameaças via assinaturas regex e gerenciamento de IPs maliciosos.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages