Cargando!

Inicio » Infinitum » Blog » Artículo

Crear una contraseña segura e irrompible, ¿es posible?

Descubre la mejor técnica para crear y gestionar todas las contraseñas de uso diario, que no son pocas

Crear una contraseña segura e irrompible, ¿es posible?

30 julio 2021 Primera publicación: 01 abril 2016

Advertencia de contenido: dramatización ficticia

Escenario. Te has tirado horas interminables ajustando un servidor: servicios, puertos, iptables... todo actualizado, atado y lustroso. Listo para la jungla de internet. Para echarlo sin miedo a los usuarios más bestias de tu red de clientes.

─Probad, probad con fuerza bruta ─murmuras pavoneándote. No tenéis lo que hay que tener, amigos bots.

Y entonces descansas. Has creado el servidor perfecto, inexpugnable, la máquina más segura del planeta. Nadie te reconoce el mérito pero te da igual. Eres un administrador de sistemas con plaza asegurada en Matrix, al lado de Steve Jobs. Pero, un buen día cualquiera...

─¡Oh, dioses! ¡Nos atacan! ─oyes chillar a un compañero de oficina.
─¿Por dónde? ─preguntas taciturno, convencido de que es una falsa alarma.
─¡Por todas partes! ¡Tienen contraseñas!
A lo lejos escuchas una explosión virtual. Y entonces empieza el verdadero infierno del sysadmin, las trincheras del hackeo, el barro de los logs... todo aquello por lo que siempre vas a considerar que tu sueldo no es suficiente pago...

Todas partes... ¿tan grave es?

Todas partes es muy amplio. Se puede referir a un WordPress abandonado desde hace años. O una cuenta de correo con una contraseña extremadamente corta o común. O a alguien con malas intenciones en tu entorno que sabe datos personales de alguien y al probarlos acertó de lleno. Lo más grave, la bala de plata, sería haber logrado acceso a "root" o "administrador". Sería como secuestrar un avión, quedando a merced de los captores y sus demandas.

Dejando a un lado vulnerabilidades de configuración o software, malware y demás regalitos, el factor de entrada más habitual es el humano. Una sesión abierta, ingeniería social, una web falsa que imita la de acceso... Pero hay algo aún más simple: una contraseña débil. Que es, sin miramientos, prácticamente como no tener contraseña.

Teclado de Mac con un cartel rojo que dice Password y 123456
No creo que haga falta explicar por qué una contraseña como esta es una mala idea, ¿verdad?

¿Por qué es débil mi contraseña?

Es una palabra común

Cuando se prueban contraseñas para intentar acceder a tu cuenta, lo primero que se utiliza es un diccionario en tu idioma. Una máquina maliciosa o bot va probando en orden alfabético palabras simples y muy comunes. Si tu contraseña es sencilla como "bicicleta", "trueno" o "amor", es solo cuestión de tiempo dar con ella.

Es demasiado corta

Si la contraseña es rara pero corta sucede algo similar. El bot de turno puede probar contraseñas habitualmente raras y sin sentido como "xyza" o "1234" y/o combinaciones de ambas. No es tan fácil llegar a romper la contraseña pero es posible, si no se mitigan los intentos.

Es un dato personal

Aún sigue siendo una costumbre muy extendida y peligrosa usar el nombre de un familiar, de una mascota, o fechas personales, de nacimiento, aniversarios, etc. O a veces un año numérico sin más, que además también en la categoría de contraseña corta.

Esto a un bot malicioso automatizado mucho no le afecta, pero si hay alguien con dedicación a investiguar tu información pública, como tus perfiles en redes sociales en las que sales con Fluffy, tu querido y peludo hamster, o con un familiar o tu pareja, puede sospechar que usas de inspiración para tus cuentas alguno de esos nombres.

Meme de un perrito sentado en un despacho elegante frente a un portátil Mac abierto
Si la contraseña es el nombre de tu perro, ¡enhorabuena! ¡Vas a ser hackeado cualquier día!

Entonces, ¿qué contraseña debería usar?

Después de décadas en este asunto lidiando y batallando, por un lado, con clientes con ganas de poner el nombre de su marca de coche como password, y por otro, con maniáticos de la seguridad que usan 20 caracteres imposibles, mi posición personal es usar el término medio. Algo fácil de recordar pero difícil de averiguar. Y así todos contentos. Y seguros (ツ)

Caso A. Contraseña única para un único servicio

nombre recordable (inventado si es posible) + cadena numérica + unas mayúsculas

Ejemplos
casitax + 99123 + TR = casitax99123TR
lorum + 445 + MAR = lorum445MAR
cocor + 65250 + W = cocor65620W

Caso B. Contraseña variable para varios servicios

contraseña anterior + guion o símbolo + nombre del servicio

