Kolibërs Group
  • Inicio
  • Servicios


    • PenTest & VA

      • PenTest Web
      • PenTest Red
      • Vulnerabilidad Web
      • Vulnerabilidad Red
    • Desarrollo seguro
      • Code review
      • Cloud Security
      • Security Architecture
      • Desarrollo Web
    • Seguridad Empresarial
      • NIST CSF
      • dev-sec-ops
      • Iso 27001
    • Hacking Ético
    • CISO On-Demand
    • Awareness
    • Training
    • Seguridad FinTech
  • Blog
  • Contacto
  • Acerca

SNORT IDS/IPS DE CÓDIGO ABIERTO - PARTE 1

Image by xresch from Pixabay   18 de Junio, 2021

Los Sistemas de Detección de Intrusos (IDS) y los Sistemas de Prevención de Intrusos (IPS) ayudan en gran medida proteger nuestra infraestructura, aumentan la seguridad de las mismas, vigilando el tráfico; examinando y analizando los paquetes en busca de actividad sospechosa. Ayudando a identificar paquetes sospechosos desde las primeras fases de reconocimiento en la red hasta actividad en equipos infectados (siempre y cuando esté configurado).

Los IDS detecta comportamiento anómalo en la red; tráfico malicioso que busca entrar o salir dentro de la misma organización, la principal función de estos sistemas es detectar y notificar al sistema o personal encargado. Estos no pueden tomar acciones preventivas contra las alertas emitidas.

Los IPS cumplen con las mismas funcionalidades que los IDS, pero además pueden realizarse acciones contra el tráfico malicioso para proteger los sistemas computacionales de ataques de ataques y abusos. Están diseñados para analizar los datos del ataque y actuar en consecuencia , deteniendo y eliminando los paquetes detectados.


Tipos de IDS (NIDS & HIDS)

  • NIDS (NetworkIDS): Analiza el tráfico de una red completa; examina los paquetes de forma individual, analizando los diferentes campos del header y contenidos de los paquetes. Su interfaz debe estar en modo promiscuo capturando todos los paquetes de la red.

  • HIDS (HostIDS): Sólo analiza el tráfico de un Host o Computadora, esta opción es de gran utilidad cuando se desea proteger las estaciones de trabajo o servidores individualmente


Infografia de Snort

Introducción a Snort.

Snort es un Sistema de Detección/Prevención de Intrusos (IDS/IPS) de código abierto. Es muy popular ya que es un software bastante completo, capaz de monitorear el tráfico en tiempo real, registro de paquetes, y trabajar como un NIDS. Con una correcta configuración puede detectar una gran variedad de ataques, por ejemplo, escaneos de puertos, desbordamiento de buffer, fuerza bruta, entre muchos otros. Snort inspecciona todo el tráfico de la red según el conjunto de reglas proporcionadas y luego alerta o bloquea el paquete según la acción de la regla.
Está dividido por varios componentes, todos ellos trabajan en conjunto para detectar cualquier actividad maliciosa. Los siguientes son los componentes principales de Snort:

  • Decodificador de paquetes.
  • Preprocesadores
  • Motor de detección.
  • Sistema de registro y alerta.
  • Módulos de salida.
Además de esto es capaz de operar en tres formas:
Analizador de Paquetes --> muestra en tiempo real la actividad de la red en la que opera.
Registrador de Paquetes --> Guarda logs de toda la actividad de la red para un posterior análisis.
Sistema de Prevención de Intrusos en la Red (NIDS) --> Opera en toda la red especificando el fichero de configuración de reglas y patrones a procesar.


Instalación de Snort

Podemos hacer la Instalación mediante los paquetes oficiales de nuestra distribución GNU/Linux. En mi caso estoy usando Kali GNU/Linux Rolling, versión 2021.2. Este proceso es similar y bastante sencillo para distribuciones basadas en Debian GNU/Linux, como Ubuntu. Si utiliza CentOS o Fedora GNU/Linux tendría que usar los binarios RPM oficiales de descarga de Snort.
Para sistemas operativos Microsoft Windows tendrá que usar los binarios oficiales de descarga de Snort.

La posición de Snort dentro de nuestra red es importante, lo recomendable es un sensor entre nuestro firewall y la red interna.

Lo primero será actualizar la lista de paquetes disponibles desde los repositorios oficiales usando el comando sudo apt-get update.
Posteriormente usamos el comando sudo apt-get install snort , para instalar Snort.


┌──(naek㉿kali)-[~]                                                                                                               
└─$ sudo apt-get install snort                                                                                          130 ⨯     
Reading package lists... Done                                                                                                     
Building dependency tree... Done                                 
Reading state information... Done                                
The following additional packages will be installed:             
  libdaq2 libdumbnet1 oinkmaster snort-common snort-common-libraries snort-rules-default                                          
Suggested packages:             
  snort-doc                     
The following NEW packages will be installed:                    
  libdaq2 libdumbnet1 oinkmaster snort snort-common snort-common-libraries snort-rules-default                                    
