Inicio > Hacking, Services - Software > Usando Preprocessors en Snort – Parte V – Preprocessor SSH y DNS

Usando Preprocessors en Snort – Parte V – Preprocessor SSH y DNS

SSH PREPROCESSOR

Se trata de un preprocessor que identifica una serie de exploits ejecutados contra un servidor SSH/OPENSSH, de esta forma se puede detectar cuando esta ocurriendo un ataque y las medidas que se deben tomar para afrontarlo. Este preproprocessor detecta algunos de los exploits mas críticos sobre protocolo SSH, tales como Challenge-Response Buffer Overflow, CRC 32, Secure CRT, y Protocol Mismatch exploit. , Para esto Snort cuenta el número de bytes transmitidos al servidor, de esta forma puede detectar un payload malicioso por su tamaño, ya que algunos de estos exploits basan su funcionamiento en exceder los limites de determinadas funciones del servidor SSH (antes y después del intercambio de clave), por otro lado algunos de estos afectan solamente a determinadas versiones de SSH como por ejemplo Challenge-Response Buffer Overflow solamente afecta a SSHv2 y CRC 32 a SSHv1. De este modo la cadena correspondiente a la versión de SSH es utilizada para distinguir los ataques.

CONFIGURACION de SSH PREPROCESSOR

Este preprocessor por defecto desactiva todas las alertas y chequea el trafico por el puerto 22 que es el trafico de SSH. A continuación se listan las opciones disponibles:

server_ports {<puerto> <puerto>} Indica los puertos por los cuales se inspeccionara trafico SSH
max_encrypted_packets <numero> Número de paquetes cifrados que Snort inspeccionará antes de ignorar una sesión SSH determinada, si este número es superado en una sesión SSH, Snort ignorará la sesión con el fin de mejorar el rendimiento, el valor por defecto es 25, este valor puede ser establecido desde 0 hasta 65535
max_client_bytes <numero> Número máximo de bytes sin respuesta asociada transferidos, cuando se supera este limite, Snort lanzará una alerta de Challenge-Response Overflow o CRC 32. El valor de este atributo debería ser menor al número de paquetes enviados definido en la propiedad max_encrypted_packets de otro modo Snort omitirá el trafico, por defecto es 19600, el rango de valores está entre 0 y 65535.
max_server_version_len < numero > Número máximo de bytes permitido en la cadena de versión del servidor SSH antes de alertar sobre Secure CRT Version String Overflow. El valor por defecto es 80, el rango de valores validos esta entre 0 y 255
autodetect Detecta automáticamente la versión de SSH.
enable_respoverflow Activa chequeo de exploit de Challenge-Response Overflow
enable_ssh1crc32 Activa chequeo de exploit CRC 32
enable_srvoverflow Activa chequeo de exploit Secure CRT
enable_protomismatch Activa chequeo de exploit Protocol Mismatch
enable_badmsgdir Activa alertas para el flujo de trafico erroneo, por ejemplo si un cliente genera trafico de servidor o si un supuesto servidor genera trafico de cliente.
enable_paysize Activa alertas para tamaños inválidos de payloads
enable_recognition Activa alertas para trafico que no es SSH sobre puertos SSH.

Ejemplo de configuración de SSH Preprocessor

1. Define los puertos a inspeccionar (server_ports), define el número máximo de paquetes a inspeccionar (max_encrypted_packets), define el número máximo de bytes antes de generar alerta por exploit (max_client_bytes), define el limite máximo de la cadena de versión antes de generar alerta por exploit (max_server_version_len), Auto-detección de protocolo SSH, Activa el chequeo de Challenge-Response (enable_respoverflow), Activa el chequeo de CRC32 (enable_ssh1crc32), Activa el chequeo de Secure CRT (enable_srvoverflow), Activa el chequeo de Protocolo Mistmach (enable_protomismatch) Activa alertas para el flujo de paquetes en dirección equivocada (enable_badmsgdir), Activa alertas para tamaño invalido de payloads (enable_paysize), Activa alertas para trafico que no es SSH sobre puertos SSH.

preprocessor ssh: \

server_ports { 22 4321 } \

max_encrypted_packets 20 \

max_client_bytes 19600 \

max_server_version_len 60 \

autodetect \

enable_respoverflow \

enable_ssh1crc32 \

enable_srvoverflow \

enable_protomismatch \

enable_badmsgdir \

enable_paysize \

enable_recognition

DNS PREPROCESSOR

Este preprocessor intenta detectar posibles ataques contra un servidor DNS, actualmente es capaz de detectar exploits tales como DNS Client RDATA Overflow, Obsolete Record Types y Experimental Record Types, Para conseguir esto, el preprocessor busca en el trafico de la respuesta DNS sobre TCP y UDP. Al igual que otros preprocessors, este depende de que este activo el preprocessor Stream5 para su correcto funcionamiento, en especial con lo relacionado a la decodificación de paquetes TCP.

Las opciones de configuración que soporta son las siguientes:

ports {<puerto> <puerto>} Puertos a inspeccionar.
enable_obsolete_types Alerta sobre el uso de tipos tipos de registros DNS obsoletos.
enable_experimental_types Alerta sobre el uso de tipos tipos de registros DNS experimentales.
enable_rdata_overflow Chequea si se esta intentando ejecutar un exploit basado en DNS Client Rdata Overflow sobre tipos de registros TXT

Como se puede apreciar son unas pocas opciones, así que el ejemplo de configuración resulta ser bastante sencillo

CONFIGURACION DNS PREPROCESSOR

1. Selecciona el puerto de los servidores DNS a inspeccionar(ports), activa el chequeo de Rdata Overflow (enable_rdata_overflow ), activa el chequeo del uso de Record Types obsoletos (enable_obsolete_types), activa el chequeo del uso de Record Types Experimentales (enable_experimental_types).

preprocessor dns: \

ports { 53 } \

enable_rdata_overflow \

enable_obsolete_types \

enable_experimental_types

  1. Aún no hay comentarios.
  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: