viernes, noviembre 18, 2011

Generación de contraseñas robustas para tu vida

El volumen de contraseñas que tenemos que recordar hoy en día es alto. Demasiados servicios online con demasiadas passwords, por lo que hay que intentar tener un sistema que no nos quite la vida en procesos de recuperar contraseñas o que nos lleve a meter passwords sencillas.

Al final, bajo mi opinión, las alternativas más efectivas son usar software de almacenamiento de passwords cifrado con claves maestras, que permiten usar passwords que nos la recordarías después de una cerveza, como 1password - ya hay malware que busca estas bases de datos -, o que además permitan sincronización con el terminal móvil para que sea más fácil la vida, como hace KeePass. Si no, te jodes, y haces memoria de contraseñas complejas no repetidas.

Damián Ienco propone crear una especie de Single-Sing On recordable con un método que el llama "deThi4-go" que puede resumirse en hacer una password difícil de crackear, usando letas, números y caracteres de puntuación - usando lenguaje 1337 incluso - y unir algún recordatorio del servicio para el que es la password.

A mí me recuerda mucho al sistema de Dan Kaminsky de fuck.gmail, fuck.facebook, pero elaborando más el famoso "fuck.".por lo que le sigo viendo problemas a usar passwords que no tienen demasiada dispersión, o que se puede reconocer que hay un método en su generación para varios servicios, cuya seguridad sea radicalmente opuesta. Es decir, poner una password en el servicio A que tiene una seguridad de mierda y va a acabar en pastebin con probabilidad, que tenga alguna relación con una password de un servicio B que tiene mayor seguridad y tiene datos míos importantes lo veo erróneo. Yo no veo un sistema de Single Sing-On si no es con un único punto de autenticación hiper-mega robusto, y a ser posible con varios factores de autenticación y elementos físicos, pero es cierto que para los servicios online las cosas están como están.

Sin embargo es cierto que hay que buscar alternativas, y que para algunos servicios de igual seguridad todos tenemos algún truco personal. Le he pedido que haga un resumen para que lo veáis vosotros y le deis vuestras opiniones.

Saludos Malignos!

Método de Creación de Contraseñas Robustas "deThi4-go"
por Damián Ienco

Esta forma de crear contraseñas robustas, el método “deThi4-go”- un Single Sign-ON + el FACTOR “deThi4-go”, es recomendable de implementar cuando tenemos que recordar muchas de ellas (se supone que una persona común no tiene menos de 8 (ocho) contraseñas). No obstante, no hay reparo en que se utilicen para uno, dos o pocos sitios o equipos en los cuales tengamos que autentificarnos con una password.

Dependiendo del rebuscamiento al momento de crear o modificar la contraseña, el método ''deThi4-go", clasifica de la siguiente manera sus distintos niveles de realización: deThia4-go simple, deThia4-go variable, deThia4-go variable compleja y deThia4-go super variable compleja. En todos los casos, la longitud mínima de la password será de 10 (diez) caracteres.

deThia4-go simple: La formación de este tipo de contraseñas se basa en que la misma debe tener al menos la siguiente estructura:

Nota: Primero mostraremos el ejemplo y luego se explicará su desarrollo para un mejor entendimiento. Password: batman71@+. En donde:

** 1er paso: una palabra que puede ser conocida. Aquí "batman"
** 2do paso: una cifra. Aquí "71"
** 3er paso: un símbolo. Aquí "@"
** 4to paso: un símbolo del teclado numérico. Aquí "+"
*** Con todos estos pasos realizados, nos faltaría agregar el 5to y último, que denominamos “FACTOR deThi4-go”.

Ahora -siguiendo el ejemplo- ya cree mi “Single Sign On” denominado en este caso batman71@+.

Luego –en este caso-, voy a crear la password para mi correo electrónico de Gmail, utilizando el “método deThia4-go” + el “FACTOR deThi4-go”; siendo en este caso el '''FACTOR deThi4-go''' la inicial de Gmail = g. Finalmente la password: batman71@+g

Siguiendo con este método, tendremos, por ejemplo:

Para mi cuenta Wikipedia: batman71@+w
Para mi cuenta Yahoo: batman71@+y
Para mi cuenta Hotmail: batman71@+h
Para mi cuenta Twitter: batman71@+t
Para mi cuenta Facebook: batman71@+f
Para mi cuenta Skype: batman71@+s
Para mi cuenta home banking: batman71@+hb -por ser dos palabras el servicio original de referencia-.
Para mi notebook: batman71@+n
Para mi iPad: batman71@+i
Para mi AP (Access Point): batman71@+ap