0 upgraded, 7 newly installed, 0 to remove and 231 not upgraded.                                                                  
Need to get 2817 kB of archives.                                 
After this operation, 10.5 MB of additional disk space will be used.                                                              
Do you want to continue? [Y/n] y                                  
Get:1 http://kali.download/kali kali-rolling/main amd64 snort-common-libraries amd64 2.9.15.1-5 [1031 kB]                         
Get:2 http://kali.download/kali kali-rolling/main amd64 snort-rules-default all 2.9.15.1-5 [371 kB]                               
Get:3 http://kali.download/kali kali-rolling/main amd64 snort-common all 2.9.15.1-5 [275 kB]                                      
Get:4 http://kali.download/kali kali-rolling/main amd64 libdumbnet1 amd64 1.12-9 [27.1 kB]                                        
Get:5 http://kali.download/kali kali-rolling/main amd64 libdaq2 amd64 2.0.7-5 [84.0 kB]                                           
Get:6 http://kali.download/kali kali-rolling/main amd64 snort amd64 2.9.15.1-5 [948 kB]                                           
Get:7 http://kali.download/kali kali-rolling/main amd64 oinkmaster all 2.0-4.1 [80.6 kB]                                          
Fetched 2817 kB in 2s (1369 kB/s)
          
Una vez completada la instalación usaremos el comando sudo snort --version para imprimir la versión de Snort.


┌──(naek㉿kali)-[~]
└─$ sudo snort --version

   ,,_     -*> Snort! <*-
  o"  )~   Version 2.9.15.1 GRE (Build 15125)
   ''''    By Martin Roesch & The Snort Team: http://www.snort.org/contact#team
           Copyright (C) 2014-2019 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using libpcap version 1.10.0 (with TPACKET_V3)
           Using PCRE version: 8.39 2016-06-14
           Using ZLIB version: 1.2.11
          

configuración de Snort

Una vez instalado Snort procederemos a ver un poco de la configuración con la que cuenta. Snort cuenta con 73 reglas (correspondientes a nuestra versión) preconfiguradas durante el proceso de instalación, las cuales se encuentran el directorio /etc/snort/rules/
Nota: Snort también cuenta con reglas aún más sofisticadas y complejas las cuales se pueden obtener mediante un pequeño registro en su sitio web y descargarlos.

El fichero de configuración se encuentra en /etc/snort/snort.conf
Algunos valores a tener en cuenta son: “ipvar HOME_NET” el cual tendremos que cambiar a nuestro segmento de red (ej, 192.168.0.1/24). Y “ipvar EXTERNAL_NET” que sería toda la red externa ajena a nuestra LAN, en este caso usaremos el valor “!$HOME_NET”.
Podemos personalizar nuestra configuración mediante los siguientes apartados del fichero:

  • Establecer las variables de red.
  • Configuración del decodificador.
  • Configuración del motor de detección.
  • Configuración de carga dinámica de librerías
  • Configuración de preprocesadores.
  • Configuración de complementos de salida.
  • Personalización de nuestro conjunto de reglas.
  • Personalización del conjunto de reglas del procesador y el decodificador.
  • Personalización del conjunto de reglas de objetos compartidos.

NOTA: Te recomendamos estar al tanto en nuestras redes sociales para la siguiente entrega donde se detallará el uso de reglas y alertas con Snort. Además de algunas demostraciones.

Recursos:

https://www.snort.org
https://github.com/snort3/snort3
https://pixabay.com/illustrations/tech-circle-technology-abstract-5142625/

Escrito Por:

Jesús Flores
Security Engineer

Kolibërs apoyo a Fintech

Apoyo a FinTech

¿Tienes o vas a crear una FinTech?
Apoyamos a la implementación de las normas requeridas por la ley para la operación de las FinTech, bajo el marco de los mas altos estandares internacionales. Contamos con profecionales altamente capacitados y con amplia experiencia en la implementacion de dichas normas.

  • Conocer más

Kolibërs PenTest a organizaciones

PenTest a organizaciones

¿Quieres saber si tu organización podría soportar un ciberataque?
Con nuestro servicio de PENTEST puedes poner a prueba la seguridad tanto de tu infraestructura de red como tus servicios Web y evaluar las defensas con las que cuenta tu organización. Y así brindarte las herramientas para hacer de tu organización un sitio seguro y de confianza para tus clientes, implementando estándares internacionales en cada proceso.

  • Conocer más

Agenda una visita

Visítanos o síguenos en nuestras redes sociales para que estes informado sobre cuestiones de seguridad y como proteger a tu organización.

  • Dirección:

    Tamaulipas 141 Piso 3
    Colonia Condesa
    Cuauhtémoc
    CDMX. C.P. 06140

  • Teléfono

    (55) 8421 4636

  • Email

    ventas@kolibers.com







© Kolibërs Group SAS de CV. Todos los derechos reservados.
Términos de uso |Política de Cookies | Política de privacidad | Contacto

Política de Cookies

Utilizamos cookies propias y de terceros para analizar la interacción en el sitio y mejorar la experiencia del usuario. Leer más.