contrasenas-fuertes

Hablemos de contraseñas fuertes, ¿lo tenemos claro?

Durante el desarrollo de servicios y aplicaciones nos topamos con el dichoso asunto de gestionar contraseñas de usuario. Queremos que el acceso y uso de nuestra solución sea sencillo sin descuidar la seguridad de la información, es el eterno dilema de usabilidad vs seguridad…

Definir una buena política de contraseñas es vital, pero habitualmente el usuario no lo ve como algo positivo. Todos queremos que nuestra contraseña sea sencilla y rápida de escribir, pero no nos sienta nada bien descubrir un día que alguien ha entrado en nuestra cuenta y nos ha hecho la puñeta…

Contraseñas débiles y contraseñas fuertes, ¿cuál es la diferencia?

Entendemos por contraseña débil aquella que no es complicada de averiguar, aquella que podemos deducir o la que conlleva poco esfuerzo para obtener mediante un ataque de fuerza bruta.

Mira, por ejemplo, las 7 contraseñas más utilizadas en el año 2.014.

  • 123456
  • password
  • 12345
  • 12345678
  • qwerty
  • 1234567890
  • 1234

¿Usarías una contraseña así? Es como dejar las llaves de casa puestas en la cerradura. Es probable que mucha gente pase de largo y no las vea, pero si algún vecino quiere entrar, no lo va a tener muy complicado…

Por el contrario, decimos que una contraseña es fuerte cuando cumple todo lo contrario. Si utilizamos ejemplos aleatorios sin significado claro, únicamente dejaremos al atacante el factor de la fuerza bruta. Eso si, será importante que la contraseña sea relativamente larga para complicar la vida.

common-passwords

Contraseñas débiles habituales

¿Cómo creo una contraseña fuerte?

Se recomienda mezclar letras, números, caracteres “extraños”… con el objetivo de que el abanico de símbolos sea grande y los ataques de fuerza bruta no obtengan resultado en poco tiempo. Algunas ideas son:

  • Letras en mayúscula y minúscula: De la a a la z y de la A a la Z.
  • Números: del 0 al 9.
  • Símbolos: $ # & % @ ! ? ¿ ^ * ` ‘ ” ~ = + – _ / | > < ] [ ) ( } {
  • Signos de puntuación: . , ; :

Esto siempre debe ir acompañado por una longitud mínima de 8 caracteres.

¿De verdad esto es efectivo?

Para que te hagas una idea, veamos unos ejemplos del tiempo (ojo, es una estimación) que se necesitaría para obtener tu contraseña mediante fuerza bruta si esta fuera…

  • Longitud 6 sólo caracteres de la ‘a’ a la ‘z’, algo como ‘batman’: menos de 6 minutos.
  • Longitud 6 caracteres de la ‘a’ a la ‘Z’, algo como ‘BatMan’: menos de 6 horas.
  • Longitud 6 caracteres de la ‘a’ a la ‘Z’ y signos de puntuación, algo como ‘BatMa;’: menos de 9 horas.
  • Longitud 6 caracteres de la ‘a’ a la ‘Z’, signos de puntuación y símbolos, algo como ‘B@tMa;’: menos de 8 días.

Sin embargo, ampliando el último ejemplo a 8 caracteres, necesitaríamos un poco menos de 216 años para obtenerla, eso ya tiene otra pinta, ¿no? Pero cuidado, lo ideal es que tu contraseña fuerte sea lo más aleatoria posible, de lo contrario se podría obtener de forma sencilla mediante el uso de diccionarios con las variaciones habituales. Por ejemplo, algo como cambiar la ‘a’ por ‘@’, la ‘s’ por ‘$’ y la ‘o’ por el cero, la ‘i’ por ‘1’… es más habitual de lo que piensas así que tampoco es buena idea seguir ese patrón.

strong-passwords

Parezco una contraseña fuerte, pero no lo soy

¿Por qué es importante que mi contraseña sea fuerte?

Si te pones a pensar, es probable que ninguno de tus amigos o vecinos se pongan a hacer ataques de fuerza bruta a tus contraseñas a menos que seas un objetivo interesante tipo presidente de alguna compañía…

El problema es que tus contraseñas pueden (ahora explicaré lo de “pueden”) estar en los servidores de los servicios que visitas y podrían terminar de forma pública si se produce un incidente de seguridad. En ese momento, tu cuenta puede tener valor para alguien…

Cada cierto tiempo nos encontramos con noticias sobre portales web que han sido reventados y de los que se han publicado usuarios y contraseñas. Puedes ver algunos casos muy sonados aquí, aquí o aquí.

Si eres desarrollador, no querrás aparecer en esos enlaces…

A la hora de gestionar las contraseñas, nos encontramos frecuentemente con webs o servicios que las almacenan en texto plano. Un grave error, sobre todo teniendo en cuenta que la mayoría de usuarios reutilizan sus claves para un amplio abanico de portales.

Si eres de los que utiliza “123456” para tus cuentas de correo, portales de compra, redes sociales,… una vez que alguien lo sepa, puede acceder a todas sin mayor esfuerzo.

Como desarrolladores, está en nuestra parte proteger esa información para que (al menos) no sea por nuestra culpa que sus cuentas se ven comprometidas.

Por eso antes decía que las contraseñas “pueden” estar, el caso es que no necesitamos almacenar contraseñas en nuestra base de datos para saber si un usuario tiene o no permiso para acceder a su cuenta.

¿Quieres saber cómo? En mi próximo post te contaré cómo gestionar y almacenar (o no :D) las contraseñas de tus servicios, veremos las técnicas que se utilizan hoy en día y echaremos un vistazo a cómo ha cambiado la forma en la que trabajar con ellas. ¿Te lo vas a perder?

Como siempre te digo, si ves algún error, no estás de acuerdo con lo que cuento o quieres hacer alguna aportación, no dudes en pasarte por los comentarios.

Cristóbal Espinosa
Últimas entradas de Cristóbal Espinosa (ver todo)
8 comentarios
  1. 먹튀검증
    먹튀검증 Dice:

    What i don’t understood is if truth be told how you’re no longer really a lot
    more smartly-appreciated than you may be right now.
    You are very intelligent. You know thus significantly on the subject of this matter, produced
    me for my part believe it from numerous various angles. Its like men and women don’t seem to be interested except it’s something to accomplish
    with Girl gaga! Your individual stuffs excellent.

    All the time maintain it up!

    Responder

Trackbacks y pingbacks

  1. […] al menos, trata de trasladar la necesidad del uso de contraseñas fuertes y de no abrir adjuntos de origen desconocido. Sólo con esto estarás haciendo mucho por tus […]

  2. […] el anterior post hablamos de contraseñas desde el punto de vista de un usuario, de la importancia que tiene tener […]

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *