Sharkticon es un sistema de detección de intrusos.
Su especificidad es que utiliza un sistema de detección de anomalías y aprendizaje automático, en particular la arquitectura de los transformadores.
De hecho, actualmente los IDS (sistemas de detección de intrusiones) más conocidos utilizan bases de datos de firmas de ataques para detectar ataques.
Evidentemente surge un problema si estos sistemas se enfrentan a nuevos ataques. Este no es el caso de nuestro IDS, que es capaz de detectar ataques que nunca ha visto gracias a la detección de anomalías.
Vea a continuación un esquema de la arquitectura actual.
Nuestro software consta de dos partes.
Una primera ventana de configuración que te preguntará el número de paquetes que quieres ver en el gráfico
luego en el futuro el protocolo o protocolos en los que se quiere centrar el análisis
Luego se llevará a cabo un tiempo de carga mientras el modelo se entrena en su red,
luego se mostrará un gráfico en tiempo real donde podrás ver la estabilidad de tu red.
Si se detecta una anomalía, se mostrará y se guardará en los archivos de registro.
Aquí está la lista de protocolos compatibles:
Protocolos | Operacional |
---|---|
HTTP | ✔️ |
UDP | |
tcp |
git clone https://github.com/PoCInnovation/Sharkticon.git
cd Sharkticon
pip3 install -r requirements.txt
python3 Sharkticon
Si usas la CLI tendrás menos información
pero lo esencial como las alertas estarán disponibles.
Sharkticon utiliza Wireshark para recuperar el flujo de la red. Luego es procesado por un script de Python para representarlo en el formato de nuestro modelo.
Para nuestro modelo utilizamos la arquitectura de transformadores, al ser lo último en PNL, la hemos adaptado y utilizado en nuestro proyecto. Por eso nos hemos centrado en el protocolo HTTP, que es más detallado y, por tanto, donde los transformadores explotan al máximo sus cualidades.
Nuestro modelo hace una predicción del siguiente paquete a partir de los anteriores, luego usamos nuestro algoritmo de detección de anomalías para detectar si el paquete es malicioso, si X paquetes son maliciosos en un período de tiempo Y, entonces generamos una alerta.
Nuestro software se divide en dos partes principales, formación y análisis. Aquí está la lista de características.
Características | Descripción |
---|---|
Capacitación | Primero, el software propone entrenar el modelo para el flujo de su red. |
Analizar Redes | Luego, el modelo analizará tu red mostrando un gráfico que te mostrará la estabilidad de tu red. |
Detección de anomalías | Las predicciones de paquetes serán procesadas por nuestro algoritmo de detección de anomalías, se mostrará una alerta si se detecta una anomalía. |
Administrador de registros | Todas tus alertas se agruparán en una carpeta de registro con la fecha y hora de la anomalía. |