Archive

Posts Tagged ‘seguridad linux’

Introducción a SecurityOnion

abril 17, 2017 Deja un comentario

SecurityOnion es un distribución basada en GNU/Linux, concretamente en Ubuntu y contiene un conjunto bastante completo de herramientas para la detección/prevención de amenazas. Utilizando una o varias instancias de SecurityOnion se puede tener una red con mecanismos de defensa sólidos y sensores que identificarán rápidamente las principales amenazas y eventos potencialmente peligrosos. Entre las herramientas que se encuentran incluidas en SecurityOnion nos encontramos con IDS/HIDS, herramientas para el procesamiento de paquetes, de logs y análisis de tráfico, entre otras. A continuación se explicará el funcionamiento de SecurityOnion y sus elementos “core”.

Netsniff-ng: Se trata de sniffer muy potente y pensado principalmente para sistemas GNU/Linux, muy similar a TCPDump/Wireshark, pero con la diferencia de que explota de una forma bastante eficiente los beneficios que aporta el “PACKET_MMAP” del Kernel. En el caso de SecurityOnion el uso de “Netsniff-ng” se centra en la captura constante y completa de los paquetes de datos que se mueven en la red y obviamente, dicha información es posteriormente utilizada por otras herramientas para su análisis completo.

Suricata y Snort: Se trata de las soluciones más conocidas y populares en el mundo de los IDS open-source. Ambas alternativas se encargan detectar intrusiones y/o posibles amenazas gracias los motores de reglas personalizables que incluyen ambas soluciones. En efecto, tanto Suricata como Snort son IDS “rule-driven”, es decir, herramientas que tras aplicar una serie de patrones configurables por el administrador, son capaces de detectar tráfico sospechoso o malicioso.

Bro IDS: Si bien el objetivo de Bro IDS es el mismo que el de Suricata y Snort, el modelo aplicado para la resolución de las amenazas en un entorno de red es completamente distinto. Como se mencionaba antes, los IDS basados en reglas utilizan un conjunto de patrones que sirven como “fingerprints” de amenazas o incluso ataques que se están llevando a cabo en la red. Dichos patrones pueden ser muy flexibles y tener unos muy buenos niveles de efectividad contra amenazas comunes, pero dado el dinamismo del tráfico en segmentos de red y la facilidad que tienen los atacantes de ocultar payloads, malware y todo de tipo de paquetes maliciosos, es muy probable que un sistema basado en reglas sea capaz de filtrar todas las posibles amenazas que pueden producirse. En éste sentido, los IDS “analysis-driven” suponen un enfoque distinto a los IDS tradicionales basados en reglas, ya que además de capturar eventos potencialmente peligrosos, provee de un framework bastante potente para analizar todos los eventos y el tráfico generado, de tal forma que el analista de seguridad podrá verificar si efectivamente si se está llevando a cabo un ataque o si hay algún tipo de amenaza en la red.

OSSEC: Además de las soluciones de seguridad basadas en eventos producidos en red como los NIDS mencionados antes, SecurityOnion también cuenta con OSSEC como solución HIDS para el establecimiento de endpoints y agentes que se encarguen de monitorizar los eventos producidos en “puntos fijos” dentro de la red. OSSEC permite ejecutar labores de recolección y análisis de logs, chequeos de integridad en ficheros, gestión de políticas, sistema en tiempo real de alarmas, entre otras cosas. OSSEC, al igual que los NIDS mencionados anteriormente, tienen licencias opensource y por ese, entre otros motivos, se encuentran incluidas directamente en SecurityOnion con una configuración por defecto.

La capacidad de capturar y correlacionar eventos producidos en sistemas aislados y en el contexto de red es algo bastante aconsejable para una detección y prevención mucho más eficiente de amenazas y desde luego es por lo que apuestan soluciones como SecurityOnion. No obstante, la cantidad de paquetes a procesar no es nada despreciable y precisamente por ese motivo, en SecurityOnion también existen herramientas para el análisis de toda esa información.

Instalación

No es un procedimiento complejo ni mucho menos, se trata de una distribución basada en Ubuntu, más concretamente en la versión 14.04 (a la fecha de redactar éste artículo) y se puede instalar directamente en el ordenador o como una máquina virtual con VMWare o VirtualBox. Lo primero es descargar la imagen ISO que se encuentra disponible en el repositorio GitHub del proyecto, ubicado en la siguiente dirección: https://github.com/Security-Onion-Solutions/security-onion
Una vez descargada la imagen, se puede proceder con la instalación del mismo modo que se haría con cualquier sistema basado en GNU/Linux. Otra alternativa para instalar todas las características disponibles en SecurityOnion, consiste en instalar un Ubuntu 14.04 y posteriormente añadir los repositorios PPA de SecurityOnion, los cuales nuevamente, a la fecha de redactar éste artículo, únicamente son compatibles con dicha versión de Ubuntu. Por otro lado, también es importante verificar el checksum de la imagen ISO descargada para comprobar su integridad, no cuesta mucho y lleva poco tiempo así que es altamente recomendable hacerlo, las instrucciones se encuentran incluidas en el siguiente enlace: https://github.com/Security-Onion-Solutions/security-onion/wiki/Installation. Ahora bien, para la instalación se puede utilizar una versión de Ubuntu 14.04 recién instalada y posteriormente, configurar todos los paquetes disponibles en SecurityOnion, es algo que viene bien aprender a hacer ya que en despliegues en entornos de producción es mejor instalar un Ubuntu e ir configurando todo de la forma más fina posible. El procedimiento es simple, basta con ejecutar los siguientes comandos para tener todo lo necesario antes de comenzar la instalación de los paquetes de SecurityOnion con “apt-get”.

