Seguridad de llevar las contraseñas en persona

12

Mientras estaba en la universidad, decidí tener una contraseña de 16 caracteres generada al azar. Utilicé partes de esa contraseña en varios sitios. Sin embargo, uno de los sitios se vio comprometido, así que tuve que cambiar mi contraseña.

Ahora tengo contraseñas generadas aleatoriamente por sitio. Como puedes imaginar, fue difícil aprender las contraseñas y recurrí a llevarlas hasta que las aprendí. Esto fue esencialmente una pequeña pieza de un documento con contraseñas aleatorias en una fila. Si estas contraseñas estuvieran comprometidas, sería un campista MUY infeliz.

Supongamos que estoy determinado a tener un conjunto aleatorio de contraseñas y no me gusta una fila de contraseñas claramente visible. Estaba considerando la opción de crear una cuadrícula de caracteres generados aleatoriamente y usar varias subcadenas en los datos como contraseñas.

Aquí hay un ejemplo trabajado:

Grilla de contraseñas

bqzryXrMjs
wqpPcPW2tG
CYvLdxGsnZ
Hq9KDBJeN5
Z2v5H2BG6G
JYNyWGLqEa

Contraseña: Comience en (2,3). Utilice todos los demás caracteres de izquierda a derecha, envolviendo las filas según sea necesario. Longitud 10.

Utilizando estas instrucciones genero contraseña:

9DJNZvHB6J

Note, que (2,3) fue indexado a cero. Por supuesto, esas instrucciones son difíciles de seguir, pero es solo una habilidad para mejorar. En la práctica, usaría una cuadrícula más grande y posiblemente un patrón más complejo.

Mi pregunta es qué tan seguro es este sistema. Sé que seguro podría significar muchas cosas. No estoy seguro de si se aplica criptográficamente seguro, pero en realidad solo estoy tratando de ver si sería razonable usar este sistema para administrar mis contraseñas.

Puedo imaginar un episodio de Bones en el que alguien rastrea los movimientos de mis ojos para determinar qué personajes estoy leyendo ... así que sugerencias como esta son bienvenidas pero lo que estoy buscando son vulnerabilidades más prácticas / razonables.

¡Gracias!

EDITAR # 1

A los efectos de limitar el alcance de la pregunta, suponga lo siguiente:

Passwords are of length 10
Grids are of dimension 20x20
The only instruction available is one similar describe above.  
    Start at (x,y)
    Use every other character from left to right, wrapping rows as necessary. 
    Length 10.

They are not allowed means that could be used to steal general private information such as a key logger, aggressive interrogation, etc.
    
pregunta Carlos Bribiescas 13.02.2014 - 18:28
fuente

6 respuestas

7

El dicho acerca de las contraseñas es que si puedes recordarlas, no es lo suficientemente complicado .

¿Por qué no mantener la lista de contraseñas en un software de administración de contraseñas dedicado como KeePass ? Esto cifrará el archivo y le permitirá generar contraseñas muy largas y aleatorias para cada sitio. Puede transportar tanto el software como el archivo en una memoria USB en lugar de un pedazo de papel, la única contraseña almacenada en la cabeza es la única contraseña maestra.

    
respondido por el Yolanda Ruiz 13.02.2014 - 22:43
fuente
4

Compensación de seguridad
Llevar la cuadrícula de contraseñas en su persona intercambia un tipo de seguridad por otro. En lugar de recordar , tienes que proteger .

Los humanos parecen ser mejores para asegurar las posesiones que para asegurar el contenido de sus cabezas. Tal vez esto parezca contraintuitivo, pero la evolución está de su lado en este punto. Las personas tienden a revelar sus secretos con más frecuencia que la entrega de objetos preciosos.

Subiendo la oscuridad
La seguridad de su bloqueo de contraseña en papel si cae en manos de su atacante depende un poco de cómo lo use.

En su forma actual y utilizando el algoritmo que expresaste, sería razonablemente fácil forzar la fuerza bruta con la posesión de la almohadilla. El atacante simplemente comenzaría al principio del bloque de contraseña e intentaría varias combinaciones de longitudes y puntos de inicio hasta que llegara a la contraseña correcta. Si bien hay muchas posibilidades para que él lo resuelva, es fácil de automatizar y no debería tomar más de unos pocos segundos para una computadora.

