¿Contraseña rota = comprometida?

1

Recientemente mi cuenta en una red social ha sido atacada. El atacante logró romper la contraseña, pero gracias a la autenticación de 2 factores, eso no fue suficiente para acceder a la cuenta. He recibido una notificación de un intento de autenticación y una contraseña de un solo uso

Mi contraseña que estaba rota era bastante gruesa, era larga y contenía letras y dígitos, no hay forma de que alguien pueda adivinarla, por lo que solo puedo pensar en la fuerza bruta. Ya he cambiado la contraseña, pero también se usó en otros sitios web, y eso me molesta un poco

Sé que las contraseñas de los usuarios se almacenan como hashes en las bases de datos de los sitios web, y que los hash tienen el efecto de colisiones, cuando dos cadenas diferentes tienen el mismo hash. Por lo tanto, es posible que el atacante no haya brutado mi contraseña real, sino solo una cadena que tiene el mismo hash que mi contraseña actual

Mi pregunta es: ¿cuál es la posibilidad de eso? ¿El hecho de la ruptura de la contraseña significa necesariamente que el atacante ahora sabe mi contraseña real?

    
pregunta Andrew Che 12.03.2018 - 12:59
fuente

3 respuestas

7

Tienes razón en que las colisiones de hash son una cosa, pero no es en absoluto relevante para tu situación. Las colisiones en una buena función hash deben ser tan raras que no hay un solo caso de ellos conocido por la humanidad. Entonces, la probabilidad de que existan dos contraseñas en cualquier lista de forzadores que den el mismo hash es muy, muy, muy pequeña.

Entonces, alguien sabe tu contraseña. Solo puedo asumir que un sitio donde lo usaste fue pirateado, y los atacantes ahora están probando tu contraseña en las cuentas de otros sitios. Los cambios son altos: sus cuentas que usan esta contraseña sin 2FA ya han sido violadas. ¡Por eso no debe reutilizar las contraseñas!

¿Qué hacer entonces? Debe cambiar su contraseña en cada uno de los sitios en los que ha usado este, y debe cambiarlos a únicos y fuertes. No más reutilización. Este sería un buen momento para comenzar a usar un administrador de contraseñas para ayudarlo a recordar todas estas nuevas contraseñas que necesitará.

    
respondido por el Anders 12.03.2018 - 13:32
fuente
3

En primer lugar:

No use la misma contraseña para múltiples servicios.

Para una mejor comprensión de la (no) importancia de la colisión con respecto al hash de contraseñas, lea esta respuesta .

Para llegar a la verdadera pregunta aquí:

  

¿El hecho de que se rompa la contraseña significa necesariamente que el atacante ahora sabe mi contraseña real?

No, no lo hace. No sabemos qué algoritmo de hash utiliza el sitio en cuestión. Es totalmente posible, que HMAC / SHA-256 se use Y está mal implementado, todas las contraseñas se incluyen con el mismo valor y, por lo tanto, todos pueden iniciar sesión en la cuenta de todos con una contraseña aleatoria. Tal vez el sitio fue pirateado, las contraseñas se almacenan en texto sin formato y no están troceadas en absoluto. Sin saber qué sucede detrás del indicador de inicio de sesión, no sería razonable especular sobre la información que tiene un atacante.

¿Por qué? Porque también es posible, y diría que es mucho más probable dado los detalles en su pregunta, que el atacante lo vio escribir su contraseña mientras navega por los hombros o tiene acceso a sus credenciales de otra manera (muy poco espectacular). Es por eso que debe cambiar inmediatamente su (s) contraseña (s) y escanear su (s) máquina (s) en busca de malware. y tampoco use la misma contraseña para múltiples servicios.

    
respondido por el Tom K. 12.03.2018 - 13:32
fuente
2
  

Sé que las contraseñas de los usuarios se almacenan como hashes en las bases de datos de los sitios web

Bueno, debería ser así, pero algunos sitios solían tener prácticas de seguridad deficientes y contraseñas de texto simple almacenadas directamente o casi como contraseñas cifradas incorrectas. Espero que esto no pueda ser cierto hoy en día en sitios serios, pero no apostaría mucho en ello.

Pero si un sitio es hackeado, muchas cosas pueden ser posibles. Hashes protegen contra el robo de base de datos de usuario. Pero, ¿qué sucede si un atacante logra agregar algún código que intercepta un intento de conexión? Ese código tendría acceso al nombre de usuario y contraseña en texto sin cifrar y podría enviarlo al atacante. Una vez más, los sitios serios con buenas prácticas de seguridad deberían detectar una intrusión antes de que el atacante pueda configurar todo eso, pero apostaría aún menos aquí.

Y, sobre todo, ¿cuál de las máquinas que usó al menos una vez para ingresar la contraseña fue pirateada? El atacante solo sabría la contraseña ...

    
respondido por el Serge Ballesta 12.03.2018 - 13:46
fuente

Lea otras preguntas en las etiquetas