En criptografía , un ataque de fuerza bruta o búsqueda exhaustiva de claves es un ataque criptoanalítico que consiste en que un atacante introduce muchas claves o contraseñas posibles con la esperanza de adivinar la correcta. Esta estrategia puede utilizarse teóricamente para romper cualquier forma de cifrado que no sea segura desde el punto de vista de la teoría de la información . [ 1 ] Sin embargo, en un criptosistema bien diseñado, la probabilidad de adivinar la clave correctamente es insignificante.
Al descifrar contraseñas , este método es muy rápido cuando se usa para comprobar todas las contraseñas cortas, pero para contraseñas más largas se utilizan otros métodos, como el ataque de diccionario, porque una búsqueda por fuerza bruta lleva demasiado tiempo. Las contraseñas, frases de contraseña y claves más largas tienen más valores posibles, lo que las hace exponencialmente más difíciles de descifrar que las más cortas debido a la diversidad de caracteres. [ 2 ]
Los ataques de fuerza bruta pueden ser menos efectivos implementando técnicas de estiramiento de claves que dificultan que un atacante reconozca cuándo se ha descifrado el código, o obligándolo a realizar más pruebas para cada intento. Una de las medidas de la robustez de un sistema de cifrado es el tiempo que, en teoría, le tomaría a un atacante realizar un ataque de fuerza bruta exitoso contra él. [ 3 ]
Los ataques de fuerza bruta son una aplicación de la búsqueda por fuerza bruta, la técnica general de resolución de problemas que consiste en enumerar todos los candidatos y comprobar cada uno. El término «martilleo» se utiliza a veces para describir un ataque de fuerza bruta, [ 4 ] y «antimartilleo» para las contramedidas. [ 5 ]
Concepto básico
Los ataques de fuerza bruta funcionan calculando todas las combinaciones posibles que podrían formar una contraseña y probándolas para ver si alguna es la correcta. A medida que aumenta la longitud de la contraseña, el tiempo promedio para encontrar la correcta aumenta exponencialmente. [ 6 ]
Límites teóricos

Los recursos necesarios para un ataque de fuerza bruta crecen exponencialmente con el tamaño de la clave , no linealmente. Si bien las regulaciones de exportación de EE. UU. históricamente restringían la longitud de las claves a claves simétricas de 56 bits (por ejemplo , el Estándar de Cifrado de Datos ), estas restricciones ya no están vigentes, por lo que los algoritmos simétricos modernos suelen utilizar claves de 128 a 256 bits, que son computacionalmente más robustas.
Existe un argumento físico que demuestra que una clave simétrica de 128 bits es computacionalmente segura contra ataques de fuerza bruta. El límite de Landauer, implícito en las leyes de la física, establece un límite inferior en la energía requerida para realizar un cálculo de kT · ln 2 por bit borrado en un cálculo, donde T es la temperatura del dispositivo de cálculo en kelvin , k es la constante de Boltzmann y el logaritmo natural de 2 es aproximadamente 0,693 (0,6931471805599453). Ningún dispositivo de cálculo irreversible puede usar menos energía que esto, ni siquiera en principio. [ 7 ] Por lo tanto, para simplemente recorrer los posibles valores de una clave simétrica de 128 bits (ignorando el cálculo real para verificarla) se requerirían, teóricamente, 2 128 − 1 cambios de bit en un procesador convencional. Si se supone que el cálculo se realiza cerca de la temperatura ambiente (≈300 K), el límite de Von Neumann-Landauer se puede aplicar para estimar la energía requerida como ≈10 18 julios , lo que equivale a consumir 30 gigavatios de potencia durante un año. Esto es igual a 30 × 10 9 W × 365 × 24 × 3600 s = 9,46 × 10 17 J o 262,7 TWh (aproximadamente el 0,1 % de la producción energética mundial anual ). El cálculo real completo —verificar cada clave para ver si se ha encontrado una solución— consumiría muchas veces esta cantidad. Además, este es simplemente el requerimiento de energía para recorrer el espacio de claves; no se considera el tiempo real que se tarda en cambiar cada bit, que ciertamente es mayor que 0 (véase el límite de Bremermann ).
Sin embargo, este argumento presupone que los valores de los registros se modifican mediante operaciones convencionales de asignación y borrado, lo que inevitablemente genera entropía . Se ha demostrado que el hardware computacional puede diseñarse para evitar este obstáculo teórico (véase computación reversible ), aunque no se tiene constancia de que se hayan construido ordenadores con estas características.