En lugar de simplemente leer los caracteres en orden, una mejor técnica sería "saltar". Por ejemplo, usa todos los demás personajes que comienzan en 3. Aunque eso es bastante predecible. O tal vez cada 3er personaje. Meh ¿Seguir una secuencia de Fibonacci a través del pad? Todavía muy matemática. Cada uno de estos podría ser probado por un atacante. Solo estás ocultando el patrón al intercalarlo con ruido.

RC4 utiliza una cuadrícula como esta, pero usa el valor del elemento en la siguiente celda que visita para determinar dónde debe moverse a continuación. Tal vez podríamos seguir algún tipo de lógica como esa.

Un algoritmo menos predecible
Vamos a utilizar algunos números arbitrarios. X y Y . Elige cualquier número que quieras. Y puede ser negativo.

Entonces, ¿qué tal esto para un algoritmo. Para cualquier contraseña dada, comience en la posición X . Ahora, siga el patrón a continuación hasta que haya generado suficientes caracteres para su contraseña:

  1. Copie el carácter en la posición actual . Es la siguiente letra en tu contraseña.
  2. Agrega Y a la cantidad de caracteres que has copiado hasta ahora. Llamaremos al resultado A .
  3. Mira A espacios hacia adelante desde tu posición actual , envuelve según sea necesario. Llamaremos al valor en esa celda B . Conviértalo en un entero usando cualquier método que desee. (por ejemplo, A = 1, B = 2 ... o quizás A-E = 1, F-J = 2, etc. Cualquier cosa servirá).
  4. Tome el valor entero calculado de B y agréguelo a su posición actual . El resultado es su new posición actual.
  5. Vaya al paso 1.

El algoritmo resultante salta alrededor de la cuadrícula de manera impredecible. En lugar de seguir un patrón establecido, el patrón está determinado por los contenidos circundantes de la cuadrícula. Alguien que tuviera la contraseña y la cuadrícula tendría un tiempo muy, muy difícil para revertir su algoritmo, por lo que probablemente sea el secreto que podemos agregar a este nivel.

Ocultar a simple vista
El problema restante es que lo que llevas alrededor de parece una contraseña. Todos los caracteres son aleatorios, ¿por qué tendrías eso? En su lugar, quieres algo que parece con el que lo llevarías contigo. Ahora que tenemos un algoritmo para movernos alrededor de una cadena en un patrón impredecible, podemos usar un texto mucho más prosaico.

Imprima algo que parece que pertenece a su bolsillo. Una lista de una docena de nombres y fechas, o tal vez un bloque corto de poesía sappy. Quieres que sea único , después de todo, es tu clave. Así que no solo copie algo de Internet. Pero desea que un atacante lo examine y lo deseche rápidamente.

Conoce a tu atacante
Hemos encontrado algo bastante duro. Su seguridad aquí es bastante más alta, pero también lo es su dificultad para generar la contraseña manualmente. Entonces, ¿contra quién estás defendiendo? Si es un gobierno opresivo, entonces está totalmente justificado para hacer esto y más. Si se trata de hackers con los que nunca entrará en contacto, imprima las contraseñas en un papel que diga "Súper contraseñas súper secretas" y sea suficiente. ¿En algún lugar entremedio? Entonces algo simple probablemente lo hará.

Sin embargo, pasaría al menos un poco de tiempo para que pareciera algo distinto de una contraseña, sin embargo. La tercera letra de cada línea en una lista de compras, por ejemplo, servirá.

    
respondido por el tylerl 14.02.2014 - 05:39
fuente
3

Dados los supuestos, un atacante tendría que elegir un carácter de inicio, generar la contraseña de 10 caracteres de acuerdo con el proceso descrito, intentarlo en el sitio. Si falla, repita. Después del tercer intento, serían bloqueados.