>sudo apt-get -y install software-properties-common

>sudo add-apt-repository -y ppa:securityonion/stable

>sudo apt-get update

Tras la importación del repositorio es necesario ejecutar un “update” para posteriormente, ejecutar el siguiente comando de instalación:

>sudo apt-get install securityonion-all syslog-ng-core

Se trata de un procedimiento que puede tardar un buen rato mientras se instalan todos los componentes necesarios. Finalmente, se debe ejecutar el siguiente comando para realizar el procedimiento inicial de configuración, el cual consiste en la ejecución de un asistente muy sencillo que nos guiará paso a paso.

>sudo sosetup

En el último paso, se procede a realizar los cambios directamente en el sistema y finalmente se reinicia. Después de reiniciar es posible arrancar todos los servicios de SecurityOnion con el siguiente comando:

>sudo service nsm start

No obstante, es probable que existan errores tras reiniciar el sistema, como por ejemplo que el servidor “securityonion” no exista o no se encuentre el usuario “sguil”. Esto indica que el asistente no ha realizado todas las labores de configuración que debería y para solucionarlo, basta simplemente con volver a ejecutar el script.



Por último, se puede apreciar que SecurityOnion se encuentra activo con todos los servicios levantados y en funcionamiento, ahora queda comenzar a configurar cada uno de los servicios de forma individual para llegar a la mejor configuración posible de acuerdo a las necesidades especificas del cliente o empresa.

En próximas entradas se explicara mas en detalle cada uno de estos servicios y las herramientas disponibles para realizar una configuración enfocada a entornos productivos.

Un saludo y Happy Hack!
Adastra.

Wireless Hacking – Conceptos Básicos sobre Seguridad en redes Wireless – Parte II

marzo 21, 2012 1 comentario

Como se ha dicho en la entrada anterior, el funcionamiento interno de una red inalámbrica difiere un poco de las redes cableadas convencionales, ya que las redes inalámbricas añaden un nivel de complejidad adicional que se encuentra directamente relacionado a factores físicos del canal de comunicación (aire).

Hasta este punto se han introducido 3 conceptos importantes relacionados con las redes inalámbricas que son, los canales, los rangos de frecuencias y las bandas. En esta ocasión se intentará explicar cuales son los tipos y los subtipos que paquetes que existen en una red inalámbrica y que es necesario conocer con el fin de entender la información que estos suministran cuando son capturados por herramientas como wireshark. Por otro lado también se introduce el concepto de “beacon frames” que es vital para comprender como los routers inalámbricos envían señales a los clientes cercanos para informar sobre su presencia.

Leer más…

Wireless Hacking – Conceptos Básicos sobre Seguridad en redes Wireless – Parte I

marzo 16, 2012 4 comentarios

Los conceptos relacionados con las redes inalámbricas en muchos puntos son muy similares a los conceptos clave en las redes cableadas, sin embargo, dada su naturaleza tienen características que extienden su funcionamiento e introduce un nivel de complejidad adicional, existen algunos conceptos clave que diferencian a las redes cableadas de las redes inalámbricas, algunos de estos son:

– Rangos de frecuencia
– Bandas
– Canales

Los rangos de frecuencia representan la potencia en Giga-hercios máxima que soporta una tarjeta de red determinada, mientras que los canales son, como su nombre lo indica, el medio de transmisión para las señales inalámbricas que emite el dispositivo (tarjeta de red).

Leer más…

Preservando el Anonimato y Extendiendo su Uso – Comparación de Redes Anonimas y conclusiones finales – Parte XLII

febrero 8, 2012 14 comentarios

Aunque en esta serie de entradas se ha profundizado principalmente en TOR, I2P y FREENET, existen muchas más soluciones que van por la misma linea y que intentan preservar la privacidad de sus usuarios, no obstante en esta serie de publicaciones se ha optado por explicar las 3 soluciones anteriormente indicadas principalmente por las siguientes razones:

  1. Estabilidad.

  2. Volumen de usuarios

  3. Funcionalidades

  4. Resistencia a la censura.

