Hardening Centro de Datos EN BOLIVIA
Hardening Centro de Datos EN BOLIVIA
Hardening Centro de Datos EN BOLIVIA
Hardsoftsecurity.es
David
[HARDENING DE NUESTRO
CENTRO DE DATOS]
En este documento voy a explicar métodos y servicios para hacer más segura nuestra red. Voy
a enseñar como instalar e implementar IDS, monitor de red y de equipos, VPN y servicios de
copia de seguridad automatizados.
Contenido
1. INTRODUCCIÓN............................................................................................................ 3
2. JUSTIFICACIÓN ............................................................................................................. 4
3. ¿QUÉ ES EL HARDENING? ............................................................................................. 5
4. MONITORIZACIÓN DE LA RED ....................................................................................... 6
5. AUDITORÍAS DE SEGURIDAD ......................................................................................... 7
6. ¿QUÉ ES UN SISTEMA DE DETECCIÓN DE INTRUSIONES? ................................................ 8
7. ¿QUÉ ES UNA VPN? ...................................................................................................... 9
8. POSIBLES ALTERNATIVAS PARA EL HARDENING........................................................... 10
9. SOLUCIONES ELEGIDAS ............................................................................................... 11
a. GRAPH MIKROTIK: .................................................................................................. 11
b. NETFLOW Y MIKROTIK: ........................................................................................... 11
c. PANDORAFMS: ....................................................................................................... 11
d. SNORT:................................................................................................................... 11
e. VPN MIKROTIK: ...................................................................................................... 11
f. APACHE GUACAMOLE ............................................................................................. 11
g. RSYNC: ................................................................................................................... 12
h. FBACKUP: ............................................................................................................... 12
i. HARDENING DE SISTEMAS: ..................................................................................... 12
j. FAIL2BAN: .............................................................................................................. 12
k. DDoSDEFLATE: ........................................................................................................ 12
10. VENTAJAS Y DESVENTAJAS ......................................................................................... 13
a. GRAPHS MIKROTIK ................................................................................................. 13
b. NETFLOW Y MIKROTIK ............................................................................................ 13
c. PANDORAFMS ........................................................................................................ 13
d. FAIL2BAN ............................................................................................................... 13
e. DDOSDEFLATE ........................................................................................................ 13
f. SNORT.................................................................................................................... 14
g. VPN MIKROTIK ....................................................................................................... 14
h. APACHE GUACAMOLE ............................................................................................. 14
i. RSYNC .................................................................................................................... 14
j. FBACKUP ................................................................................................................ 14
11. DIAGRAMA DE RED .................................................................................................... 15
12. IMPLEMENTACIÓN DE VPN ......................................................................................... 16
Cualquier empresa que tenga un centro de procesamiento de datos o una red corporativa que
desea monitorizar su red y hacerla lo más segura posible, podrá implementar este conjunto de
herramientas sin coste de licencias ni nada.
En este documento se explicarán los conceptos y pasos que se deberán dar para poder tener
una red monitorizada y con alta seguridad, esto que quiere decir, que se abarcará desde las
contraseñas de los equipos, la cual deberá tener una política que se tiene que cumplir a la hora
de introducirlas, hasta el tráfico que se genera de entrada contra nuestra red, este último paso
es muy importante ya que se identifica de donde y a donde se dirige todo el tráfico de nuestra
red, también se desplegará un IDS para identificar este tráfico a nivel de paquete, así
diferenciar todos los paquetes que entran en nuestra red e identificando posibles ataques,
escaneo de puertos e incluso ataques de denegación de servicio.
Respecto a los servidores los cuales vamos a proteger, vamos abarcar una gran cantidad de
S.O, como pueden ser sistemas operativos de Windows y también sistemas operativos basados
en Linux. Esto que quiere decir, que vamos a implementar un endurecimiento de la red que
abarque cualquier estructura o sistema operativo que tengamos desplegado en nuestra red
profesional.
Una vez montado todo el sistema de endurecimiento y monitorización de todos los sistemas lo
que se intentará conseguir es tenerlo todo monitorizado, es decir todo con alertas por sms,
correo electrónico o la que creamos conveniente y todo esto mostrado en una pantalla a
tiempo real.
Su propósito, entorpecer la labor del atacante y ganar tiempo para poder minimizar las
consecuencias de un inminente incidente de seguridad e incluso, en algunos casos, evitar que
éste se concrete en su totalidad. Una de las primeras cosas que hay que dejar en claro del
Hardening es que no necesariamente logrará forjar equipos “invulnerables”. Es importante
recordar que, según el modelo de defensa en profundidad, se conseguirá una red más segura o
no.
Como conclusión, el Hardening es una ayuda indispensable para ahorrarse bastantes dolores
de cabeza por parte de los administradores de sistemas. Entre sus ventajas, se puede contar la
disminución por incidentes de seguridad, mejoras en el rendimiento al disminuir niveles de
carga inútil en el sistema, una administración más simple y mayor rapidez en la identificación
de problemas, ya que muchas de las posibles causas de ellos quedarán descartadas en virtud
de las medidas tomadas, y finalmente la posibilidad de poder hacer un seguimiento de los
incidentes y en algunos casos identificar el origen de los mismos.
Una vez leído y entendido que es el hardening, lo que vamos a conseguir implementado todos
los métodos que explicaremos en los siguientes apartados es endurecer la red, los sistemas
operativos y los nodos de transmisión de nuestra red como podrían ser router o switchs.
Es muy importante entender que un buen hardening en nuestra red podría evitar o disminuir
el daño que podría hacer un atacante dentro de nuestra red, es decir no es lo mismo tener los
sistemas “abajo” que solo tener un único servicio aislado caído, se sufrirán perdidas
económicas, pero no serán tan brutales como perder todo nuestro centro de procesamiento
de datos.
Como se dice más arriba no intentamos tener una red completamente impenetrable, ya que
esto es imposible, ya que las redes están creadas, gestionadas por humanos y nosotros no
somos perfectos, pero siempre podemos intentar hacer más difícil que un “ciberdelincuente”
le sea más difícil llegar a penetrar nuestros sistemas o tener acceso a nuestro centro de
procesamiento de datos.
Como hemos comentado anteriormente uno de los aspectos más importantes dentro de la
seguridad de una red, es la monitorización de la misma, para poder reconocer ataques de
denegación de servicio u otro tipo de ataques, como podrían ser conexiones remotas que
consuman más ancho de banda de lo normal y por eso en este apartado vamos a explicar
porque se debe implementar un sistema de monitorización de la red.
Con este método lo que vamos a conseguir con un simple vistazo es visualizar la banda ancha
que se está consumiendo por nuestra red e interfaces, así dándonos datos reales en tiempo
real, con esto podemos controlar y limitar la banda ancha de cada interfaz a nuestro criterio.
También podemos identificar el uso de nuestros servicios, es decir en caso de tener un FTP al
cual se tiene acceso desde internet, podremos ver el tráfico general que se estaría generando
en nuestro router.
Con este método en concreto es muy recomendable, ya que uno de los principales problemas
en un centro de procesamiento de datos, donde se virtualizan cientos de máquinas es casi
imposible a simple vista identificar que máquina está colapsando la red enviando ciertos
paquetes de red.
Con este método podemos identificar cualquier máquina que genere tráfico en la red que sea
anómalo. Cabe decir que también es una buena práctica tener ambos métodos implementados
en la misma red, ya que en el momento que en el tráfico general se detecte más ancho de
banda de lo normal podremos dirigirnos a ver el tráfico individual de cada máquina y así
localizar la máquina que esté dando problemas e identificar y solucionar el problema que lo
provoca.
Una auditoria de seguridad o penetración de sistema, se basa en seguir una metodología para
buscar puntos débiles en nuestra red y sistemas que se encuentran alojados en nuestro centro
de procesamiento de datos.
A día de hoy la principal metodología que se utiliza para intentos de penetración de sistemas
se basa en recogida de información de internet, información física la cual nos proporciona
escaneado los servicios accesibles desde internet de nuestro centro de procesamiento de
datos, interpretación de dicha información en busca de posibles vulnerabilidades e incluso
servicios configurados erróneamente, una vez localizados estos posibles puntos de entrada se
procede a la explotación de estas posibles vulnerabilidades, en caso de conseguir acceso
mediante alguna vulnerabilidad, se llega a la post-explotación, esto quiere decir que se
intentará ver hasta dónde podemos llegar explotando esta vulnerabilidad, una vez realizado y
descartado toda explotación de vulnerabilidad se genera un documento el cual se le da al
cliente, donde se especifica metodología, software, herramientas utilizadas y un reporte con
las vulnerabilidades encontradas con la solución que deberá implementar el administrador de
la red en cuestión.
Una vez entendido en que consiste una auditoría de seguridad, en mí caso el administrador de
la red, el de sistemas y el auditor de seguridad es la misma persona, la gran ventaja de esto es
que se podrán realizar auditorías de seguridad regularmente, así siempre estando a la última
respecto a la seguridad de la red, esto consiste en aplicar parches y actualizaciones a todo
software vulnerable que se encuentre.
Muy importante para un administrador de red nunca descuidar ningún objeto de la red ya que
hasta el fallo más minúsculo podría hacer que la red fuese un quebradero de cabeza para
solucionar una intrusión de un atacante.
Con la auditorias de seguridad te cercioras de que tienes todo el software, servicios y la red lo
más actualizada posible y con los parches de seguridad más recientes, haciendo más difícil el
acceso de un atacante a la red de nuestro centro de procesamiento de datos.
Estas herramientas son muy buenas cuando se implementan con un sistema de monitorización
de red, ya que si detectamos una subida o bajada anormal podremos comprobar el tráfico más
específico con este sistema, por eso explico cómo funciona este sistema.
El IDS suele tener sensores virtuales (por ejemplo, un sniffer de red) con los que el núcleo del
IDS puede obtener datos externos (generalmente sobre el tráfico de red). El IDS detecta,
gracias a dichos sensores, las anomalías que pueden ser indicio de la presencia de ataques y
falsas alarmas.
Los IDS suelen disponer de una base de datos de “firmas” de ataques conocidos.
Dichas firmas permiten al IDS distinguir entre el uso normal del PC y el uso fraudulento, y/o
entre el tráfico normal de la red y el tráfico que puede ser resultado de un ataque o intento del
mismo.
HIDS (HostIDS): el principio de funcionamiento de un HIDS, depende del éxito de los intrusos,
que generalmente dejaran rastros de sus actividades en el equipo atacado, cuando intentan
adueñarse del mismo, con propósito de llevar a cabo otras actividades. El HIDS intenta
detectar tales modificaciones en el equipo afectado, y hacer un reporte de sus conclusiones.
NIDS (NetworkIDS): un IDS basado en red, detectando ataques a todo el segmento de la red.
Su interfaz debe funcionar en modo promiscuo capturando así todo el tráfico de la red.
Como hemos comentado anteriormente, para tener conexiones remotas más seguras se ha
pensado implementar VPN’s, ya que con esto descartaremos que los atacantes vean nuestro
tráfico de red.
Una red privada virtual (RPV), en inglés: Virtual Private Network (VPN), es una tecnología de
red de computadoras que permite una extensión segura de la red de área local (LAN) sobre
una red pública o no controlada como Internet. Permite que la computadora en la red envíe y
reciba datos sobre redes compartidas o públicas como si fuera una red privada con toda la
funcionalidad, seguridad y políticas de gestión de una red privada. Esto se realiza
estableciendo una conexión virtual punto a punto mediante el uso de conexiones dedicadas,
cifrado o la combinación de ambos métodos.
Ejemplos comunes son la posibilidad de conectar dos o más sucursales de una empresa
utilizando como vínculo Internet, permitir a los miembros del equipo de soporte técnico la
conexión desde su casa al centro de cómputo, o que un usuario pueda acceder a su equipo
doméstico desde un sitio remoto, como por ejemplo un hotel. Todo ello utilizando la
infraestructura de Internet.
La conexión VPN a través de Internet es técnicamente una unión wide area network (WAN)
entre los sitios pero al usuario le parece como si fuera un enlace privado— de allí la
designación "virtual private network".
Tipos de VPN:
Este esquema se utiliza para conectar oficinas remotas con la sede central de la organización.
El servidor VPN, que posee un vínculo permanente a Internet, acepta las conexiones vía
Internet provenientes de los sitios y establece el túnel VPN. Los servidores de las sucursales se
conectan a Internet utilizando los servicios de su proveedor local de Internet, típicamente
mediante conexiones de banda ancha. Esto permite eliminar los costosos vínculos punto a
punto tradicionales (realizados comúnmente mediante conexiones de cable físicas entre los
nodos), sobre todo en las comunicaciones internacionales. Es más común el siguiente punto,
también llamado tecnología de túnel o tunneling).
-GlassWire (Gratuito)
-PandoraFMS (Gratuito).
-Nagios (Gratuito).
-Snort (Gratuito).
-rsync (Gratuito).
-Fbackup (Gratuito).
Endurecimiento de servicios.
Con este conjunto de herramientas lo que vamos a conseguir es un control de la red casi
completo y en conjunto tendremos un centro de procesamiento de datos asegurado
decentemente.
Para satisfacer las necesidades de nuestra red, respecto a la seguridad de la misma, es decir
cubrir la monitorización de la red, sistema IDS, monitorización de sistemas, conexiones
remotas seguras y el endurecimiento de servicios se ha optado por las siguientes
herramientas, ya que implementando todas estas entre sí, se llega a tener una red muy sólida:
Gracias a estas herramientas conseguiremos una red más segura donde podremos tener un
monitor con todas las herramientas de monitorización, es decir graphs, pandorafms, pnrg de
netflow y snort, todas estas herramientas funcionan a tiempo real, también fail2ban y
ddosdeflate, que bloquearan intentos de login y ataques de denegación de servicio.
Y gracias a apache guacamole podremos tener conexión de acceso remoto seguro, también
hay que decir que gracias a el endurecimiento de los servicios tendremos menos problemas
respecto a malas configuraciones respecto a ellos y por último pero no menos importante
tenemos las copias de seguridad de nuestras máquinas y datos que se realizaran con rsync y
fbackup.
a. GRAPHS MIKROTIK
VENTAJAS DESVENTAJAS
Fácil configuración Información genérica
Información del tráfico rápida Para entender la información hace falta tener
experiencia
Información fiable A veces los gráficos generados se pierden si el
router se reinicia.o se apaga
Información dividida en tiempo Los gráficos suelen ser liosos.
Información en tiempo real
b. NETFLOW Y MIKROTIK
VENTAJAS DESVENTAJAS
Información fiable Complicado de implementar por primera vez
Información individual de cada equipo Es una aplicación cliente servidor
Auto descubrimiento de la red Hay que activar configuraciones en mikrotik
Interfaz web clara y legible Si no se tiene ningún conocimiento no se
podría implementar.
Según la velocidad de la red, se representa en Las gráficas de entrada y salida de
una unidad de velocidad información tendrían que separarlas.
Información dividida en tiempo Si no se tiene experiencia no se entedará
c. PANDORAFMS
VENTAJAS DESVENTAJAS
Fácil de implementar. Hay que tener un conocimiento previo
Sistema operativo óptimo para pandora No es fácil de configurar las alertas
Monitorización de cualquier hardware No es fácil de configurar la monitorización de
algunos equipos
Monitorización de cualquier S.O El intervalo de monitorización óptimo es de 5
minutos
Personalizar módulos de monitorización Interfaz web no tiene por defecto el refresco
del panel.
d. FAIL2BAN
VENTAJAS DESVENTAJAS
Fácil de implementar No es multiplataforma
Bloqueo efectivo A veces bloquea ips amigables
e. DDOSDEFLATE
VENTAJAS DESVENTAJAS
Fácil de implementar No es multiplataforma
Bloqueo efectivo
g. VPN MIKROTIK
VENTAJAS DESVENTAJAS
Fácil de implementar Sin previo conocimiento es difícil de
implementar
Fácil de usar Hace falta tener conocimientos de redes para
el enrutamiento
Log de mikrotik para llevar un orden de
conexiones
Creación de cuentas para llevar el control
Se puede combinar con certificados para su
conexión
Desde cualquier sistema operativo se puede
conectar
h. APACHE GUACAMOLE
VENTAJAS DESVENTAJAS
Fácil de instalar
Fácil de gestionar
Web muy amigable
Fácil de gestionar conexiones remotas
i. RSYNC
VENTAJAS DESVENTAJAS
Fácil de usar No es multiplataforma
Facilidad de hacer copias de seguridad Solo para linux
Uso gratuito Para automatizarlo hay que hacer una tarea
j. FBACKUP
VENTAJAS DESVENTAJAS
Fácil de usar No es multiplataforma
Interfaz agradable Solo para windows
Copias de seguridad faciles
Como podemos ver tenemos 1 router, que se conecta a dos switches y de estos se conectan a
los servidores, así creando redundancia en la conectividad de los servidores. Como podemos
identificar tenemos un punto de fallo, este punto se hablará en las mejoras de la red más
adelante. La conexión de estos equipos es muy simple, se debe de etiquetar todo el cableado
como en la siguiente imagen y dejar la red física lo más organizada posible:
Los primeros pasos que vamos a realizar son las configuraciones básicas de nuestro mikrotik.
Una vez descargada la aplicación la ejecutamos para poder conectarnos a nuestro router:
Al ejecutar la aplicación se nos abrirá un interfaz gráfica donde tendremos que poner la
dirección ip de nuestro router mikrotik, por defecto vienen sin contraseña y con la dirección
192.168.88.1 por defecto:
Nos aparecerá una ventana donde podremos añadir la dirección IP de nuestra interfaz:
Tras darle en la interfaz a añadir, nos saldrá una ventana donde podremos configurar la
interfaz:
Una vez pulsado en DHCP Setup, se nos abrirá un asistente de configuración para configurar
nuestro DHCP:
La primera opción se nos pide donde estará a la escucha nuestro servidor DHCP:
Lo siguiente es determinar la puerta de enlace que irá por defecto en las peticiones DHCP:
Una vez configurado quedará de la siguiente manera, se ha configurado para que reciba 9
conexiones simultáneas:
Una vez dentro de la interfaz, le damos a añadir para poder configurar la conexión PPP.
Hecho esto nos dirigiremos a la pestaña Secrets, aquí definimos el usuario y contraseña para la
conexión VPN:
Después de comprobar todo esto lo que deberemos hacer es introducir las reglas del firewall
correspondientes:
1.- Cuando se inicia la instalación del sistema operativo, pulsaremos en la primera opción:
6.- Cuando inicia el sistema operativo nos indica la dirección URL que debemos ingresar en el
navegador para acceder al login de PandoraFMS:
Lo que vamos a instalar el sistema operativo Debian en su versión 7.11, la cual instalaremos
una serie de paquetes y reglas para poder visualizar todo el tráfico de la red monitorizada
individualmente por equipos.
2.- Ya que el paquete anterior instala más de un paquete que no interesa tenerlo, procedemos
a desinstalarlos:
4.- Renombramos el fichero nfacctd.conf para hacer una copia de seguridad del mismo:
5.- Abrimos un editor de texto para crear un nuevo fichero para remplazar al anterior:
9.- Tras realizar todas estas modificaciones, paramos e iniciamos el servicio nfacctd:
12.- Habilitamos la interfaz web de la siguiente manera, empezamos por crear la carpeta pnrq:
14.- Nos descargamos el paquete necesario para la visualización a tiempo real del tráfico:
15.- Lo descomprimimos:
16.- Lo movemos:
18.- Insertamos la tarea en crontab para que se refresque la información cada 5 minutos:
19.- Enlazamos el servicio pmacct para no tener que editar más ficheros:
25.- Una vez realizado todo esto mediante un navegador web nos dirigiremos a la ip que tenga
la máquina y se nos presentará la siguiente interfaz web:
1.- El primer paso para instalarlo es descargar un script desarrollado en Shell script el cual nos
instalará automáticamente la herramienta:
4.- Cuando se inicia el script nos pedirá que ingresemos usuario, contraseña para las bases de
datos:
6.- Una vez hecho esto nos dirigimos al navegador colocando la siguiente URL,
192.168.21.73:8080/guacamole/#/ y a continuación nos saldrá lo siguiente:
4.- Ahora vamos a actualizar la versión de ruby, instalamos los siguientes paquetes:
14.- Renombramos el fichero database.yml.example, para ingresar los datos para la base de
datos:
35.- El siguiente paso le decimos que sí aunque hemos configurado ya la base de datos:
41.- Borramos el fichero db-pending-config, para que no nos vuelva a pedir la configuración de
la BBDD:
43.- Una vez realizado todo nos dirigimos a un navegador y colocando la dirección ip de la
máquina snort se nos presentará la interfaz de snort:
Este servicio normalmente viene habilitado por defecto y se puede acceder mediante la
interfaz web de administración de nuestro mikrotik:
1.- El primer paso para instalar esta herramienta es descargarla en algún directorio:
7.- Una vez dentro modificamos lo que está señalado en la captura sustituyendo el correo por
el vuestro y la ip por la ip que tenga asignada la máquina:
11.- Ahora vamos a realizar desde una máquina Kali Linux un ataque de denegación de servicio
con la herramienta slow loris:
a. MYSQL
1.- El primer paso para asegurar este servicio es establecer la directiva “bind-
address=127.0.0.1”, esto hará que la base de datos solo escuche peticiones de la propia y no
peticiones externas.
2.- Para evitar fuga de información del sistema mediante un ataque SQLi, procederemos a
modificar el fichero “/etc/mysql/my.cnf”, añadiendo los siguientes parámetros:
[mysqld]
Local-infile =0
Secure-file-priv = /dev/null
3.- Renombrar el usuario root, para hacer la labor del atacante más difícil en identificar el
usuario administrador:
Flush privileges;
6.- Ejecutar siempre el siguiente script de instalación ya que elimina posibles configuraciones
erróneas:
Mysql_secure_installation
b. PHP
1.- Evitar que PHP nos informe de su versión, nos dirigiremos al fichero
“/etc/php/apache2/php.ini” y modificaremos lo siguiente:
Expose_php = off
2.- Para deshabilitar la salida de errores el parámetro “display_errors debe estar como a
continuación:
Display_errors = off
Open_basedir = /var/www
4.- Evitar la ejecución de funciones, para que en caso de que un atacante subiese una Shell no
pudiese ejecutarla:
Allow_url_fopen = off
Allow_url_include = off
c. APACHE
1.- Controlar el usuario y grupo de apache:
User www-data
Group www-data
Para el footprinting:
- Metasploit
- Exploit-db
22. MEJORAS
Tras tener en producción todas estas herramientas, se han llegado a conclusiones para
asegurar cada vez más la seguridad de la red, una de las primeras mejoras que se van a
implementar son las VLAN, posteriormente también se montara un Security Center de
Kaspersky para el control de antivirus de sistemas Windows, Linux y también para solucionar
su vulnerabilidades.
También se llevará una mejora a largo plazo que la realización de redundancia de Gateway
mediante el protocolo BGP, esta última todavía no podemos abarcarla debido a su nivel de
conocimientos necesarios, aparte de los requisitos previos que son necesarios para poder
obtener direcciones, es decir nuestro propio rango de direcciones IP dentro de “Internet”.
Tras debatir todas estas mejoras, se ha llegado a la conclusión que una vez que estén en
producción todas las mejoras, solo será necesario mantenerlas y estar al día con las últimas
tecnologías y nuevos tipos de ataque para poder implementar nuevas mejoras que puedan
evitar estos ataques.
Tras estar un tiempo trabajando con todas estas herramientas me he dado cuenta que todas
se completan entre sí, es decir ninguna hace la competencia a la otra, ya que estas trabajar en
armonía, endurecen y dan seguridad a la red.
También tengo que comentar que al principio era difícil implementar todos estos servicios
bien, pero cuando está todo perfectamente colocado, todo trabaja como si fuese un reloj
suizo.
Para mí esta experiencia de poder desplegar un sistema de seguridad tan amplio me ha dado a
entender la realidad de la importancia de la seguridad dentro de las redes empresariales, ya
que si en caso de que un “ciberdelincuente” consiguiese penetrar los sistemas las perdidas en
información o en servicio serian increíbles, por eso cada día este sector de la informática está
en auge.
24. FUENTES
https://joanesmarti.com/tu-propio-ids-con-snort-y-snorby-en-linux-debian-7/
https://www.youtube.com/watch?v=EeqDKmZdtkY
https://www.youtube.com/watch?v=LGtJK9xGq-4
https://www.youtube.com/watch?v=V05WfhmCW_M&t=2s
https://www.fail2ban.org/wiki/index.php/Main_Page
https://github.com/jgmdev/ddos-deflate