Si asumimos que en la creación de la cuenta usted elige un buen lugar de inicio aleatorio (en otras palabras, cada posición de inicio es igualmente probable), entonces hay 20 ^ 2 = 400 posibles posiciones de inicio. La probabilidad de que cualquiera de los atacantes elija estar en lo correcto es 1/400, por lo que la probabilidad de que lo hagan correctamente en tres intentos es 3/400. Una probabilidad bastante baja de que estés dispuesto a aceptar.

El lugar donde podría encontrar problemas es si comienza a empaquetar muchos sitios en la misma cuadrícula. Digamos que usas la misma cuadrícula para 50 sitios. La probabilidad de éxito del atacante es ahora (50) * 3/400 = 0.375.

La buena noticia es que al menos puede cuantificar las posibilidades de éxito de su atacante. Si tiene muchas cuentas (y trata de agruparlas todas en una cuadrícula), podría tener problemas.

    
respondido por el mikeazo 13.02.2014 - 19:00
fuente
1

Si se hace correctamente, la solución que sugirió podría ser segura. Para hacerlo, sin embargo, debes ser muy diligente. No debe escribir las coordenadas utilizadas para generar una contraseña, porque si un atacante tiene acceso a ella, puede reproducir fácilmente sus contraseñas. No debe permitir que nadie tome una foto de su cuadrícula, ya que el número finito de permutaciones disponibles en la cuadrícula permite a un atacante reducir significativamente el espacio de búsqueda cuando Brute fuerza una contraseña. Debe tener mucho cuidado de no perder el cuadrado, ya que al hacerlo perdería todas de sus contraseñas. No me preocuparía demasiado por ataques complejos como leer movimientos oculares, a menos que esté almacenando algo como códigos de armado de misiles nucleares, a nadie le importará lo suficiente como para desplegar algo así en usted.

Si protege la cuadrícula correctamente, debería estar mejor que tener una lista de contraseñas. Adivinar cómo funciona la cuadrícula es más difícil que simplemente leer una contraseña de una lista y todos los problemas anteriores también se aplican a una lista de contraseñas de texto sin formato, lo que le da una seguridad que es al menos un poco mejor.

La solución que sugirió podría mejorarse aún más incorporando un trabajo similar realizado por Steve Gibson de GRC, que puede consultar aquí: Perfecta contraseñas de papel . El uso de ejemplo que proporciona el sitio web es una vez las contraseñas para la autenticación del segundo factor, pero podría usar fácilmente la herramienta que se proporciona allí para generar de forma segura una cuadrícula para usar en el esquema que mencionó. La ventaja de utilizar la herramienta PPP es la siguiente:

  1. La cuadrícula que generes será mucho mejor. GRC hace todo lo posible para generar números aleatorios, lo que significa que obtendrás una cuadrícula que es menos fácil de adivinar para un atacante.
  2. Es reproducible. Puede almacenar la semilla utilizada para generar la cuadrícula y volver a generarla en el futuro en caso de que le roben su billetera, etc.
  3. Estarás mejor preparado para usarlo. Si escuchas los podcasts de Security Now enumerados en esa página, Steve te dará todos los consejos / información de fondo que podrías desear. Esto significa que será menos probable que arruine y exponga sus contraseñas.

Dicho esto, no realmente recomiendo el uso de la solución sugerida. La razón principal es que no es super fácil de usar. Si solo quiere usar una contraseña, debe salir de la casilla, recordar dónde comenzar a generar la contraseña correcta y luego transcribirla manualmente en su computadora. Además de eso, se incluye toda la sobrecarga mental necesaria para garantizar que el cuadrado esté protegido correctamente. Para mí, esto suena como algo que tendrá una barrera de entrada lo suficientemente alta como para que decida usar una contraseña menos segura en lugar de pasar por la molestia de usar el cuadrado, dejándolo con la seguridad reducida