Actualmente TOR, I2P y FreeNet son las redes que se encuentran en un estado más avanzado en los puntos anteriores, por lo tanto no se puede desestimar ninguna ni pretender que alguna es “superior” a otra, siempre es necesario tener presente que se trata simplemente de herramientas que intentan conseguir el mismo fin: Preservar el anonimato y la privacidad de sus usuarios. Sin embargo, cuando alguien desea que sus “acciones” sean anónimas, necesita conocer muy bien estas soluciones y determinar cual se ajusta a sus necesidades concretas, en algunos casos, los usuarios se decidirán por el uso de TOR dadas sus capacidades de “Outproxy” mientras que otros preferirán I2P o FREENET por sus capacidades de “Inproxy” y VPN, se trata simplemente de una decisión que el usuario debe tomar en un momento determinado dependiendo de lo que quiera hacer. No obstante es importante en este punto resaltar y comparar las principales funcionalidades de estas 3 redes con el fin de proporcionar un “marco de decisión” más amplio al usuario final e identificar cuales son los puntos fuertes y los puntos débiles de cada una de estas soluciones con respecto a las otras.

Leer más…

Preservando el Anonimato y Extendiendo su Uso – Freenet API, Desarrollo de plugins en Freenet – Parte XLI

febrero 6, 2012 Deja un comentario

Anteriormente se ha mencionado la posibilidad de crear aplicaciones en I2P utilizando librerías como Streaming Library y BOB, desde FreeNet también es posible crear aplicaciones (en este caso concreto, Plugins) que permitan ejecutar diversas operaciones utilizando FreeNet como pasarela, estos Plugins como se ha enseñado anteriormente, pueden contener código que permita interactuar directamente con el nodo de FreeNet o interactuar con otros nodos disponibles en la darknet. En caso de FreeNet, el uso de las librerias disponibles es bastante similar a I2P, ya que cuenta con una API de Java bastante completa, aunque desafortunadamente con muy poca documentación disponible, por lo tanto es necesario investigar por cuenta propia, estudiando el código disponible en algunos de los plugins existentes, tales como Thaw, FreeMail o jSite. En este punto, la intensión de esta publicación, es permitirle al lector un punto de inicio en el desarrollo de plugins en FreeNet sin profundizar demasiado, (esto se hará en proximas publicaciones de este blog).

Leer más…

Preservando el Anonimato y Extendiendo su Uso – Interactuando con Freenet desde TCMI – Parte XL

febrero 3, 2012 Deja un comentario

En la publicación anterior se han indicado los conceptos básicos introductorios para manejar un nodo FreeNet desde linea de comandos, en esta ocasión se explicarán los principales comandos para la interacción entre el nodo local y la red de FreeNet desde TCMI.

INTERACTUADO CON FICHEROS

Los comandos que se enseñan a continuación son interesantes en el sentido de que permiten subir contenidos a FreeNet, crear y administrar claves. A continuación se indican dichos comandos y su uso:
PUTFILE
Sube un fichero que se encuentra ubicado en el sistema de ficheros local a FreeNet.

TMCI> PUTFILE:/home/adastra/file.txt
Expected hashes
Compressed data: codec=-1, origSize=45, compressedSize=45
Completed 0% 0/1 (failed 0, fatally 0, total 1, minSuccessFetch 1)
Completed 0% 0/2 (failed 0, fatally 0, total 2, minSuccessFetch 2)
Completed 0% 0/2 (failed 0, fatally 0, total 2, minSuccessFetch 2)  (finalized total)
Completed 50% 1/2 (failed 0, fatally 0, total 2, minSuccessFetch 2)  (finalized total)
Completed 100% 2/2 (failed 0, fatally 0, total 2, minSuccessFetch 2)  (finalized total)
Attempting to read file /home/adastra/file.txt using MIME type: text/plain
URI: CHK@6xW-CwEp5uSpsb7u7pqlQJpfDORfWo5hLlV8pAc6e38,cKBwXQ5ug0sIgPeZUA0O9jv7r8l6NvY5ut0Et4S-zRw,AAIC–8/file.txt
Upload rate: 0.10816709653072065 bytes / second

Leer más…

Preservando el Anonimato y Extendiendo su Uso – Introducción a Text Mode Client Interface (TCMI) – Parte XXXIX

febrero 1, 2012 Deja un comentario

Una característica interesante (y bastante útil en algunos casos) es la capacidad que tiene FreeNet de permitir que clientes que no utilizan interfaces X11 puedan acceder a la configuración del nodo e interactuar con sus valores desde una consola de texto estándar (estilo UNIX). Este interprete es conocido como Text Mode Client Interface (TCMI). Desde esta herramienta es posible hacer cosas como subir contenidos y consultar diferentes tipos de claves en FreeNet.

Leer más…

A %d blogueros les gusta esto: