Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Sentinel-GPT — Pipeline automatizado de caça a ameaças que consome logs do Azure, usa raciocínio de LLM para detectar atividades suspeitas, avaliar riscos e gerar playbooks de remediação com comandos CLI. | Kitploit
Ferramentas/GitHubGitHub/ayush-parab/sentinel-gpt
Segurança na NuvemInteligência de AmeaçasAprendizado e EducaçãoResposta a IncidentesSegurança de IAAnálise de Logs
GitHubayush-parab/sentinel-gpt

Sentinel-GPT

Pipeline automatizado de caça a ameaças que consome logs do Azure, usa raciocínio de LLM para detectar atividades suspeitas, avaliar riscos e gerar playbooks de remediação com comandos CLI.

Ver Repositório
há 6 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Sentinel-GPT: IA Agente para Caça a Ameaças 🛡️

Um pipeline automatizado de cibersegurança que transforma logs brutos do Azure em inteligência acionável usando raciocínio baseado em LLM.

Python Azure OpenAI Security License

📖 Visão Geral

O Sentinel-GPT é um Agente de IA especializado em caça a ameaças em cibersegurança. Ele é integrado ao Azure Log Analytics Workspace, que é a fonte dos logs gerados, e à API ChatGPT da OpenAI, que é o cérebro deste agente. Fornecemos logs ao agente, que é treinado para identificar atividades suspeitas, caçar ameaças e alertar o usuário sobre elas, além de fornecer as etapas de remediação.

⚠️ O Problema & A Solução

  • O Problema: No mundo moderno, a maioria das empresas e negócios, grandes ou pequenos, migrou completamente para a nuvem ou usa uma configuração de nuvem híbrida. Com o tamanho das redes, milhões de logs e alertas são gerados a cada semana. Os analistas de SOC sofrem de "fadiga de alertas e logs", dificultando a distinção entre pequenas configurações incorretas e violações reais.
  • A Solução: Um pipeline agêntico que realiza análise nos inúmeros logs. Ele não apenas sinaliza os erros, mas também entende o contexto da violação, avalia o risco e o impacto e cria um plano de remediação instantaneamente.

🏗️ Arquitetura

  1. Ingestão: Script Python consulta o Azure Log Analytics usando KQL para os logs relevantes
  2. Contextualização: Os logs são estruturados e prompts de sistema são fornecidos ao Agente para dar a ele uma persona de Caçador de Ameaças
  3. Análise (O Cérebro): Os dados são enviados ao LLM escolhido da OpenAI para análise
  4. Saída: Gera um Relatório Abrangente de Inteligência de Segurança

🚀 Principais Funcionalidades

  • Integração perfeita entre Azure e OpenAI ChatGPT, extensível a outras nuvens.
  • Tradução de blobs complexos de logs JSON em resumos executivos em inglês simples.
  • Playbooks de Remediação Automatizada: Ações específicas e comandos CLI (Azure CLI/PowerShell) para isolar recursos comprometidos.

🛠️ Início Rápido & Configuração

Pré-requisitos

  • Assinatura do Azure com um Log Analytics Workspace.
  • Chave da API OpenAI (GPT-4.1 recomendado para raciocínio complexo).
  • Python 3.10+

Instalação

  1. Clone o repositório:
root@kitploit:~
git clone https://github.com/Ayush-Parab/cybersecurity-agentic-AI
cd cybersecurity-agentic-AI
  1. Instale as dependências
root@kitploit:~
pip install -r requirements.txt
  1. Configure o Ambiente Crie um arquivo .env:
root@kitploit:~
OPENAI_API_KEY="your_key"
LOG_ANALYTICS_WORKSPACE_ID="your_id"

📊 Exemplo de Saída

Logs de entrada:

root@kitploit:~
TimeGenerated,Status,User,IPAddress,Computer,SyslogMessage
2026-02-12 02:00:15.912351+00:00,Failure,,,Test-VM-For-Logs,Connection closed by invalid user  98.80.4.65 port 35908 [preauth]
2026-02-12 02:00:15.706067+00:00,Failure,,98.80.4.65,Test-VM-For-Logs,Invalid user  from 98.80.4.65 port 35908
2026-02-12 01:59:38.275807+00:00,Success,Ayush,103.38.69.120,Test-VM-For-Logs,Accepted password for Ayush from 103.38.69.120 port 31551 ssh2
2026-02-12 01:59:24.542329+00:00,Failure,,,Test-VM-For-Logs,Connection reset by invalid user balloon 103.38.69.120 port 31573 [preauth]
2026-02-12 01:59:22.850922+00:00,Failure,balloon,103.38.69.120,Test-VM-For-Logs,Failed password for invalid user balloon from 103.38.69.120 port 31573 ssh2
2026-02-12 01:59:17.554208+00:00,Failure,balloon,103.38.69.120,Test-VM-For-Logs,Failed password for invalid user balloon from 103.38.69.120 port 31573 ssh2
2026-02-12 01:59:13.693935+00:00,Failure,,103.38.69.120,Test-VM-For-Logs,Invalid user balloon from 103.38.69.120 port 31573
2026-02-12 01:59:06.649583+00:00,Failure,,,Test-VM-For-Logs,Connection reset by invalid user hamster 103.38.69.120 port 31890 [preauth]
2026-02-12 01:59:03.577720+00:00,Failure,hamster,103.38.69.120,Test-VM-For-Logs,Failed password for invalid user hamster from 103.38.69.120 port 31890 ssh2
2026-02-12 01:58:55.777039+00:00,Failure,hamster,103.38.69.120,Test-VM-For-Logs,Failed password for invalid user hamster from 103.38.69.120 port 31890 ssh2
2026-02-12 01:58:51.167792+00:00,Failure,,103.38.69.120,Test-VM-For-Logs,Invalid user hamster from 103.38.69.120 port 31890
2026-02-12 01:54:50.302217+00:00,Success,Ayush,103.38.69.120,Test-VM-For-Logs,Accepted password for Ayush from 103.38.69.120 port 31565 ssh2

