¿QUE ES UN ATAQUE DE FUERZA BRUTA EN SEGURIDAD INFORMÁTICA?
Probablemente este es un termino o concepto que mas de uno habrá oído
en el momento en que se mencionan ciertos aspectos de la informática y en particular la Seguridad Informática.
Y aunque el termino “Ataque de Fuerza Bruta” pueda sonar complicado en realidad no
lo es tanto como parece, o por lo menos no de forma conceptual. Pero el hecho de que sea algo sencillo de
entender, no significa necesariamente que sea fácil de aplicar. En esta ocasión intentare explicar esto de una forma muy sencilla y rápida..
¿QUE ES?
Como su nombre ya nos lo indica, “Fuerza Bruta” hace referencia a algo que se forzamos o algo que se
presiona para romper su resistencia, por ejemplo una puerta con una cerradura,
si quisiéramos utilizar fuerza bruta para ingresar, cortaríamos o golpearíamos dicha cerradura con
alguna herramienta que tenga una un poder destructivo superior a la resistencia
de la cerradura .
¿Pero como se aplica este ejemplo
de "romper la cerradura" a la seguridad informática?
De la misma forma que una puerta tiene una cerradura, las computadoras
tienen muchos tipos de cerraduras, el mas claro ejemplo de esto son la
contraseñas que utilizamos, para ingresar a aplicativos, programas, sitos web, a la misma computadora, etc.
¿Y cual seria el equivalente de
a herramienta que rompe la cerradura?
Simplemente seria la capacidad computacional de la misma maquina que
ejecute el ataque, o mejor dicho, la velocidad de procesamiento de la
computadora. La realidad es que las computadoras tienen una capacidad de
procesar datos increíblemente rápida, por lo que un “Ataque de Fuerza Bruta” también
podríamos llamarlo un ataque de tiempo (el
tiempo que tarda el computadora en intentar acertar la contraseña utilizando el
método de ensayo y error). Por lo que conceptualmente un ataque de fuerza bruta
no es mas que un burdo intento de intentar adivinar la combinación correcta
tantas veces como sea necesario hasta lograrlo. Por lo tanto su eficacia dependerá directamente
de que tan difícil se lo pongamos a la computadora que nos ataca a través de la
creación de la contraseña.
Por lo tanto en materia practica no hay mucho mas que aclarar sobre esto. Un ataque de fuerza bruta es basicamente iterar todas las posibilidades hasta obtener el resultado deseado, utilizando el alto poder computacional de las maquinas o dispositivos implicados. A mayor potencia, mayor velocidad con la cual se obtiene el resultado. Exiten variaciones como el "Ataque de diccionario", que consiste en utilzar listas palabras para utilizarlas creando combinaciones con las mismas, lo cual puede se potencializado con otras tecnicas como la ingenieria social (estudio, engaño y manipulación de la victima), etc, pero en esencia el sistema es el mismo.
¿Existe alguna forma de prevenirlo?
Es por esta razón que se habla tanto de la importancia de las
contraseñas seguras, ya que incluso con la gran velocidad computacional de una
maquina si la contraseña es lo suficientemente larga y compleja, le será mucho
mas difícil acertar incluso usando su gran poder de computacional, pudiéndole tomar
incluso meses o hasta años dependiendo de los larga y compleja que esta sea.
Por ejemplo una contraseña como “gato”
seria muy fácil de atacar con fuerza bruta, ya que una computadora solo necesitaría
disponer de una abecedario simple en sus recursos para obtener la combinación correcta.
Sin embargo si la contraseña fuera por ejemplo “ ** ! Mi
Gato se llama Misifus, y su comida favorita es el pescado (y la leche ) !! ¿:)? ”, para este caso esta contraseña seria muy complicada de computar ya que ahora las posibilidades aumentaron exponencial mente en base al aumento de la longitud y variedad de caracteres, por lo que este tipo de
contraseña seria catalogada como muy segura en términos computacionales.
Existe la falsa creencia de que una contraseña es muy segura solo por
tener caracteres atípicos como por
ejemplo “!#%&”, pero esto es un grave error, ya que este tipo de contraseña corta de caracteres atípicos
solo seria mas segura para protegerse de humanos que ven estos caracteres como
algo difícil de adivinar y difícil de recordar, pero para un sistema informatico no hay una diferencia relevante entre “gato” y “!#%&”, ya
que ambas son interpretadas simplemente como conjuntos de bytes de la misma
longitud que ocupan un determinado espacio de memoria, por lo que, para un
atacante bastaría solo con ejecutar el computo utilizando una tabla simple de
caracteres ASCII para obtener el mismo resultado que con ”gato”.
ARTICUL0