La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Práctica 9 – Configuraciones de ayuda a la seguridad.

Presentaciones similares


Presentación del tema: "Práctica 9 – Configuraciones de ayuda a la seguridad."— Transcripción de la presentación:

1 Práctica 9 – Configuraciones de ayuda a la seguridad

2  Es un servicio de login remoto seguro (Secure Shell Daemon) ◦ Servidor (sshd) en TCP puerto 22 ◦ Cliente (ssh)  Comprobamos que están operativos ◦ Comando ssh ◦ Comando service ◦ Comando netstat

3

4  Sistema de control de acceso a servicios según: ◦ Servicio ◦ Nombre de host ◦ Dirección de red o IP  Controlado por dos archivos ◦ /etc/hosts.allow ◦ /etc/hosts.deny

5  Usualmente instalado en Debian como tcpd

6  hosts.allow  hosts.deny

7  Limitación de acceso a subred ◦ sshd: ALL EXCEPT 192.168.0.0/24 en hosts.deny.

8  Acceso imposible desde 37.59.48.48  Registrado en /var/log/auth.log

9  Acceso posible desde 192.168.0.x  Registrado en /var/log/auth.log

10  Acceso posible desde 192.168.0.x  Registrado en /var/log/auth.log

11  Limitación de acceso a un único host ◦ sshd: ALL EXCEPT 37.59.48.48/24 en hosts.deny.

12  Acceso posible desde samus.nl (37.59.48.48)

13  Acceso imposible desde cualquier otro host.

14  Sysctl es un comando para controlar configuración del sistema. ◦ Más de 700 variables

15  Archivo cargado en el arranque  Permite cambiar las variables de sysctl.  Se puede cargar manualmente con sysctl -p

16  Son paquetes con direcciones de origen o destino imposibles.  net.ipv4.conf.all.log_martians = 1 ◦ Se registran los paquetes marcianos en /var/log/messages. ◦ Registrar paquetes extraños puede ayudar a detectar algunos ataques con spoofing.  Probamos a enviar paquetes con 127.0.0.1 como dirección de origen.

17

18  Net.ipv4.tcp_syncookies = 1  Ayudan a evitar ataques de tipo SYN Flood  Elige valores del número de secuencia tales que codifican la información de la conexión. ◦ Se puede responder a SYN con SYN+ACK y descartar la conexión de la cola evitando la saturación. ◦ Si se completa la conexión, se reconstruira la entrada de la cola mediante el número de secuencia en el ACK recibido.

19  Los paquetes ICMP Redirect son enviados por routers a los hosts para actualizar sus tablas de ruta si detectan que están enrutando paquetes del host hacia otro router visible por éste.  Se pueden utilizar estos paquetes para realizar ataques Man in the Middle redirigiendo el tráfico del host a un router comprometido.

20  net.ipv4.conf.all.accept_redirects = 0 ◦ Bloquea todos los mensajes de tipo ICMP Redirect.  net.ipv4.conf.all.secure_redirects = 0 ◦ Sólo acepta ICMP redirects si provienen de un router que ya estaba en la tabla de rutas del host. ◦ Se puede evitar si el atacante realiza spoofing de la IP de origen del ICMP Redirect.

21 Práctica 10 – Análisis de servicios activos

22  Herramienta (network statistics) que permite listar las conexiones existentes en un equipo.  Disponible en Linux, Windows, OSX, etc.

23  Invocar sin argumentos omite los sockets en escucha.  Muestra también los sockets de dominio UNIX ◦ Mecanismo de comunicación entre procesos que utiliza la infraestructura de sockets  Debemos filtrar la salida ◦ -a | -l Muestran los sockets en escucha ◦ --inet Muestra sólo sockets de la familia AF_INET

24  *.* en dirección externa indica que escuchan conexiones de cualquier procedencia.

25  -p muestra el proceso que ha creado el socket  -numeric permite evitar la resolución de nombres o el uso de nombres simbólicos de puerto (/etc/services).

26

