ATAQUES
-
Pasivos (No afectan)
-
MiM
-
Sniffing
-
Activos (Afectan)
-
DDos
-
Overflow
IDS (INTRUSION DETECTION SYSTEM)
Es un programa de detección de accesos no autorizados a un computador o a una red.
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.
Se basa en el análisis pormenorizado del tráfico de red, el cual al entrar al analizador es comparado con firmas de ataques conocidos, o comportamientos sospechosos, como puede ser el escaneo de puertos, paquetes malformados, etc. El IDS no sólo analiza qué tipo de tráfico es, sino que también revisa el contenido y su comportamiento.
Normalmente esta herramienta se integra con un firewall. El detector de intrusos es incapaz de detener los ataques por sí solo, excepto los que trabajan conjuntamente en un dispositivo de puerta de enlace con funcionalidad de firewall
HIDS (HOST-BASED INSTRUSION DETECTION SYSTEM)
Busca detectar anomalías que indican un riesgo potencial, revisando las actividades en la máquina (host). Puede tomar medidas protectoras.
Las funciones de este tipo de software son muy similares a las de los IDS. Configuraciones típicas permiten varios HIDS repartidos por la red que envían sus resultados a un servidor centralizado que los analizará en busca de los riesgos y alertas antes mencionados.
Este fue el primer tipo de software de detección de intrusos que se diseñó, siendo el objetivo original el Mainframe, donde la interacción exterior era infrecuente.
Componentes:
-
Sensores
-
Analisis/Procesamiento
-
Consola
Basados por firmas:
Ataques conocidos
Basador Normales:
Todo lo anormal se alerta
-
IPS → igual que IDS pero este toma acciones en caso de alguna alarma
VPN
Para hacerlo posible de manera segura es necesario proporcionar los medios para garantizar la autentificación
-
Autentificación y autorización: ¿Quién está del otro lado? Usuario/equipo y qué nivel de acceso debe tener.
-
Integridad: de que los datos enviados no han sido alterados. Para ello se utiliza funciones de Hash. Los algoritmos de hash más comunes son los Message Digest(MD2 y MD5) y el Secure Hash Algorithm (SHA).
-
Confidencialidad/Privacidad: Dado que sólo puede ser interpretada por los destinatarios de la misma. Se hace uso de algoritmos de cifrado como Data Encryption Standard (DES), Triple DES (3DES) y Advanced Encryption Standard (AES).
-
No repudio: es decir, un mensaje tiene que ir firmado, y quien lo firma no puede negar que envió el mensaje.
-
Control de acceso: Se trata de asegurar que los participantes autenticados tiene acceso únicamente a los datos a los que están autorizados.
-
Auditoría y registro de actividades: Se trata de asegurar el correcto funcionamiento y la capacidad de recuperación.
-
Calidad del servicio: Se trata de asegurar un buen rendimiento, que no haya una degradación poco aceptable en la velocidad de transmisión.
Como Configurar una VPN
IKE ISAKMP Phase 1
Paso 1: configuración de ISAKMP Policy.
R1(config)#crypto isakmp policy 1
R1(config-isakmp)#encr 3des
R1(config-isakmp)#hash md5
R1(config-isakmp)#authentication pre-share
R1(config-isakmp)#group 2
R1(config-isakmp)#lietime 86400
Paso 2: definir la contraseña a utilizar entre los R1 y R2 como pre-share key.
R1(config)#crypto isakmp key cisco address 1.1.1.2
Paso 3: configuración de ACL
R1(config)# ip Access-list extended VPN-TRAFFIC
R1(config-ext-nacl)# permit ip 10.10.10.0 0.0.0.255 20.20.20.0 0.0.0.255
IKE ISAKMP Phase 2
Paso 4: configurando IPSec Transform
R1(config)# crypto ipsec transform-set TS esp-3des esp-md5-hmac
Paso 5: configuración de CRYPTO MAP
R1(config)# crypto map CMAP 10 ipsec-isakmp
R1(config-crypto-map)#set peer 1.1.1.2
R1(config-crypto-map)#set transform-set TS
R1(config-crypto-map)#match address VPN-TRAFFIC
Paso 6: aplicando Crypto MAP a una interface pública
R1(config)# interface Fastethernet 0/1
R1(config-if)#crypto map CMAP
( Lo mismo para el otro router)
R1#ping 20.20.20.1 source FastEthernet 0/0
R1#show crypto session
(Y debe aparecer una mamada que dice , interfaz prendida)
FIREWALL
Es una parte de un sistema o una red que está diseñada para bloquear el acceso no autorizado, permitiendo al mismo tiempo comunicaciones autorizadas.
Se trata de un dispositivo o conjunto de dispositivos configurados para permitir, limitar, cifrar, descifrar, el tráfico entre los diferentes ámbitos sobre la base de un conjunto de normas y otros criterios.
Los cortafuegos pueden ser implementados en hardware o software, o en una combinación de ambos. Los cortafuegos se utilizan con frecuencia para evitar que los usuarios de Internet no autorizados tengan acceso a redes privadas conectadas a Internet, especialmente intranets. Todos los mensajes que entren o salgan de la intranet pasan a través del cortafuegos, que examina cada mensaje y bloquea aquellos que no cumplen los criterios de seguridad especificados. También es frecuente conectar el cortafuegos a una tercera red, llamada zona desmilitarizada o DMZ, en la que se ubican los servidores de la organización que deben permanecer accesibles desde la red exterior.
IP TABLES
Como diseñar un firewall en Linux
## Vaciamos las reglas
iptables -F
iptables -X
iptables -t nat -F
## Establecemos politicas predeterminada
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
# Aceptamos todo de localhost
/sbin/iptables -A INPUT -i lo -j ACCEPT
# A nuestra IP le dejamos todo
iptables -A INPUT -s 192.168.2.1 -j ACCEPT
# A otra ip interna le permitimos todo
iptables -A INPUT -s 192.168.2.99 -j ACCEPT
iptables -A INPUT -s 192.168.2.100 -j ACCEPT
# Permitimos una conexion a ssh y telnet (22 y 23) desde un equipo
iptables -A INPUT -s 192.168.2.10 -p tcp --dport 22:23 -j ACCEPT
# A otro le permitimos acceso FTP
iptables -A INPUT -s 212.176.121.111 -p tcp --dport 20:21 -j ACCEPT
# El puerto 80 y 8080 (www) abierto, para un servidor web.
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
# Y el resto, lo cerramos
iptables -A INPUT -p tcp --dport 20:21 -j DROP
iptables -A INPUT -p tcp --dport 22:23 -j DROP
iptables -A INPUT -p tcp --dport 6001 -j DROP
# Cerramos rango de los puertos privilegiados. Cuidado con este tipo de
# barreras, antes hay que abrir a los que si tienen acceso.
iptables -A INPUT -p tcp --dport 1:1024 -j DROP
iptables -A INPUT -p udp --dport 1:1024 -j DROP
# impedimos iniciar conexion los puertos altos
# (puede que ftp no funcione)
iptables -A INPUT -p tcp --syn --dport 1025:65535 -j DROP
# Cerramos otros puertos que estan abiertos
iptables -A INPUT -p tcp --dport 3306 -j DROP
iptables -A INPUT -p tcp --dport 10000 -j DROP
Debemos asegurarnos que el fichero tenga permisos de ejecución, con el comando
chmod +x iptables.cf
Para arrancar el servicio no tenernos más que hacer
/etc/init.d/iptables.cf start
Si lo queremos parar
/etc/init.d/iptables.cf stop
Y si lo queremos reiniciar
/etc/init.d/iptables.cf restart
Podemos comprobar las reglas que se han aplicado con el comando
iptables -L
Ejemplo ACCESS-LIST y IPTABLES
OLUCION 1
FE1/0 IN (LAN)
access-list 110 remark SEGMENTO LAN IN
access-list 110 permit tcp host 165.1.1.1 host 201.10.23.1 eq 80
access-list 110 permit tcp host 165.1.1.2 host 165.1.1.254 eq 23
access-list 110 permit tcp host 165.1.1.2 host 165.1.1.254 eq 22
access-list 110 permit tcp host 165.1.1.2 host 191.120.12.2 eq 23
access-list 110 permit tcp host 165.1.1.2 host 191.120.12.2 eq 22
access-list 110 permit tcp 165.1.1.0 0.0.0.255 201.10.23.1 eq 21
access-list 110 permit tcp 165.1.1.0 0.0.0.255 201.10.23.1 eq 20
access-list 110 permit icmp 165.1.1.0 0.0.0.255 host 201.10.23.1 eq RESPUESTA PING
access-list 110 deny any any
FE 0/0 IN (WAN)
access-list 120 remark SEGMENTO WAN IN
access-list 120 permit tcp any 165.1.1.0 0.0.0.255 established
access-list 120 permit icmp host 201.10.23.1 165.1.1.0 0.0.0.255 eq echo
access-list 120 deny any any
SOLUCION 2
iptables -P FORWARD DROP
iptables -P INPUT DROP
#ETH1 = LAN
iptables -A FORWARD -i eth1 -s 165.1.1.1 -d 201.10.23.1 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth1 -s 165.1.1.2 -p tcp --dport 22,23 -j ACCEPT
iptables -A FORWARD -i eth1 -s 165.1.1.0/24 -d 201.10.23.1 -p tcp --dport 20,21 -j ACCEPT
iptables -A FORWARD -i eth1 -s 165.1.1.0/24 -d 201.10.23.1 -p icmp -j ACCEPT
#ETH0 = WAN
iptables -A FORWARD -i eth0 -d 165.1.1.0/24 -m state --state established,related -j ACCEPT
iptables -A FORWARD -i eth0 -s 201.10.23.1 -d 165.1.1.0/24 -p icmp --type echo-request -j ACCEPT
Túnel GRE