En su lugar, recomiendo usar LastPass . LastPass proporciona un almacén de contraseñas altamente seguro, con respaldo en línea. Tenga en cuenta que LastPass no almacena directamente sus contraseñas en su base de datos. Almacenan un blob encriptado que contiene las contraseñas encriptadas / desencriptadas en la aplicación cliente para que nunca vean las contraseñas reales. Ya que tienen una página de acceso web, puede usar LastPass de forma segura desde casi cualquier lugar, incluso el navegador de su teléfono. Por una tarifa muy pequeña, incluso puede ejecutar un LastPass nativo que mejore enormemente la experiencia móvil. El uso de una aplicación que automatiza todas las partes complicadas del almacenamiento de las contraseñas significa que puede tener contraseñas seguras por sitio que puede llevar consigo en su bolsillo con pocos gastos para usarlas. Debe asegurarse de usar una contraseña maestra muy segura, pero diría que esto es aún más fácil que tratar de recordar las coordenadas en una cuadrícula utilizada para generar las contraseñas para todos sus sitios.

    
respondido por el TwentyMiles 14.02.2014 - 18:19
fuente
1

La seguridad de tu esquema tiene dos lados. El primero, por supuesto, es "¿qué tan seguro es esto?" Primero, aplique la máxima de Kerckhoff que dice (parafraseado) "asuma que el atacante sabe todo acerca de su sistema, excepto la clave". Si el atacante sabe que tiene esta cuadrícula y conoce su esquema de todas las demás letras y se apodera de su lista que dice "stackexchange.com (2,3)", podría presentar su contraseña. Rompe eso en lo que él podría aprender, quitando atributos diferentes:

  • Si él no lo sabe (2,3), pero conoce el esquema y su cuadrícula, es una simple búsqueda de fuerza bruta de su cuadrícula.
  • Si él sabe (2,3), tu cuadrícula, y que usas un esquema de transposición, pero no conoce los detalles de tu otro esquema de caracteres, podría forzarlo con muchos intentos.
  • Si él conoce su cuadrícula y utiliza un esquema de transposición y aprende cualquier contraseña única de cualquier sitio protegido por su esquema, puede aplicar ingeniería inversa al esquema de contraseña con muy pocos intentos.
  • Si él no sabe (2,3) y no sabe que usas un esquema de transposición, pero conoce tu cuadrícula, depende de qué tan dedicado sea (y qué objetos de valor estás protegiendo).
  • Si él no conoce su cuadrícula, pero conoce su esquema, y conoce otras 100 contraseñas de piratear otros 100 sitios, podría reconstruir su cuadrícula.
  • Si conoce su esquema y conoce su contraseña en un sitio, podría probar otros sitios usando caracteres aleatorios para prefijar o poner un sufijo a su contraseña de 16 caracteres. Usando su ejemplo, podría probar www.mightybank.com: Carlos / 09DJNZvHB6, Carlos / 19DJNZvHB6, ... Esto probablemente no sería práctico para un ataque ciego, pero si fuera un operador de sitios web malicioso que pudiera probar millones de contraseñas Con impunidad, podría probarlo fácilmente.

La respuesta es que su esquema, las coordenadas de inicio del sitio web y la cuadrícula en sí son parte de los datos que debe mantener en secreto, no solo las coordenadas de inicio de la clave.

El otro lado de su seguridad es su riesgo: si pierde la cuadrícula, o si olvida sus reglas o queda incapacitado, es posible que sus contraseñas no sean recuperables.

    
respondido por el John Deters 14.02.2014 - 20:11
fuente
0

Digamos que tiene una contraseña segura de 16 caracteres alfanuméricos aleatorios: es decir, más de 80 bits y resistente a los ataques de fuerza bruta. A menos que haya algo extraño en usted, deberá anotar la contraseña para recordarla, y llevar una copia en su bolsillo también es una buena idea, si necesita acceder a ella. Bueno, el peligro es que alguien encuentre el papel. Entonces, si su contraseña tiene un prefijo memorable para sus 16 caracteres alfanuméricos aleatorios, el que NO escriba su hoja de papel no sirve para el buscador.

EASTERBUNNYg6hi5yt4dw37j9rx

Y, en cualquier caso, es poco probable que el buscador de tu hoja de papel (por ejemplo, tu madre o un amigo de la universidad) sea un pirata informático con acceso a programas de fuerza bruta.

    
respondido por el Peter 10.10.2014 - 11:27
fuente

Lea otras preguntas en las etiquetas