As commercial successors of governmental ASIC solutions have become available, also known as custom hardware attacks, two emerging technologies have proven their capability in the brute-force attack of certain ciphers. One is modern graphics processing unit (GPU) technology,[8] the other is the field-programmable gate array (FPGA) technology. GPUs benefit from their wide availability and price-performance benefit, FPGAs from their energy efficiency per cryptographic operation. Both technologies try to transport the benefits of parallel processing to brute-force attacks. In the case of GPUs some hundreds, in the case of FPGAs some thousand processing units making them much better suited to cracking passwords than conventional processors. For instance in 2022, 8 Nvidia RTX 4090 GPUs were linked together to test password strength by using the software Hashcat with results that showed 200 billion eight-character NTLM password combinations could be cycled through in 48 minutes.[9][10]
Various publications in the fields of cryptographic analysis have proved the energy efficiency of today's FPGA technology; for example, the COPACOBANA FPGA Cluster computer consumes the same energy as a single PC (600 W), but performs like 2,500 PCs for certain algorithms. A number of firms provide hardware-based FPGA cryptographic analysis solutions from a single FPGA PCI Express card up to dedicated FPGA computers. WPA and WPA2 encryption have successfully been brute-force attacked by reducing the workload by a factor of 50 in comparison to conventional CPUs[11][12] and some hundred in case of FPGAs.