Análise do Sentinel-GPT:

root@kitploit:~
Sim — isto parece suspeito.

O que se destaca
- 103.38.69.120: Múltiplas tentativas de “Invalid user/Failed password” (hamster/balloon), seguidas de logins SSH com senha bem-sucedidos para Ayush às 01:54:50 e 01:59:38 em Test-VM-For-Logs. Isso é consistente com força bruta/preenchimento de credenciais seguido de sucesso. Verifique com Ayush se ambos os logins são esperados desse IP.
- 98.80.4.65: Sonda única de usuário inválido — provavelmente varredura genérica, bloquear se não for necessário.

Ações imediatas (prioridade Azure)
- Conter: Bloquear 103.38.69.120 no NSG/Azure Firewall. Restringir TCP/22 apenas a IPs confiáveis ou fechá-lo e usar Azure Bastion ou acesso Just-In-Time do Defender for Cloud.
- Credenciais: Se algum login do Ayush não for reconhecido, redefinir a senha/chaves SSH do Ayush, invalidar credenciais em cache, remover do sudoers se não for necessário e encerrar sessões SSH ativas.
- Hardening SSH: Desabilitar autenticação por senha (PasswordAuthentication no), impor chaves SSH ou AADLoginForLinux com MFA de Acesso Condicional e reiniciar sshd.
- Detecção/resposta: Executar varredura do Microsoft Defender for Servers/Endpoint AV na VM e revisar alertas. Verificar novos usuários, alterações em sudoers, processos suspeitos e modificações em authorized_keys.

Caçar em seguida (Log Analytics/Sentinel – KQL)
- Força bruta seguida de sucesso do mesmo IP (janela de 10m):
let window=10m;
let ssh = Syslog
| where ProcessName == "sshd" and Facility in ("auth","authpriv")
| extend SrcIP = extract(@"from (\d+\.\d+\.\d+\.\d+)",1, SyslogMessage);
let fails = ssh
| where SyslogMessage has_any ("Invalid user","Failed password")
| summarize FailCount=count(), FirstFail=min(TimeGenerated), LastFail=max(TimeGenerated) by Computer, SrcIP;
ssh
| where SyslogMessage has "Accepted password"
| extend SrcIP = extract(@"from (\d+\.\d+\.\d+\.\d+)",1, SyslogMessage), User = extract(@"for (\S+)",1, SyslogMessage)
| join kind=inner (fails) on Computer, SrcIP
| where TimeGenerated between (FirstFail .. LastFail + window) and FailCount >= 3
| project TimeGenerated, Computer, User, SrcIP, FailCount
- Pivotar esse IP em todas as VMs:
Syslog
| where ProcessName == "sshd" and SyslogMessage has_any ("Invalid user","Failed password","Accepted password")
| extend SrcIP = extract(@"from (\d+\.\d+\.\d+\.\d+)",1, SyslogMessage)
| where SrcIP in ("103.38.69.120","98.80.4.65")
| project TimeGenerated, Computer, SyslogMessage, SrcIP
| order by TimeGenerated desc

Validar e escopo
- Correlacionar com Azure Activity Logs para quaisquer alterações de NSG/VM no mesmo período.
- Se o Defender for Endpoint estiver habilitado, verificar atividade pós-login (novos serviços, conexões de saída incomuns) em Test-VM-For-Logs.

Hardening (contínuo)
- Manter SSH fechado para a internet; preferir Bastion ou JIT.
- Habilitar análises do Sentinel para "múltiplas falhas SSH seguidas de sucesso" e listas de bloqueio para infratores recorrentes.
- Instalar e configurar fail2ban na VM.
- Atualizar o sistema operacional e rotacionar segredos usados nessa VM.

🗺️ Roadmap

  • Bloqueio automatizado de IP com base na análise em NSGs no Azure
  • Implementação de GuardRails
  • Geração totalmente automatizada de consultas KQL
  • Suporte para outras nuvens como AWS, GCP e OCI
  • Integração com Outlook/Gmail para alertas automáticos

🤝 Contribuição & Contato

Este projeto está aberto para colaboração e ainda está em andamento! Se você tiver ideias para novos agentes de segurança ou parsers de log, sinta-se à vontade para abrir um PR.

Conecte-se comigo: Linkedin

Baixar ferramenta