💾 Archived View for sl1200.dystopic.world › art › passwords.gmi captured on 2024-12-17 at 10:29:40. Gemini links have been rewritten to link to archived content
View Raw
More Information
-=-=-=-=-=-=-
Sesión de ciberseguridad sobre contraseñas y segundos factores de autenticación.
2024-11-10
#contraseñas #2fa #totp #passkeys #seguridad
Este es el guión aproximado que seguí en una sesión de ciberseguridad destinada a las contraseñas y segundos factores de autenticación. Lo publico por si a alguien le sirve para hacer algo parecido. En mi caso sólo acudieron tres personas, el nivel de interés por la ciberseguridad en general está por los suelos, y lo entiendo, no tenemos tiempo para dedicar a estos temas, y después pasa lo que pasa, hackeos, ataques de todo tipo y estafas ya forman parte de nuestra normalidad diaria.
Dónde guardar las contraseñas.
- En el navegador, evitarlo, sólo para servicios sin importancia. En el caso de Firefox lo mejor es activar la contraseña maestra, aquí un artículo sobre el asunto:
- ¿Es seguro guardar las contraseñas en Firefox?
- Gestor de Contraseñas, siempre en local, evitar el uso de gestores de contraseñas en la nube para reducir nuestra dependencia. En el caso de usar un gestor en la nube es necesario guardar copias locales de la base de datos de contraseñas.
- PassKeys, en el gestor de contraseñas, nunca en una nube. KeePassXC estrenó hace poco la gestión de passkeys a través de su extensión de navegador y funciona francamente bien.
- Recomiendo sincronizar la base de datos en varios dispositivos con Syncthing.
Los tres factores de autenticación: qué soy, qué sé y qué tengo
- Qué soy es la autenticación biométrica por huella, reconocimiento facial, iris, voz...son difíciles de copiar
- Qué sé son las contraseñas o pines, son fáciles de obtener a través de ataques de phishing o smishing y si son sencillas y se dispone del hash pueden obtenerse por ataques de fuerza bruta, de diccionario o usando rainbow tables.
- Qué tengo, un móvil con generación de TOTP o recepción de SMS. Si el hacker sabe tu contraseña deberá además tener tu dispositivo para poder acceder al servicio. El SMS no es seguro debido SIM swapping. Desafortunadamente casi todos los bancos optan por la facilidad haciendo el segundo factor de autenticación a través de SMS.
Casi todos los servicios usan ya MFA, multifactor authentication, te pedirán siempre como mínimo dos de los factores de autenticación anteriores.
Ventajas de los gestores de contraseñas
- Nos permiten crear una contraseña diferente y muy robusta para cada servicio, sin necesidad de memorizarla ni apuntarla en ningún sitio. Mostramos una web en la que calculan la fortaleza de nuestras contraseñas para que los asistentes se hagan a la idea de lo que puede tardarse en hackear sus contraseñas en el caso de que un servicio en el que están registrados sufra una brecha de datos:
- Password-Strength
Para mayor seguridad y evitar el spam aconsejo además el registro en cada servicio o tienda con un email diferente o alias. En el caso de recibir spam en un alias sabremos que el servicio ha sufrido una brecha de datos aunque no hayan cumplido con el deber de notificarla pasadas 72 horas y podremos anular la cuenta sin que afecte al resto de servicios que usemos. Recomiendo este servicio de alias de email:
- addy.io
- Con una contraseña maestra y en su caso un archivo clave se descifra la base de datos en la que están todas nuestras contraseñas. Sólo es necesario memorizar una contraseña maestra que sea fuerte. Para casos extremos hay gestores de contraseñas que permiten añadir una yubikey como factor adicional de autenticación a través de nuestra huella digital:
- yubico.com
- Permiten el autocompletado de usuario y contraseña durante una ventana temporal configurable, no hay que andar escribiendo las contraseñas y tampoco haciendo copiar y pegar.
- Casi todos permiten también añadir la clave secreta para la generación del TOTP "Time-based One-Time Password" aunque no es muy recomendable para servicios sensibles, vale la pena que el generador de TOTP esté en otro dispositivo.
Desventajas de los gestores de contraseñas
- Ninguna, no entiendo que haya gente que navegue, trabaje, haga compras online y demás sin hacer uso de gestores de contraseñas.
PassKeys
- Son una forma de autenticación sin contraseñas, la autenticación se realiza a través de un par de claves pública-privada. El usuario tiene el par de claves y el servicio sólo la pública. El usuario recibe un desafío del servidor, lo firma y devuelve al servidor, que autentica al usuario verificando la firma con la clave pública. Como la clave incluye además la descripción del dominio y usuario, mediante este método se imposibilitan los ataques de phishing y smishing, pero aún así hay que andar con ojo puesto que todavía las passkeys no están sustituyendo plenamente la autenticación con contraseña. Si tienes passkey no te autentiques con usuario y contraseña, es posible que sea una web falsa. Próximamente redactaré un pequeño tutorial sobre su funcionamiento en KeePassXC, es algo lioso por depender de la extensión de navegador.
Certificados digitales
- Un certificado digital es un documento electrónico que vincula a un usuario con una clave pública y que sirve para autenticarnos, normalmente frente a la administración pública. La autenticación a través de certificados digitales está basada en un par de claves público-privada creadas por una entidad emisora de confianza que autentica físicamente al usuario antes de facilitarle el certificado digital. Para autenticarnos lo hacemos firmando un mensaje y enviando nuestra clave pública al servicio en el que queremos autenticarnos. Ese servicio verificará la autenticidad de la firma y que el certificado está emitido por una entidad de confianza. El usuario debe ser muy cuidadoso con la custodia del certificado y dónde lo instala puesto que si un tercero firma algo sin nuestra autorización es como si lo hubiéramos firmado nosotros, el uso del certificado supone no repudio de la firma, no podremos negar que somos los firmantes.
Condiciones que debe cumplir un gestor de contraseñas:
Los gestores de contraseñas son software crítico, les exigiremos:
- Debe ser software libre, el código debe ser de libre acceso:
- Mostramos a los asistentes el repositorio donde está publicado el código de KeePassXC
- Debe estar auditado por terceros:
- Mostramos que el software está auditado por terceros
- Debe terner detrás una amplia comunidad de desarrolladores, en KeepassXC son 782.
- Debe estar actualizado, mostramos la fecha de las últimas aportaciones en el código de KeePassXC
- Debe funcionar en local para reducir nuestra dependencia de servicios de terceros
Gestores de Contraseñas recomendados:
- KeePassXC
- KeePassDX, similar a KeePassXC pero para Android
Aplicaciones generadoras de códigos topt recomendadas:
-Aegis Authenticator
No hace falta otra, esta tiene todo lo necesario y permite hacer copias de seguridad automatizadas y cifradas de la base de datos cada vez que cambiamos algo o añadimos un nuevo servicio.
Cómo guardan los servicios nuestras contraseñas.
Explicar que se guardan hasheadas, que vean más o menos qué es un hash y mostrasles esta noticia como ejemplo de lo que nunca debe hacer un servicio:
Meta, multada en Europa con 91 millones de euros por haber almacenado contraseñas de sus usuarios sin cifrarlas
Calculadora de hases
- ¿qué es un hash? Tipos, mostrarlos
- Para poder "hackearte" primero debe haber una brecha de datos y que el hacker se haga con el nombre de usuarios y los hashes de las contraseñas
Métodos de ataque: de fuerza bruta y de diccionario
Pequeño ejemplo de ataque por fuerza bruta
- Creamos un archivo hashes.txt con el hash md5 de algunas contraseñas de hasta 8 letras minúsculas con un script
- Ataque por fuerza bruta al archivo en el que están los hashes, el resultado será el archivo passwords.txt:
hashcat -m 0 -a 3 -o passwords.txt hashes.txt ?l?l?l?l?l?l?l?l --increment
El objetivo es ver que en apenas 15 minutos un portátil cualquiera puede generar los hashes de todas las posibles contraseñas de 8 caracteres, 208.827.064.576 hashes. Conclusión, las contraseñas deben ser largas
Pequeño ejemplo de ataque por diccionario
- Creamos diccionario a partir de datos personales de un asistente
cupp -i
cupp -w
- Ataque por diccionario al archivo de hashes
hashcat -m 0 -a 0 -o passwords.txt hashes.txt wordlist.txt
El objetivo es que entiendan que nunca deben usar datos personales como el nombre, municipio, fecha de nacimiento, etc. al crear una contraseña. Crearemos contraseñas largas y sin datos personales con un gestor de contraseñas.
Lo ideal es que si hay tiempo los asistentes practiquen con sus ordenadores a crear al menos una contreña y registrarse en algún servicio web, tienda, email...
Y eso es todo. Se agradecen comentarios para corregir lo que pueda ser incorrecto y sugerencias para ampliar contenido
This work by SL1200 is licensed under CC BY-NC-SA 4.0
◄ BACK
🏠 Home