Sharkticon é um sistema de detecção de intrusão.
Sua especificidade é utilizar um sistema de detecção de anomalias e aprendizado de máquina, notadamente a arquitetura de transformadores.
Na verdade, atualmente o IDS (sistema de detecção de intrusão) mais conhecido usa banco de dados de assinaturas de ataques para detectar ataques.
Obviamente surge um problema se estes sistemas enfrentarem novos ataques. Este não é o caso do nosso IDS, que é capaz de detectar ataques que nunca viu graças à detecção de anomalias.
Veja abaixo um esquema da arquitetura atual
Nosso software consiste em duas partes.
Uma primeira janela de configuração que perguntará quantos pacotes você deseja ver no gráfico
então, no futuro, o protocolo ou protocolos nos quais você deseja focar a análise
Em seguida, ocorrerá um tempo de carregamento enquanto o modelo está sendo treinado em sua rede,
então um gráfico em tempo real será exibido onde você poderá ver a estabilidade da sua rede.
Se uma anomalia for detectada ela será exibida e salva nos arquivos de log.
Aqui está a lista de protocolos suportados:
Protocolos | Operacional |
---|---|
HTTP | ✔️ |
UDP | |
TCP |
git clone https://github.com/PoCInnovation/Sharkticon.git
cd Sharkticon
pip3 install -r requirements.txt
python3 Sharkticon
Se você usar a CLI, terá menos informações
mas o essencial, como alertas, estará disponível.
Sharkticon usa Wireshark para recuperar o fluxo de rede. é então processado por um script python para renderizá-lo no formato do nosso modelo.
Para o nosso modelo utilizamos a arquitetura de transformadores, sendo o estado da arte em PNL, adaptamos e utilizamos em nosso projeto. É por isso que nos concentramos no protocolo HTTP, que é mais detalhado e, portanto, onde os transformadores exploram ao máximo suas qualidades.
Nosso modelo faz uma previsão do próximo pacote a partir dos anteriores, então usamos nosso algoritmo de detecção de anomalias para detectar se o pacote é malicioso, se X pacotes forem maliciosos em um período de tempo Y, então geramos um alerta.
Nosso software é dividido em duas partes principais, treinamento e análise. Aqui está a lista de recursos
Características | Descrição |
---|---|
Treinamento | Primeiro, o software propõe treinar o modelo para o fluxo da sua rede |
Analisar Redes | Em seguida, o modelo analisará sua rede exibindo um gráfico que mostrará a estabilidade da sua rede |
Detecção de anomalias | As previsões de pacotes serão processadas pelo nosso algoritmo de detecção de anomalias, um alerta será exibido se uma anomalia for detectada |
Gerenciador de registros | Todos os seus alertas serão agrupados em uma pasta de log com a data e hora da anomalia |