Podemos definir entonces al “FACTOR deThi4-go”, como el caracter - ya sea una letra, un número o un símbolo -, o el conjunto de caracteres, que me diferenciara en los distintos accesos de passwords a los diferentes sistemas, aplicaciones, correos electrónicos, foros, blogs, banca on line, dispositivos, teléfonos inteligentes, routers, etc., etc., etc., que necesite una contraseña para ser accedido.

deThia4-go variable: La formación de esta variante indica que, respetando los cinco primeros pasos necesarios para la creación de la contraseña; el 6to paso hará que deje establecido en el final el '''FACTOR deThi4-go''', pero cambie el orden de formación de la password. Ej.: Password “71batman@+g”, “batman@+71g”, “71@batman+g”' o “+batman@71g”, etc.

deThia4-go variable compleja: De similar estructura, la única variación que incorporamos aquí, es que - el 1er paso: una palabra que puede ser conocida-, se forma con una combinación de las distintas técnicas de creación de password conocidas (acrónimos, reemplazos, etc.), aplicándose por ejemplo entonces:

'''verpersos''' perteneciente a combinar “Verón, Perez, Sosa” - grandes jugadores de fútbol.
'''volvalfutu''' perteneciente a combinar “volver al futuro” - gran película de cine.
'''elmedeve''' perteneciente a combinar “El mercader de Venecia” - gran libro de Shakespeare.

Para formar una password “deThia4-go variable compleja”, solo reemplazaremos en el 1er paso: una palabra que puede ser conocida., aquí "verpersos" por “batman” con en los casos anteriores. Así tenemos: Password: “verpersos@71+g”, “@verpersos71+g”, “g@verpersos71+”, etc.

deThia4-go super variable compleja: De similar estructura de construcción que '''deThia4-go variable compleja'''. Aquí en el 1er paso: una palabra que puede ser conocida, como ejemplo "batman", se deben reemplazar letras por números o símbolos, de acuerdo a como queramos o nos resulte más sencillo reemplazar y recordar las letras que hemos reemplazado en la palabra original.