27  MDA (dovecot) ◦ TCP 110 – POP3 ◦ TCP 143 – IMAP  MTA (exim4) ◦ TCP 25 – SMTP  DNS (named) ◦ UDP 53 – DNS  SSH (sshd) ◦ TCP 22  Servidor de BBDD ◦ TCP 3306 - MySQL

28  Faltan algunos servicios. ◦ Apache?  Dichos servicios funcionan con IPv6 mapeadas a IPv4 ◦ Añadimos el switch -6 a netstat

29  Apache en ◦ TCP 80 (HTTP) ◦ TCP 443 (HTTPS)

30  También aparecen conexiones en curso...  Conectamos mediante SSH

31  Dos nuevas conexiones (se ha conectado al propio equipo) ◦ Cliente ◦ Servidor

32  Similar a Linux, sólo cambian los switches.

33  Invocamos igual ◦ -a Mostrar todas las conexiones ◦ -f Resolver IPs a FQDN ◦ -b Mostrar proceso creador de la conexión  NOTA: localhost aparece como activation.guitar-pro.com (está definido en el archivo HOSTS)

34

35  Esta máquina no tiene apenas servicios ◦ MySQL en TCP 3306 ◦ KMService (Activador Office) ◦ VMWare  La mayoría son sockets para IPC  Hay conexiones web activas

36  Herramienta básica de creación de conexiones.  Puede utilizarse para comprobar conexiones a puertos conocidos de servicios.

37  Herramienta básica de creación de conexiones.  Puede utilizarse para comprobar conexiones a puertos conocidos de servicios. ◦ Opción –v (verbose) ◦ Opción –z (escanear respuesta, no conectar)  Probamos a los puertos reservados (1-1023) en nuestra propia máquina.

38  Herramienta de análisis de redes muy madura y potente.  Preinstalada en la mayoría de distribuciones Linux.  Escaneo de hosts y puertos

39  Especificación de objetivos ◦ Dirección IP ◦ Notación Red/Prefijo ◦ Rangos de IP ◦ Nombres de host  Especificación de puertos ◦ Puertos únicos ◦ Rangos ◦ Por Protocolo mediante prefijos  U: (UDP)  T: (TCP)  S: (SCTP)

40

41  Varios modos de escaneo ◦ -sS TCP SYN ◦ -sT TCP connect() ◦ -sU UDP ◦ -sN, -sF, -sX TCP NULL, FIN y Christmas ◦ -sA TCP ACK ◦ -sM TCP Maimon ◦ -sW TCP Window ◦ -sI Idle scan ◦ -b FTP Bounce ◦ Otros...

42  Se envían sondas SYN ◦ Respuesta SYN + ACK > Abierto ◦ Respuesta RST > Cerrado ◦ ICMP Unreachable o timeout > Filtrado  Muy rápido y discreto ◦ No se llegan a crear conexiones  Requiere root para crear paquetes RAW

43

44

45  Se realiza con connect() ◦ Respuesta SYN + ACK > Abierto ◦ Respuesta RST > Cerrado ◦ ICMP Unreachable o timeout > Filtrado  Menos discreto ◦ Se crean conexiones, quedan registradas en logs  No requiere root

46

47

48  Se envían datagramas UDP vacíos ◦ Recibir respuesta > Abierto ◦ ICMP Port Unreachable (Tipo 3, Cód. 3) > Cerrado ◦ Cualquier otro ICMP Tipo 3 > Filtrado  Mucho más lento ◦ No recibir respuesta puede significar pérdida de sonda, es necesario retransmitir ◦ Los hosts pueden limitar el flujo de ICMP a uno por segundo

49

50

51  Envían sondas sin SYN, ACK ni RST  Según el RFC de TCP si se recibe una sonda así ◦ Un puerto cerrado responde con RST ◦ Un puerto abierto la descarta  Flags activas ◦ NULL: Ninguna ◦ FIN: FIN ◦ Xmas: URG, PSH y FIN  Es menos fiable y más sensible a implementaciones de pila y firewalls.

52

53

