Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| master_cs:secom:tm2_v2 [2026/05/26 23:03] – [Mecanismo de autenticación EAP basado en TLS] thejuanvisu | master_cs:secom:tm2_v2 [2026/05/27 18:06] (actual) – thejuanvisu | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ====== Seguridad a Nivel de Enlace ====== | + | ====== Seguridad a Nivel de Enlace |
| ===== PBNAC en IEEE 802 Local Area Networks ===== | ===== PBNAC en IEEE 802 Local Area Networks ===== | ||
| 802.1X es un estándar IEEE para control de acceso basado en puertos (PBNAC). Forma parte del grupo IEEE 802.1 de protocolos de red. Provee mecanismos de autenticación para dispositivos que se quieren conectar a una LAN o una WLAN. Los puertos del switch están bloqueados por defecto hasta que el dispositivo conectado sea autenticado correctamente en alguna entidad de seguridad de la infraestructura. La autenticación 802.1X involucra 3 partes: | 802.1X es un estándar IEEE para control de acceso basado en puertos (PBNAC). Forma parte del grupo IEEE 802.1 de protocolos de red. Provee mecanismos de autenticación para dispositivos que se quieren conectar a una LAN o una WLAN. Los puertos del switch están bloqueados por defecto hasta que el dispositivo conectado sea autenticado correctamente en alguna entidad de seguridad de la infraestructura. La autenticación 802.1X involucra 3 partes: | ||
| Línea 219: | Línea 219: | ||
| * si la autenticación 802.1X es activada, el la fase de 4-way handshake también es ejecutada inmediatamente depués del diálogo entre el suplicante y el servidor de autenticación | * si la autenticación 802.1X es activada, el la fase de 4-way handshake también es ejecutada inmediatamente depués del diálogo entre el suplicante y el servidor de autenticación | ||
| - | ==== Mecanismo | + | === Jeraría |
| + | * Pairwise Master Key (PMK): La clave es derivada de un metodo EAP o obtenida directamente de una PSK (PreSharedKey) | ||
| + | * Pairwise Transient Key (PTK): Concatenación de claves de sesión derivadas de la PMK. sus componentes son: | ||
| + | * Clave de confirmación (KCK) | ||
| + | * Clave de cifrado de clave (KEK) | ||
| + | * Clave Temporal (TK) | ||
| - | | + | ==== Portal Captivo ==== |
| - | * EAP-TTLS (EAP tunneled TLS): Autenticación mutua, | + | El objetivo es localizar una web de autenticación entre el punto de acceso y el resto de recursos. Pasos: |
| - | * PEAP (Protected EAP): Igual que el EAP-TTLS, el mecanismo | + | - Tras asociarse con el Ap y obtener su configuración de web, el dispositivo cliente no podría acceder ningún otro recurso al estar el AP haciendo filtrado de MAC/IP |
| - | * EAP-FAST (EAP Flexible Authentication via Secure Tunneling): No necesita usar clientes o certificados | + | - Cuando el usuario trata de acceder un recurso es automaticamente redirigido a un sitio de autentiación usando el cliente web |
| + | - El usuario debe proveer login/ | ||
| + | - Si la autenticación es exitosa, entonces el resto de recursos se vuelven disponibles. | ||
| + | |||
| + | Normalmente es usado por ISPs para proveer acceso a internet a través de puntos de acceso conocidos como hotspots. Tiene los siguientes problemas: | ||
| + | | ||
| + | * Se puede realizar IP/MAC spoofing de un dispositivo ya autenticado. | ||
| + | * Enmascaramiento de varios dispositivos detrás de uno con capacidad de reenvio. | ||
| + | * Si el AP solo redirecciona pticiones iniciales http al sitio de autenticación y no filtra otros puertos, la autenticación puede ser saltada usandos servidores externos. | ||
| + | |||
| + | ==== Cifrado ==== | ||
| + | El criptoanálisis es el estudio de los textos cifrados en un intento por restaurar el mensaje original o recuperar la clave de cifrado: | ||
| + | * Ciphertext-only attack | ||
| + | * Known-plaintext attack | ||
| + | * Chosen-plaintext attack | ||
| + | * Chosen-Ciphertext attack | ||
| + | |||
| + | En un caso ideal, todos los mensajes han sido cifrados con la misma clave. Para implementar esta estategia con solo una clave, la clave conocida y el vector de inicialziación deben ser combinados en origen y destino para generar una contraseña de un solo uso. El vector de inicalización debe viajar ent exto plano dentro del mensaje cifrado. Si el Vector de inicialización increse en 1 monotonamente, | ||
| + | |||
| + | === Cifrado WEP (Wired Equivalency Privacy) === | ||
| + | * Basado en cifrado RC4 usando claves de 64/128/256 bits. | ||
| + | |||
| + | <WRAP box> | ||
| + | $$C = P \oplus K_{iv}, \quad K_{iv} = \mathrm{PRNG}(IV \mid \text{WEP key})$$ | ||
| + | </ | ||
| + | * El vector de inicialización es de solo 24 bits, es cuestión de tiempo | ||
| + | * La clave (WEP Key) es una clave de larga duración compartida entre todos los STA y AP | ||
| + | * El reuso de Vector de Inicialización por parte de los STA no está prohibido. | ||
| + | * Si sabes P y C puedes obtener directamente $K_{iv}$ | ||
| + | |||
| + | <WRAP box> | ||
| + | $$P \oplus C = P \oplus P \oplus K_{iv} = K_{iv}$$ | ||
| + | </ | ||
| + | |||
| + | * Algunos vectores de inicialización son peligrosos ya que permiten saber algunos bytes de la clave WEP fácilmente. | ||
| + | * La comprobación de redundacia física usada en WEP como comprovador de integridad de valor es insegura debido a su linealidad, permite cambiar datos y actualizar | ||
| + | * WEP NO DEBE SER USADO POR RAZONES DE SEGURIDAD. | ||
| + | |||
| + | ==== Protocolo de integridad de clave temporal (TKIP) ==== | ||
| + | Incluido como una opción por la wifi alliance en WPA y en el estándar IEEE 802.11i y correspondientes programas de certificación WPA2. Solo debe ser usado en dispositivos cuya tarjeta de red no soporta AES. TKIP depende de la presencia del mecanismo de 4-way handshake. Los datos son cifrados usando el algoritmo RC4 con una clave temporal de 128 bits como entrada. En cada STA, el TKIP secuence Counter (TSC) es incrementado en uno cada vez que cada tecto cifrado transmitido, | ||
| + | * Funciones hash no lineales usando clave de integridad temporal diferente a la clave de cifrado TK. | ||
| + | * Como contramedida, | ||
| + | * Vulnerable a ataques DoS | ||
| + | * Mejor que WEP, pero no mucho mejor. | ||
| + | |||
| + | ==== AES-CTR con Protocolo CBC-MAC ==== | ||
| + | WPA2 es una mejora de WPA implementando gran parte del estándar 802.11i, tiene una filosofía similar a TKIP: | ||
| + | * La clave temporal | ||
| + | * Número de paquetes (PN) de 48 bits, usados para el vector de inicialización y para prevenir ataques replay | ||
| + | * Si se llega al límite de la secuencia de PN, se renueva la TK. | ||
| + | |||
| + | La principal mejora consiste en el cambio de cifrado de RC4 a AES block Cipher y una integrtidad MIC también basada en AES (CBC-MAC MIC). WPA2 puede funcionar con WPA bajo el mismo SSID. Para hacer ersto, los APs funcionan en WPA2 Mixed Mode, ofreciendo métodos de cifrado TKIP y CMP. | ||
| + | |||
| + | |||
| + | ==== Vulnerabilidades en el 4-way Handshake ==== | ||
| + | Los mensajes del 4-way hadnshake son emitidos en texto plano. Aun atacante puede obtener el Anonce Snonce, AA, y SPA simplemente escuchando. | ||
| + | * Si el atacante están dentro de la red y conoce el PMK, puede derivar el PTK negociado entre el AP y la víctima y, por lo tanto, descifrar cualquier mensaje que la víctima envie o reciba. | ||
| + | * Si el atacante no tiene acceso a la red, puede tratar de realizar ataques offline de diccionario. Se pueden aplicar las siguientes contramedidas: | ||
| + | * Con autenticación PSK, usar una secuencia aleatoria hexadecimal larga como contraseña | ||
| + | * No usar el SSID por defecto, se recomienda cambiarlo para evitar tablas rainbow precomputadas que pueden ser usadas en la red wifi. | ||
| + | * Con WPA72-Enterprise, | ||
| + | * Un ataque MitM suplantando el AP y el server AAA puede llevar al robo de credenciales si el suplicante está mal configurado. | ||
| + | |||
| + | Si el atacante no llegó a tiempo, puede provvocar una deautenticación para forzar a la STA a repetir la asociación y completar | ||
| + | |||
| + | Otros problemas pueden ser ataques: | ||
| + | * KRACK (Key Reinstallation Attack): un ataque de replay durante el 4-way handshake para rinstalar una clave ya en uso usando un ataque MitM Evil Twin. lo que afecta tanto a WPA-personal como a WPA-Enterprise, aunque algunos parches de software pueden solucionar | ||
| + | * PMKID attack: efectivo | ||
| + | |||
| + | ==== Wireless Protected Setup (WPS) ==== | ||
| + | WPS se encarga de la experiencia de usuario de la aconfiguración wifi automatizada, | ||
| + | * Registrar: entidad con la autoridad para emitir o ravocar | ||
| + | * Enrollee: Dispositivo que quiere unirse al dominio WLAN. | ||
| + | * AP | ||
| + | |||
| + | Wireless Protected Setup tiene varias vulnerabilidades: | ||
| + | * PBC (Push Button Configuration), | ||
| + | * PIN: Contraseña de dispositivo obtenida | ||
| + | * Se recomiendao NO usar WPS con PIN | ||
| + | |||
| + | ==== Robust Management Frames ==== | ||
| + | |||
| + | Introducidos en el IEEE 802.11W. Antes de establecimiento PTK, los marcos de control necesitaban comenzar la asociación de red no podían estar ni cifrados ni con protección de integridad, por lo que un atacante podía fácilmente falsificarlos. Los marcos especialmente importantes son " | ||
| + | |||
| + | ==== WPA3 ==== | ||
| + | El PMF (Protected Management Frames) es obligatorio. En vez de PSK se usa SAE (Simultaneous Autentication of Equals) para WPA-Personal. | ||
| + | * Autenticación SAE en vez de Open Authentication en la primera fase de la conexión de una STA | ||
| + | * PMK diferente para cada asociación entre AP y STA, establecido con privacidad. | ||
| + | * Resistencia a ataques de diccionario online. | ||
| + | * La contraseña inicial no se usa para derivar | ||
| + | * Modo de transición WPA3-SAE | ||
| + | |||
| + | {{drawio> | ||
| + | |||
| + | Sae usa el protocolo DragonFly: | ||
| + | |||
| + | <WRAP box> | ||
| + | |||
| + | $$ | ||
| + | \begin{array}{|c|c|} | ||
| + | \hline | ||
| + | |||
| + | \textbf{Alice} & \textbf{Bob} | ||
| + | \\ | ||
| + | \hline | ||
| + | |||
| + | \begin{array}{l} | ||
| + | P \in Q \\ | ||
| + | \\ | ||
| + | 1.\ r_A,m_A \in \{1, | ||
| + | 2.\ s_A = r_A + m_A \\ | ||
| + | 3.\ E_A = P^{-m_A} | ||
| + | \end{array} | ||
| + | |||
| + | & | ||
| + | |||
| + | \begin{array}{l} | ||
| + | P \in Q \\ | ||
| + | \\ | ||
| + | 1.\ r_B,m_B \in \{1, | ||
| + | 2.\ s_B = r_B + m_B \\ | ||
| + | 3.\ E_B = P^{-m_B} | ||
| + | \end{array} | ||
| + | |||
| + | \\ | ||
| + | \hline | ||
| + | |||
| + | s_A,E_A \rightarrow | ||
| + | & | ||
| + | \leftarrow s_B,E_B | ||
| + | |||
| + | \\ | ||
| + | \hline | ||
| + | |||
| + | \begin{array}{l} | ||
| + | 5.\ ss=(P^{s_B}E_B)^{r_A} \\ | ||
| + | \qquad = P^{r_Br_A} \\ | ||
| + | \\ | ||
| + | 6.\ \text{Verify } B | ||
| + | \end{array} | ||
| + | |||
| + | & | ||
| + | |||
| + | \begin{array}{l} | ||
| + | A = H(ss\mid E_A\mid s_A\mid E_B\mid s_B) \\ | ||
| + | \\ | ||
| + | \text{Verify } A \\ | ||
| + | ss=(P^{s_A}E_A)^{r_B} \\ | ||
| + | \qquad = P^{r_Ar_B} \\ | ||
| + | \\ | ||
| + | B = H(ss\mid E_B\mid s_B\mid E_A\mid s_A) | ||
| + | \end{array} | ||
| + | |||
| + | \\ | ||
| + | \hline | ||
| + | |||
| + | K = H(ss \mid E_AE_B \mid (s_A+s_B)\bmod q) | ||
| + | |||
| + | & | ||
| + | |||
| + | \\ | ||
| + | \hline | ||
| + | |||
| + | \end{array} | ||
| + | $$ | ||
| + | </ | ||
| + | |||
| + | WPA3 también incorpora OWE (Oportunistic Wireless Encryption), | ||
| + | |||
| + | |||
| + | ===== Técnicas de ataque en VLANS ===== | ||
| + | |||
| + | ==== Ataques de control de aceso ==== | ||
| + | * War Driving: Descubrimiento de VLANS escuchando a los beacons o enviado probe request, provegendo puntos de lanzamiento para ataques. (Airmon-ng, DStumbler, KisMAC, MacStumbler, | ||
| + | * Rogue Access Point: Instalación de un AP no seguro dentro de un firewall, creando una backdoor a una red de confianza. | ||
| + | * Ad Hoc Associations: | ||
| + | * Mac Spoofing: Reconfiguración de la MAC del atacante para suplantar a un AP o Estación autorizados. (MacChanger, | ||
| + | * 802.1X RADIUS cracking: Recuperación de la clave RADIUS por fuerza bruta usando la solicitud de acceso 802.1X para uso con un AP Evil Twin. | ||
| + | |||
| + | ==== Ataques de confidencialidad ==== | ||
| + | * Eavesdropping: | ||
| + | * WEP key Cracking: Captura de datos para recuperar la clave WEP usando métodos activos o pasivos. (Aircrack-ng, | ||
| + | * Evil Twin AP: Enmascarandose como un AP autorizado para engañar a los usuarios. (cqureAP, D-Ling G200, HermesAP, Rogue Squadron, WifiBSD) | ||
| + | * AP Phising: Se corre un portal captivo o web falsa en un AP evil Twin para pescar | ||
| + | * Man in the Middle: Se usan herramientas MitM para interceptar sesiones TCP o túneles SSL/ | ||
| + | |||
| + | ==== Ataques de integridad ==== | ||
| + | |||
| + | * 802.11 Frame injection: Creación y envío de marcos 802.11 falsificados. (Airpwn, File2air, libradiate, void11, WEPWedgie, wnet dinject/ | ||
| + | * 802.11 Data Replay: Captura de marcos de datos 802.11 para posterior replay modificado | ||
| + | * 802.1x | ||
| + | * 802.1X RADIUS Replay: Captura de mensajes Access-accpet o Reject de RADIUS para posterior replay. | ||
| + | |||
| + | ==== Ataques de autenticación ==== | ||
| + | * Shared Key Guessing: Intento de autenticación con clave compartida 802.11 adivinando, con clave por defecto o con contraseñas WEP crackeada. | ||
| + | * PSK Cracking: Recuperación de un PSK WPA/WPA2 de un marco clave de handshake usando un ataque de diccionario. (coWPAtty, genpmk, kisMAC, wpa_crack) | ||
| + | * Application Login Theft: Captura de credenciales de usuario desde protocolos de aplicación en texto plano (Ace Password Sniffer, Dsniff, PHoss, WinSniffer) | ||
| + | * Domain Login Cracking: Recuperación de credenciales de usuario crackeando hases de contraseñas de NetBIOS usando ataques de fuerza bruta o diccionario. (Jonh the Ripper, L0pthCrack, Cain) | ||
| + | * VPN Login Cracking: Recuperación de credenciales de usuario mediante | ||
| + | * 802.1X Identity theft: Captura de identidades de usuario desde el texto plano de los paquetes de respuesta de identidad de 802.1X | ||
| + | * 802.1X Password Guessing: Usando una identidad capturadam, tratar de tantear la contraseña del usuario | ||
| + | * 802.1X LEAP Cracking: Recuperación de credenciales | ||
| + | * 802.1X EAP Downgrade: Se fuewrza un servidor 802.1X a ofrecer un tipo de autenticación más debil usando paquetes EAP-Response/ | ||
| + | |||
| + | ==== Ataques de disponibilidad ==== | ||
| + | * AP-theft: Eliminar físicamente el AP del espacio público | ||
| + | * Queensland DoS: Explotación del Mecanismo CCSMA/CA Clear Channel Assesment (CCA) para hacer que el canal parezca ocupado. | ||
| + | * 802.11 Beacon Flood: Generación de cientos de beacons falsos para dificultar a las Stations la localización de un AP legítimo (FakeAP) | ||
| + | * 802.11 Associate / authenticate Flood: Envío de mensajes Atuhenticates o Associates falsos de MACs aleatorias para llenar la tabla de asociación del AP (FATA-Jack, Macfld) | ||
| + | * 802.11 TKIP MIC Exploit: Generación de datos TKIP inválidos para superar el límiete de errores MIC del AP, provocando una suspensión del servicio WLAN (File2air, wnet dinject, LORCON) | ||
| + | * 802.11 deauthenticate flood: Inundación de las estaciones con mensajes Deauthenticates o Disassociates para desconectar usuarios del AP (AirePlay, Airforge, MDK, void11, Commercial WIPS) | ||
| + | * 802.1X | ||
| + | * 802.1X | ||
| + | * 802.1X EAP-of-Death: Envío | ||
| + | * 802.1X EAP Length Attacks: Envío de Mensajes EAP type-specific con campos lenght incorrectos para intentar crashear un AP o un server radius | ||