Entonces para BATMAN = B4tm4n; batman = 8a7man; telefonito = t3l3f0n1t0; bolsillo = {0(5!((0, contenedor = c*nt3n3d*r y más. Para el siguiente ejemplo vamos a reemplazar en la clave verpersos por "v3rp3rs0s" Empezando a utilizar variables de contraseñas con esta metodología podríamos obtener como ejemplo: Password: “v3rp3rs0ss@71+g”, “@v3rp3rs0s71+g”, “g@v3rp3rs0s71+”, “g+@v3rp3rs0s71”, “71v3rp3rs0sg+@” y más.

Resumen de los 4 métodos deThia4-go: para una cuenta de usuario de Gmail, con los cuatro métodos vistos:

-> deThia4-go simple = Password: batman71@+
-> deThia4-go variable = Password: 71batman@+g
-> deThia4-go variable compleja = Password: g@verpersos71+
-> deThia4-go super variable compleja = Password: v3rp3rs0ss@71+g

Ejemplos AVANZADOS y VARIABLES aplicados al método deThia4-go: Después de cierto tiempo y práctica de haber realizado contraseñas aplicando cualquiera de las cuatro variaciones, estaremos en condiciones de agregar más caracteres en algunos, todos o uno de los pasos que conforman la contraseña, principalmente y sobretodo fácilmente en el “FACTOR deThi4-go”.

Así, el “FACTOR deThi4-go”, para la contraseña de Wikipedia que inicialmente era la letra “w” por ser la inicial podría complejizarse de las siguientes maneras:

Con deThia4-go simple Avanzada y Variable de Wikipedia podría ser:

Wikipedia tomando las letras Wikipedia nos queda -> batman71@+wpd
Wikipedia tomando las letras Wikipedia nos queda -> batman71@+wka
Wikipedia tomando las letras Wikipedia nos queda -> batman71@+wkpa
Podríamos tomar la inicial y solo las vocales -> batman71@+wiieia
Podríamos tomar la inicial y solo las consonantes -> batman71@+wkpd

Ejemplo de una password para una cuenta de usuario Wikipedia, con los cuatro métodos vistos + AVANZADOS y VARIABLES.

-> deThia4-go simple = Password: batman71@+wkpd
-> deThia4-go variable = Password: 71batman@+ wkpd
-> deThia4-go variable compleja = Password: wkpd @verpersos71+
-> deThia4-go super variable compleja = Password: v3rp3rs0ss@71+ wkpd

Si aún deseamos, podemos hacer más compleja la password, agregando una cifra de más números en el “paso 2”. Por ejemplo: mi número de documento 32.273.218, agregándole 2 números más a cada cifra para no delatarme: 54495430. Tenemos ejemplos como Passwords:

batman54495430@+wkpd o 54495430batman@+wkpd o wkpd@verpersos54495430+ o v3rp3rs0ss@54495430+wkpd.

22 comentarios:

  1. Pues yo la verdad es que desde que descubrí el Sync de Firefox tengo todo allí. Me basta solo recordar la clave maestra y listo. Eso sí, he de reconocer que estoy "con el culo a dos manos" (preocupado bah) pendiente de no ver por allí algún exploit o hackeo al servicio Sync. También reconozco que soy de usar un sistema de fácil recordación para los sitios, parecido al de Dan.

    ResponderEliminar
  2. Esta entrada me recuerda a la tira de XKCD :D

    http://xkcd.com/936/

    ResponderEliminar
  3. A mi tambien me ha recordado a la tira de xkcd y me pregunto si realmente este tipo de contraseñas son mas seguras que elegir 3 o 4 palabras random.

    ResponderEliminar
  4. Os recomiendo esto: http://supergenpass.com/

    Entre la version para navegador y la versión para moviles (Android, no se si para Iphone lo hay), voy más que servido.

    Solo debes recordar tu clave maestra, el resto de claves se generan a partir del dominio y no se almacenan en ningún sitio.

    ResponderEliminar
  5. Sip, despues de unos años de paranoia trabajando en el mundo de la informatica, yo tb he llegado al mismo metodo de generacion.
    El sencillo (para sitios de baja seguridad, paginas de registro, etc...), el medio complejo, es como el sencillo pero con algun agregado o notacion 1337, y el seguro, que incluye mayusculas, minusculas, cierta longitud, y tal.
    Para los sistemas, (yo con mi paranoia) no uso jamas esos passwords, ya que estos passw son accesibles desde administracion o en ficheros de sistema asi que no me fio y genero passw con metodo "fuck." como: Servi.Colossus.SecurePa$$1234 para un servidor con un XP Colossus instalado por ejemplo...
    La verdad es que yo no me fio ni de los sistemas de almacenamiento de claves, si las almacena, es petable, por A o por B, y en muchos casos si es un fichero o conjunto de ficheros, se puede copiar, llevartelo a casa, y con todo el tiempo del mundo y sin prisas, someterlo a ataques hasta romperlo... Igual k hay programas de extraccion de passw guardados de los navegadores, o de tablas rainbow o Hash o... lo unico NO hackeable es mi cerebro ( y tampoco pondria la mano en el fuego a eso...)

    Q

    ResponderEliminar
  6. Pues yo creo que lo mejor es tener un patrón "no intuitivo" que te inventes tú, y crees versiones sobre ese patrón.

    Luego te apuntas en algún lado una o dos letras que te recuerden qué versión del patrón has usado en qué servicio y así en ningún lado está guardada/escrita la versión completa de la contraseña.

    De esta manera (creo) puedes construir contraseñas largas y robustas, si demasiado esfuerzo.

    Aparde de eso, los que aquí ya superamos en tacos (años) la trentena... No os acordais de cuántos números de teléfono podíamos memorizar cuando íbamos al cole?? pues esto viene a ser lo mismo! Ahora que no hace falta recordar números de teléfono, deberíamos ser capaces de recordar contraseñas.

    Yo también estoy con los que se han acordado de xkcd ... ;-)

    J.R.!

    ResponderEliminar
  7. Tantos años usando este sistema y ahora me entero que tiene nombre.

    En mi caso, uso una contraseña base de 8 caracteres (ninguno repetido, mayúsculas, minúsculas y números) que lleva conmigo toda la vida; así que al uso es como una palabra de diccionario para mi.

    A mayores utilizo un prefijo del serivicio en el que me estoy registrando, 2 o 3 caracteres más (según el servicio).

    Para comenzar, separar y finalizar, símbolos especiales (3 caracteres más).

    En situaciones normales vamos 13 caracteres con poca probabilidad de repetirse.

    Si además, voy a realizar en ese servicio compras (paypal, tarjeta...) añado algún sufijo de unos 4 o 5 caracteres más.

    Me voy a ir callando porque le acabo de restar complejidad a mi contraseña de 2E+23 a 5.2E+20.

    Me pondré como Anónimo...

    PD: Soy humano y algo vago, así que para mierda servicios, también uso mierda claves... espero que nadie use un diccionario....

    Saludos.

    ResponderEliminar
  8. Como alternativa puedes generar las contraseñas utilizando una hoja de papel, por lo que no os la puede robar ningún troyano. Lo propone Steve Gibson que realiza el podcast "Security Now".

    Consiste básicamente en generar la contraseña partiendo de una contraseña maestra, del nombre de dominio y una hoja con caráteres aleatorios. Al realizar la generación de la contraseña de forma independiente del PC no te la pueden robar y aunque pierdas la hoja de papel como no tienes la contraseña maestra tampoco sirve de nada.

    Podéis hecharle un ojo en:
    https://www.grc.com/OffTheGrid.htm

    Eso sí, es un poco rollo de usar.

    ResponderEliminar
  9. Anonymous hackea la web de UPYD

    http://www.upyd.es/contenidos/noticias/5/69026-ANONYMOUS_COMUNICA

    ResponderEliminar
  10. Para que siguen con esto, años de enseñanza complicada no tiene sentido:

    http://www.alivenotdead.com/attachments/2011/08/12/09/36647_201108120903019.png

    ResponderEliminar
  11. ...y todo el método se va a la mierda cuando:

    - el servicio no permite usar caracteres especiales (algunos siquiera permiten números).
    - la contraseña tiene que tener una determinada longitud mínima o máxima.
    - logran una o dos contraseñas y por patrón revientan todo lo demás.

    Tocados los cojones, un saludo maligno, maligno.

    Llegué al blog hace poco por un vídeo de un charla en España (no me pregunte cual ni dónde) , busqué información sobre como hacer más seguro mi uso del PC... y no se si ahora estoy más seguro, pero seguro que estoy más acojonado. Supongo que no es poco.

    ResponderEliminar
  12. Gente,Como va?
    los comentarios me sirven de mucho para saber la aceptación o no del método. Se los agradezco a todos y ni hablar a Chema por darle un espacio en su prestigioso sitio.
    Ahora bien, les cuento que este método deThi4-go lo explico en los cursos de seguridad informática que dicto para usuarios cuyas password son primavera, desafio, lodo2011, chorizo, etc.
    Para estas personas pasar de chorizo a sosita71+&y es un paso gigante.
    Es por eso motivo que se me ocurrió que si demás gente "común" lo puede leer y adoptar y solo utilizar chorizo para comer, es un buen paso para su securización.
    Si alguien lo quiere, tengo el documento del método completo, se lo pase a chema o lo pueden descargar de algunos sitios.
    Un saludo para todos
    Damián

    ResponderEliminar
  13. Gente,Como va?
    los comentarios me sirven de mucho para saber la aceptación o no del método. Se los agradezco a todos y ni hablar a Chema por darle un espacio en su prestigioso sitio.
    Ahora bien, les cuento que este método deThi4-go lo explico en los cursos de seguridad informática que dicto para usuarios cuyas password son primavera, desafio, lodo2011, chorizo, etc.
    Para estas personas pasar de chorizo a sosita71+&y es un paso gigante.
    Es por eso motivo que se me ocurrió que si demás gente "común" lo puede leer y adoptar y solo utilizar chorizo para comer, es un buen paso para su securización.
    Si alguien lo quiere, tengo el documento del método completo, se lo pase a chema o lo pueden descargar de algunos sitios.
    Un saludo para todos
    Damián
    damianienco@gmail.com

    ResponderEliminar
  14. Yo tengo un método similar:

    http://1.bp.blogspot.com/-c2PApj8X5PE/TcgnoPgCY2I/AAAAAAAABI8/IMhuB4_lZtc/s1600/Claves%2Bseguras.png

    Aleks

    ResponderEliminar
  15. Chema, a propósito de contraseñas robustas, has probado lastpass.com ? ¿que opinas de este servicio de creación de contraseñas que ni uno mismo sabe ni necesitas recordar? Algo como:

    WvhddSM7EjM9ba5IpGZ23*nXF0irO0$%2O9b1bkj$RLPHidglFCsy&cnoRhtaFak8Y$UdzKcuTNCv&yR7KoJy6NdTeeIuiGDU2rS

    ResponderEliminar
  16. El método definitivo es el método deThi4-go (no sabía que tenía nombre antes de leer esto) pero pasar la clave que le toca a la web de turno en la que pretendemos entrar por un md5 o un sha1 (lo ideal es usar uno online en un dominio que tu controles, o uno que vaya por javascript de forma que no se externalice la clave).

    Una vez pasada por el algoritmo de resumen cogemos los primeros 8-10 carácteres (al gusto de cada uno) y listo.

    De esta forma evitamos que si dos webs, que almacenen la clave en claro en su BD, pertenecen al mismo webmaster puedan inferir nuestro sistema de generación de claves.

    PD: Mejor dejo esto como anónimo jejeje.

    ResponderEliminar
  17. Es excelente para evitar que te rompan la clave, pero ante robo de claves y si alguien pilla el patrón, está todo perdido (Yo hasta hace poco no me preocupaba de ésa posibilidad por cierto).

    Mi método ha sido algo similar pero..., mejor no digo mi patrón.

    En ocasiones he sido totalmente aleatorio (y luego me lo anoto en alguna libreta), pero no lo he hecho todo lo que debí por pereza.

    Y en el resto de las veces, cuando se trata de sitios que no valen nada (por ejemplo, la clave de un foro ¿me importa que me roben eso?), osea la mayoría de las veces, meto claves de las tontas y la misma en todos los sitios.

    ResponderEliminar
  18. Bueno, el artículo está muy bien, pero veo muy lioso lo de cambiar de orden los caracteres, ya que al final pierdes la capacidad de recordarlos con facilidad, que era el objetivo inicial. ¿En google puse primero la @ o el +?

    Mi idea es: crea un conjunto de caracteres fijo con letras, números y símbolos que recuerdes. Puede ser: ¿.23;j?".
    A continuación, para diferenciar un sitio de otro, le añades todas o parte de las letras del sitio, y aquí puede jugar con más o menos complejidad: coger solo las letras pares o impares, coger la primer y ultima letra...
    También puedes, a éstas letras aplicarles algún cambio, como por ejemplo un cifrado cesar de nivel 3, o, mas complejo aún, a las letras de ésta parte le aplicas cifrado cesar de nivel el numero de letras del sitio.

    Con todo ésto creas un sistema que siguiendo 4 o 5 pasos te crea contraseñas robustas y únicas con un método difícil de inferir.

    ¿Qué os parece?

    ResponderEliminar
  19. Yo hace tiempo que uso un sistema parecido.
    Sin embargo, como dicen por ahí, si me roban la calve de la wikipedia y es "misuperclave-wikipedia", alguien puede deducir que mi clave de hotmail es "misuperclave-hotmail", por eso creo que hay que "esconder" el servicio.

    Siguiendo el ejemplo del texto, me parece que la clave v3rp3rs0s71w+@ es más segura que v3rp3rs0s71g+wikipedia, porque no es facil deducir que la w hace referencia a la wikipedia.

    ResponderEliminar
  20. Me ha recordado ligeramente a mi propio método. Yo uso un sistema de mayúsculas, minúsculas, símbolos y números en grupos, que luego forman combinaciones de mas de 30 dígitos en algunos casos para las mas complejas, todas diferentes basándome en cosas que no conoce nadie mas que yo y siempre se cual es porque la propia pagina en la que esté me da la primera pista aunque no recuerde el password al llegar (y seguro que la pista no es la que estáis pensando, jejeje).

    ResponderEliminar
  21. Yo lo que hago es coger las iniciales de cada palabra de un fragmento de una canción, por ejemplo: "quisiera ser el aire que escapa de tu risa" vendría a ser "qseaqedtr". Y ya a partir de aquí jugar con mayúsculas/minúsculas, cambiar letras por números y/o símbolos ("un/a" por "1", "a" por "@"), etc.

    ResponderEliminar