Advanced Encryption Standard (AES) permits the use of 256-bit keys. Breaking a symmetric 256-bit key by brute force requires 2128 times more computational power than a 128-bit key. One of the fastest supercomputers in 2019 has a speed of 100 petaFLOPS which could theoretically check 100 trillion (1014) AES keys per second (assuming 1000 operations per check), but would still require 3.67×1055 years to exhaust the 256-bit key space.[13]
Una suposición subyacente de un ataque de fuerza bruta es que se utilizó el espacio de claves completo para generar claves, algo que depende de un generador de números aleatorios eficaz , y que no existen defectos en el algoritmo ni en su implementación. Por ejemplo, varios sistemas que originalmente se creían imposibles de descifrar por fuerza bruta, sin embargo, fueron descifrados porque se descubrió que el espacio de claves a explorar era mucho menor de lo que se pensaba inicialmente, debido a una falta de entropía en sus generadores de números pseudoaleatorios . Estos incluyen la implementación de Netscape de Secure Sockets Layer (SSL) (descifrada por Ian Goldberg y David Wagner en 1995) y una edición de OpenSSL para Debian / Ubuntu que se descubrió que tenía fallos en 2008. [ 14 ] [ 15 ] Una falta similar de entropía implementada llevó al descifrado del código de Enigma . [ 16 ] [ 17 ]
Reciclaje de credenciales
El reciclaje de credenciales es la práctica de piratería informática que consiste en reutilizar combinaciones de nombre de usuario y contraseña obtenidas en ataques de fuerza bruta previos. Una forma especial de reciclaje de credenciales es el ataque " pass the hash" , en el que se roban credenciales hash sin sal y se reutilizan sin haber sido sometidas previamente a un ataque de fuerza bruta. [ 18 ]
Códigos irrompibles
Ciertos tipos de cifrado, debido a sus propiedades matemáticas, no pueden ser descifrados por fuerza bruta. Un ejemplo de esto es la criptografía de clave única , donde cada bit de texto plano tiene una clave correspondiente de una secuencia verdaderamente aleatoria de bits de clave. Una cadena de 140 caracteres codificada con clave única, sometida a un ataque de fuerza bruta, eventualmente revelaría todas las cadenas posibles de 140 caracteres, incluida la respuesta correcta; pero de todas las respuestas dadas, no habría forma de saber cuál es la correcta. Derrotar un sistema de este tipo, como lo hizo el proyecto Venona , generalmente no se basa en la criptografía pura, sino en errores en su implementación, como teclados que no son verdaderamente aleatorios, teclados interceptados o errores de los operadores. [ 19 ]
Contramedidas
En caso de un ataque offline donde el atacante haya obtenido acceso al material cifrado, se pueden probar combinaciones de claves sin riesgo de ser descubierto o interferido. En caso de ataques online , los administradores de bases de datos y directorios pueden implementar contramedidas como limitar el número de intentos de contraseña, introducir retrasos entre intentos sucesivos, aumentar la complejidad de la respuesta (por ejemplo, requerir una respuesta CAPTCHA o emplear autenticación multifactor ) y/o bloquear las cuentas tras intentos de inicio de sesión fallidos. [ 20 ] Los administradores de sitios web pueden impedir que una dirección IP específica intente más de un número predeterminado de intentos de contraseña contra cualquier cuenta del sitio. [ 21 ] Además, el marco MITRE D3FEND proporciona recomendaciones estructuradas para defenderse de los ataques de fuerza bruta mediante la implementación de estrategias como el filtrado del tráfico de red, el uso de credenciales señuelo y la invalidación de las cachés de autenticación. [ 22 ]
Ataque de fuerza bruta inverso
En un ataque de fuerza bruta inversa (también llamado ataque de pulverización de contraseñas), se prueba una sola contraseña (generalmente común) contra múltiples nombres de usuario o archivos cifrados. [ 23 ] El proceso puede repetirse para un grupo selecto de contraseñas. En esta estrategia, el atacante no apunta a un usuario específico.
Véase también
- minería de Bitcoin
- longitud de la clave criptográfica
- Distributed.net
- Nube Ave María
- Función de derivación de clave
- MD5CRK
- Metasploit Express
- Ataque de canal lateral
- BRILLO y GIRO
- Distancia de Unicity
- Desafío de factorización RSA
- Concha segura
Notas
- ^ Paar, Pelzl y Preneel 2010 , pág. 7.
- ^ Urbina, Ian (2014). "La vida secreta de las contraseñas. The New Times" . The New York Times .
- ^ Schrittwieser, Sebastian; Katzenbeisser, Stefan (2011), "Code Ofuscation against Static and Dynamic Reverse Engineering" , Information Hiding , Lecture Notes in Computer Science, vol. 6958, Berlín, Heidelberg: Springer Berlin Heidelberg, pp. 270–284 , doi : 10.1007/978-3-642-24178-9_19 , ISBN 978-3-642-24177-2Consultado el 5 de septiembre de 2021.
- ^ "Proteja su sitio de ataques de fuerza bruta con el plugin de autenticación antiataques de Sebsoft #MoodlePlugins #MoodleSecurity" . elearnmagazine.com . Revista e Learn. 16 de enero de 2016. Consultado el 27 de octubre de 2022 .
- ^ "Configure Serv-U para protegerse contra ataques de fuerza bruta" . solarwinds.com . Solar Winds . Consultado el 27 de octubre de 2022 .
- ^ "Ataque de fuerza bruta: definición y ejemplos" . www.kaspersky.com . 20 de octubre de 2020. Consultado el 8 de noviembre de 2020 .
- ^ Landauer 1961 , págs. 183-191.
- ^ Graham 2011 .
- ^ Rudisail, B. (17 de noviembre de 2022). "Descifrado de contraseñas con GPU de alto rendimiento: ¿Existe alguna forma de prevenirlo?" . Spiceworks . Recuperado el 24 de diciembre de 2023 .
- ^ Pires, F. (18 de octubre de 2022). "Ocho RTX 4090 pueden descifrar contraseñas en menos de una hora" . Future Publishing . Recuperado el 25 de diciembre de 2023 .
- ^ Kingsley-Hughes 2008 .
- ^ Kamerling 2007 .
- ^ "Noviembre de 2019 | TOP500 Sitios de Supercomputadoras" . www.top500.org . Archivado del original el 19 de noviembre de 2019. Consultado el 15 de mayo de 2020 .
- ^ Viega, Messier y Chandra 2002 , pág. 18.
- ^ CERT-2008 .
- ^ Ellis 2005 .
- ^ NSA-2009 .
- ^ "¿Qué es un ataque Pass-the-Hash (PtH)?" . BeyondTrust . 4 de agosto de 2023. Archivado del original el 15 de mayo de 2024. Consultado el 23 de junio de 2024 .
- ^ Reynard 1997 , pág. 86.
- ^ Burnett & Foster 2004 .
- ^ Ristic 2010 , pág. 136.
- ^ "Implementación de MITRE D3FEND para la técnica ATT&CK T1110: Fuerza bruta" . D3 Security . 25 de agosto de 2023. Consultado el 19 de junio de 2024 .
- ^ "InfoSecPro.com - Consultores en seguridad informática, de redes, de aplicaciones y física" . www.infosecpro.com . Archivado del original el 4 de abril de 2017. Consultado el 8 de mayo de 2018 .
Referencias
- Adleman, Leonard M.; Rothemund , Paul WK ; Roweis, Sam ; Winfree, Erik (10-12 de junio de 1996). Sobre la aplicación de la computación molecular al estándar de cifrado de datos . Actas de la Segunda Reunión Anual sobre Computadoras Basadas en ADN . Universidad de Princeton .
- Descifrando DES: Secretos de la investigación en cifrado, la política de escuchas telefónicas y el diseño de chips .Electronic Frontier Foundation. 1998.ISBN 1-56592-520-3.
- Burnett, Mark; Foster, James C. (2004). Hacking the Code: ASP.NET Web Application Security . Syngress. ISBN 1-932266-65-8.
- Diffie, W.; Hellman, ME (1977). "Criptoanálisis exhaustivo del estándar de cifrado de datos del NBS". Computer . 10 : 74–84 . doi : 10.1109/cm.1977.217750 . S2CID 2412454 .
- Graham, Robert David (22 de junio de 2011). "Descifrado de contraseñas, minería y GPU" . erratasec.com . Consultado el 17 de agosto de 2011 .
- Ellis, Claire (marzo de 2005). "Explorando el enigma" . Revista Plus.
- Kamerling, Erik (12 de noviembre de 2007). "Elcomsoft presenta un avance en la recuperación de contraseñas mediante unidad de procesamiento gráfico (GPU)" . Symantec .
- Kingsley-Hughes, Adrian (12 de octubre de 2008). "ElcomSoft utiliza GPU de NVIDIA para acelerar el ataque de fuerza bruta WPA/WPA2" . ZDNet . Archivado del original el 26 de junio de 2010.
- Landauer, L. (1961). «Irreversibilidad y generación de calor en el proceso de computación» . IBM Journal of Research and Development . 5 (3): 183–191 . doi : 10.1147/rd.53.0183 . Archivado del original el 3 de marzo de 2016.
- Paar, Christof; Pelzl, Jan; Preneel, Bart (2010). Comprensión de la criptografía: Un libro de texto para estudiantes y profesionales . Springer. ISBN 978-3-642-04100-6.
- Reynard, Robert (1997). Secret Code Breaker II: A Cryptanalyst's Handbook . Jacksonville, FL: Smith & Daniel Marketing. ISBN 1-889668-06-0. Consultado el 21 de septiembre de 2008 .
- Ristic, Ivan (2010). Manual de Modsecurity . Feisty Duck. ISBN 978-1-907117-02-2.
- Viega, John ; Messier, Matt; Chandra, Pravir (2002). Seguridad de redes con OpenSSL . O'Reilly. ISBN 0-596-00270-XConsultado el 25 de noviembre de 2008 .
- Wiener, Michael J. (1996). "Búsqueda eficiente de claves DES". Criptografía práctica para redes de datos . W. Stallings, editor, IEEE Computer Society Press.
- "Alerta técnica de ciberseguridad TA08-137A: Vulnerabilidad del generador de números aleatorios OpenSSL en Debian/Ubuntu" . Equipo de Respuesta a Emergencias Informáticas de Estados Unidos (CERT). 16 de mayo de 2008. Archivado del original el 16 de septiembre de 2008. Consultado el 10 de agosto de 2008 .
- «Cómo los matemáticos ayudaron a ganar la Segunda Guerra Mundial», según la NSA . Agencia de Seguridad Nacional . 15 de enero de 2009. Archivado del original el 7 de marzo de 2009.
Enlaces externos
- Concurso de descifrado de DES-III patrocinado por RSA
- Demostración de un dispositivo de fuerza bruta diseñado para adivinar el código de acceso de iPhones bloqueados con iOS 10 .3.3.
- Cómo desciframos los códigos del libro – Ensayo del equipo ganador del desafío en El Libro de Códigos
- ataques criptográficos
- Ciberataques