Ejemplos
contraseña única: morco98FT
contraseña variable: morco98FT-servicio
para ebay: morco98FT-ebay

Si sigues este protocolo para tus contraseñas, puedes respirar tranquilo. La probabilidad de encontrarla por fuerza bruta es ínfima, sobre todo si añades más caracteres, y siempre que no dejes apuntada la contraseña maestra (o sus variaciones) en un post-it en lugar visible. O que la compartas con alguien. Recuerdo el caso de una empresa inmobiliaria cuyas contraseñas de usuarios estaban anotadas con un rotulador INDELEBLE en los teclados de sus ordenadores. Protocolo de seguridad máximo. Tremendo (´・_・`)

Queda el asunto ─no tan importante─ de la frecuencia de renovación. ¿Cada cuánto darle un cambio a la contraseña?. En mi opinión, salvo que una intrusión nos obligue a cambiarla, es bastante seguro utilizar un password fuerte durante mucho tiempo. Algunas políticas de seguridad en empresas piden renovar la contraseña cada 30 días. Otras anualmente. Seis meses o incluso más es un periodo más que razonable.

Y lo de almacenar las contraseñas en el navegador o en la nube, ¿es seguro?

Siempre hay un riesgo implícito en utilizar servicios externos o las herramientas del navegador o sistema operativo. En algunos casos ─por ejemplo en un cliente de FTP─ es error de diseño común guardarlas en texto plano. Así que una intrusión en el equipo puede significar una intrusión masiva en tus redes y cuentas. Igual que ponerlas un archivo de texto sin más.

Mockup de dos móviles android y apple con la aplicación de LastPass
Usar un gestor de contraseñas en la nube puede solucionarte la vida, teniendo cuidado de proteger la contraseña maestra

En otras ocasiones el contenido, y los pares usuario:contraseña están cifrados. Servicios como LastPass ayudan a tener todo bajo una única llave sin volverse loco. Y son razonablemente seguros.

Trata a tu contraseña maestra como si fuera tu cepillo de dientes. No se la des a nadie y renuévala cada seis meses.

─"Fundamentos básicos de supervivencia informática", por Cosmox └[ ∵ ]┘

BONUS: Si soy webmaster/desarrollador/sysadmin/freak, ¿cómo mitigo los ataques de fuerza bruta para romper contraseñas en mis sistemas?

Lo lógico es pensar que si una persona se confunde unas cuantas ocasiones al intentar acceder a una cuenta, servicio, web o aplicación, no es una persona. Es más, probablemente sea un ordenador zombi o un bot intentando entrar a cualquier precio.

Así que, sabiendo que es un ataque de fuerza bruta, se puede reducir el riesgo de acceso no autorizado. Dependiendo de la aplicación o servicio, se pueden usar medidas para restringir el acceso y por tanto el número de oportunidades que se conceden para intentar romper las contraseñas.

En WordPress, por ejemplo, existen plugins como Brute Force Login o Theme My Login, que automáticamente limitan el número de intentos, bloqueando la IP o el nombre de usuario. También hay otros muchos scripts de uso general que monitorizan los logs y limitan los intentos de acceso e incluso de búsqueda de vulnerabilidades. En el caso de servicios de alojamiento (exim, courier, ftp, ssh) es efectivo monitorizar los intentos con daemons como fail2ban, que banean automáticamente las IPs infractoras.

Resumiendo: con un poco de sentido común, algo de técnica y un poco de precaución, una contraseña decente puede ahorrarte muchas preocupaciones, para que solo te preocupe disfrutar de ser un feliz usuario del sistema o de la vida en general, con la puerta de casa blindada °‿‿°

NOTA FINAL: También lleva tiempo extendida la doble autenticación (F2A), que obliga a usar un código adicional ─por ejemplo un SMS al móvil─ o una confirmación para acceder. Pero no siempre es aplicable.

¿Te apetece compartirlo?

Conoce al autor/a que escribe esto

Foto de perfil de Aitor Arozamena en Infinitum Creative

@ Aitor Arozamena

Frontend developer, sysadmin, manager

Fundador original de esta start-up galáctica, es el programador jefe y administrador de sistemas. Conoce e intenta dominar HTML/CSS/PHP/JS y otros muchos lenguajes, además de frameworks y gestores de contenido. También ha trabajado como asesor informático. En lo personal lo mismo idea una app rara o una canción de jazz al piano, se mete en miles de emuladores o actúa en un musical. ¿Me contratas?

Categorías

Etiquetas

Proyectos de la factoría Infinitum

¿Interesado/a? ¡Trabajemos juntos! Llámanos al 94 415 66 13, deja tu mensaje en el 670 299 665 o escribe un correo a hola@infinitum.es
(Un secreto: si mencionas el código WEB2022, te haremos un 10% de descuento en todo)