54  Envían sondas con flag ACK ◦ Puertos abiertos o cerrados responden con RST  ACK Scan no permite diferenciar abierto o cerrado, solo filtrado o no filtrado  Es muy dependiente de firewalls e implementaciones de pila  Window scan usa el valor del campo Window de las respuestas RST ◦ 0 indica cerrado ◦ >0 indica abierto

55

56

57  Maimon es análogo a NULL Scan, pero con las flags FIN y ACK  Algunos sistemas BSD descartan estas sondas en contra del protocolo.  --scanflags permite especificar que flags llevarán activas las sondas

58  Es completamente ciego y silencioso. No se envía nada desde el equipo que escanea al objetivo.  Se utiliza un host «zombie» aprovechando un exploit de Ids de fragmentación IP predecibles.  Permite explorar relaciones de confianza en las firewalls usando diferentes «zombies»

59  Se basa en la característica Proxy FTP Connection del protocolo FTP  Si conectamos a un servidor FTP con esta característica, se puede usar el servidor para que haga el escaneo, mejorando el sigilo  No es una característica muy soportada hoy en día

60  Utiliza diversas técnicas de sondeo con payloads específicos para obtener más información de los servicios del objetivo.  Puede averiguar números de versión, tipos de SO, etc.  Nivel de agresividad controlable ◦ -–version-intensity

61

62 Práctica 11 – Ataques de denegación de servicios

63 Dsniff es un conjunto de herramientas de “análisis de tráfico” que trabaja a diferentes niveles con el fin de obtener información útil del equipo o equipos “monitorizados Utilidades dsniff mailsnarf webspy arpspoof dnspoof macof tcpnice

64  Ataque consistente en introducirse en el medio de una conexión haciéndonos pasar para cada extremo por el interlocutor esperado.  Permite visualizar y manipular los datos de la víctima.

65  ARP Poisoning

66 Envenenamos las cachés arp de los dos equipos que se comunican.

67  Primero se ha de activar el IP forwarding en el equipo, para poder actuar como un router.  A continuación se envenenan las tablas con arpspoof

68  Comprobamos que el ataque se ha realizado correctamente.

69  Una vez situados en medio de la comunicación utilizamos dsniff para «olfatear» (sniffing) credenciales de autenticación de protocolos en texto plano. ◦ HTTP ◦ FTP ◦ Telnet ◦...

70  El equipo atacante actúa como un servidor DNS y falsifica las resoluciones de nombres.  Redirige las solicitudes del usuario a donde el atacante quiera.  Se crea un fichero con las resoluciones falsas deseadas.

71

72  Permite monitorizar en tiempo real las páginas que visita la víctima.

73  Los ataques de denegación de servicio distribuidos (Distributed Denial of Service) consisten en colapsar determinados servicios mediante una sobrecarga de solicitudes coordinadas entre varias fuentes, consiguiendo un volumen de tráfico mucho mayor.  Se pueden realizar sin consentimiento del usuario mediante botnets.  Herramientas como LOIC (Low Orbit ION Cannon)

74

75  Ataque DDoS masivo a los datacenters de Blizzard en Irvine, California.  Ocurre durante los días siguientes al lanzamiento de la última expansión de World of Warcraft (13/11/2014)  Causa colapsos en los servidores de autenticación y de juego, desconexiones, latencias altísimas y colas de entrada

76

77  Monitorización del ataque por la herramienta NORSE.

78  Se trata de mensajes o advertencias engañosas.  Se trata de conseguir la mayor distribución posible.  Sirven para captar direcciones de usuarios para enviar spam o malware, suplantar identidades, etc.

79  Hay algunas pautas para reconocerlos ◦ Son anónimos ◦ Ocultan u omiten fechas de publicación ◦ Contienen «ganchos» como ofertas imposibles ◦ Contienen peticiones de reenvío

80  Hoaxes en Whatsapp, Facebook, etc.

81  Amenazas falsas de virus...

82 Práctica 12 – Netfilter e IPTables

83  Módulo de kernel Linux.  Instalado en la mayoría de distribuciones  Funciones ◦ Filtrado de paquetes ◦ Manipulación de paquetes ◦ Traducción de direcciones (NAT) ◦ Otros

84  Provee un framework sobre el que construir aplicaciones  «Hooks» en la pila de red que permiten registrar funciones «Callback»  Se llama a dichas funciones cuando un paquete atraviesa un «hook» en la pila.

85  Varios subsistemas y extensiones ◦ IPTables ◦ ConnTrack ◦ NAT ◦ Múltiples APIs para extensiones de terceros.

86  Estructura de tablas genéricas para definición de reglas.  Niveles de estruturado ◦ Tablas ◦ Cadenas ◦ Reglas

87  Tabla FILTER se encarga del filtrado de paquetes según las reglas.  Se opera sobre ella si no se especifica otra.  Consta de tres cadenas por defecto. ◦ INPUT: Paquetes cuyo destino es el sistema. ◦ OUTPUT: Paquetes generados en el sistema. ◦ FORWARD: Paquetes que deben ser enrutados por el sistema.

88  Tabla NAT se encarga de las traducciones de direcciones de red.  Consta de tres cadenas por defecto. ◦ PREROUTING: Paso previo a consultar la tabla de rutas. Realiza DNAT (Traducción de destino) ◦ POSTROUTING: Paso posterior a consultar la tabla de rutas. Realiza SNAT (Traducción de origen) ◦ OUTPUT: Paquetes generados en el sistema. Realiza DNAT limitada.

89  Tabla MANGLE manipula paquetes que pasan por sus cadenas, como por ejemplo, bits QoS.  Es la más avanzada y consta de las cinco cadenas ya vistas.

90  Cadenas son listas ordenadas de reglas  Las reglas especifican criterios de coincidencia y objetivos ◦ Los paquetes coincidentes se mandan al objetivo de la regla ◦ El resto de paquetes proceden a la siguiente regla de la cadena ◦ Si se llega al final de la cadena, se continua por la cadena «madre» o se sigue la política por defecto.

91  Objetivos ◦ ACCEPT : Aceptar ◦ DROP : Descartar ◦ QUEUE : Encolar paquete ◦ RETURN : Salir de la cadena actual ◦ LOG : Registrar paquete ◦ REJECT : Descartar con notificación ◦ SNAT, DNAT : Realizar traducción NAT ◦ MASQUERADE : Traducción NAT dinámica ◦ Otros...

92  Permite registrar las conexiones en curso.  Categoriza paquetes en función de su asociación a una conexión como: ◦ NEW : No asociado ◦ ESTABLISHED : Ya asociado a una conexión ◦ RELATED : Relacionado con la conexión pero no estrictamente parte de ella (p.e. ICMP) ◦ INVALID  Permite la creación de firewalls con estado.

93  Comando iptables para modificar reglas y cadenas.

94

95

96  Limitar acceso a un servidor web a la subred local. ◦ Descartar paquetes destinados al puerto 80 que no procedan de la subred 192.168.0.0/24

97

98 Equipo de la subred 192.168.0.11

99 Equipo 192.168.0.22

100 Log en dmesg

101 Bloqueado desde equipos externos 37.59.48.48

102 Añadimos 37.59.48.48 a los equipos permitidos.

103  Limitación de conexiones salientes SSH ◦ Permitir sólo a samus.nl (37.59.48.48) ◦ Descartar paquetes dirigidos al puerto TCP 22 si la dirección de destino no es 37.59.48.48

104

105 37.59.48.48 Válido 192.168.0.12 Bloqueado Registrado en dmesg

106  Bloqueo de todo el tráfico excepto pings ◦ Cambio de políticas por defecto a DROP ◦ Aceptar explícitamente  ICMP Echo Request de 37.59.48.48  ICMP Echo Reply a 37.59.48.48 ◦ NOTA: Se debe poner la IP del servidor, al bloquear las solicitudes DNS no se podría resolver samus.nl.

107

108 Pings desde el equipo. Pings hacia el equipo.


Descargar ppt "Práctica 9 – Configuraciones de ayuda a la seguridad."

Presentaciones similares


Anuncios Google