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.
¿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.
¿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.
- GuardDuty: Un viaje a través del tiempo en AWS Security - 21 noviembre, 2023
- Webinar – Seguridad para familias - 11 enero, 2021
- SecurityInside Live: CISO Day 2020 - 17 septiembre, 2020
Hello! Would you mknd iif I share yokur blog with my twitter group?
There’s a lot of peoplee that I think would really enjoy your content.
Please let me know. Thaznk you
My website … https://penzu.com/p/9427cac2
Wow, superb weblog layout! How long have you ever been blogging for?
you make blogging look easy. The full look of your web site
is wonderful, let alone the content! You can see similar here sklep online
Amazing! Itts really amazin piece of writing, I have got much clear idea concerning
from this article.
Here is my blkg post450477
Goood day! Do you kknow if they make any plugins to safeguard
against hackers? I’m kinda paranoid about losing everything I’ve worked
hard on. Any recommendations?
Stop bby my blog post himeuta.Org
Thanks for one’s marvelous posting! I actualy enjoyed reading it,
you can be a greeat author. I will be sure to bookmark your blog and will often come back at slme point.
I wnt to encourage you to continue youyr great posts, have a nice evening!
My webpage … http://Www.Smokinstangs.com/member.php/278398-Leonvkm
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!
We’re a group of volunteers and opening a new scheme in our
community. Your website provided us with valuable info to work on. You have done
an impressive job and our whole community will be thankful to you.
Also visit my homepage … 먹튀사이트
Link exchange is nothing else except it is simply placing the other person’s weblog link on your page at appropriate
place and other person will also do same in support of you.
Look at my blog post: 토토사이트
After I originally left a comment I appear to have clicked on the -Notify me when new comments
are added- checkbox and now every time a comment is added I recieve 4 emails with the exact same comment.
Perhaps there is an easy method you are able to remove
me from that service? Many thanks!
Here is my page … 홀덤