¿Los "certificados" de inicio de sesión son más seguros que el nombre de usuario estándar y la autenticación de contraseña?

24

Acabo de abrir una nueva cuenta bancaria que viene con la banca por Internet. A diferencia de los otros que he usado hasta ahora, este requiere un certificado personal (un archivo .p12 almacenado en mi computadora) + contraseña para la autenticación en lugar del nombre de usuario estándar + contraseña. Este método es bastante inconveniente ... Tengo que guardar el certificado en un lugar seguro, tengo que hacer una copia de seguridad, no puedo acceder a mi cuenta en ninguna computadora a menos que tenga el certificado conmigo, el certificado tiene fecha de caducidad y no se puede simplemente generar uno nuevo.

Entonces ... ¿hay ventajas? Supongo que este método sería más seguro, pero no estoy seguro de ello. No sé cómo funciona realmente el proceso de autenticación, pero me parece que robar un certificado de la computadora del cliente es tan fácil / difícil como robar su nombre de usuario. Personalmente, me siento mejor acerca de mi nombre de usuario almacenado solo en mi cabeza que de un archivo almacenado en algún lugar de mi disco duro.

    
pregunta tobik 24.06.2014 - 19:40
fuente

5 respuestas

26

El certificado protege a los usuarios contra la amenaza de seguridad de autenticación más común: la reutilización de la contraseña. La mayoría de los usuarios de Internet tienen la tendencia de usar contraseñas iguales o similares en diferentes sitios, incluso en sitios bancarios. Cuando esto ocurre, significa que el compromiso de una base de datos de contraseñas de otro sitio ahora permite el acceso al sitio bancario.

Los certificados también protegen contra la segunda amenaza más común: el phishing. El uso de autenticación mutua en TLS para la verificación del cliente hace que el phishing sea casi imposible. (El atacante necesitaría plantar una CA deshonesta en ambos lados de la conexión, y si están en condiciones de hacerlo, pueden hacer cosas mucho peores.)

Usted tiene razón al afirmar que un certificado no es significativamente más difícil de robar que las credenciales, por lo que ofrece poca seguridad a un usuario con un punto final comprometido. Sin embargo, el certificado protege contra dos problemas muy reales y, por lo tanto, es una opción más segura que un simple nombre de usuario / contraseña. Como ha señalado, esta seguridad tiene un costo de usabilidad, lo cual es desafortunado.

    
respondido por el David 24.06.2014 - 20:03
fuente
13

La parte importante del certificado no es en realidad el certificado en sí, sino el objeto que lo acompaña denominado clave privada . El archivo "p12" contiene ambos. Durante la conexión, el certificado (la parte pública) se muestra al servidor, y la clave privada se utiliza para convencer al servidor de que la clave privada está efectivamente allí (por lo tanto, presumiblemente, el propietario de la clave, es decir, usted). Técnicamente, está involucrada una firma digital ; esto se maneja dentro de los mecanismos del protocolo SST / TLS (que se usa para cada URL "https: //") .

El interés principal, para un banco, de utilizar la autenticación de cliente basada en certificados es que su clave privada no puede ser robada con phishing. Si las personas malvadas configuran un sitio web falso que realmente se parece al sitio de un banco genuino, pueden inducirlo a ingresar su contraseña en él, y luego aprender su contraseña; pero no pueden robar su clave privada. Esa es la magia de las firmas criptográficas: el poder verificar no implica poder generar. Incluso si te conectas tontamente con un servidor falso, y ese servidor solicita una prueba de la posesión de tu clave privada (según SSL), eso no permitirá que el servidor falso aprenda tu clave privada y te personifique.

De modo que es su ventaja: la protección contra el phishing. Los sitios web falsos parecen ser la amenaza de seguridad más común para los bancos relacionada con Internet, por lo que es bastante lógico que intenten hacer algo en su contra.

También podemos argumentar que su clave privada no será capturada por un registrador de claves, al contrario de su contraseña, pero ese no es un buen argumento, ya que los registradores de claves de software pueden registrar claves solo porque tienen algún acceso privilegiado a su Máquina, en cuyo punto también pueden agarrar o al menos usar la clave privada también. (El argumento aún funciona en el caso de los registradores de llave de "hardware", como una cámara oculta cerca del techo con una buena vista del teclado).

Hay otra ventaja potencial, pero no es realmente para ti; es más bien para el banco. La distribución de certificados a los clientes, dentro de un procedimiento específico, puede ser el primer paso para las firmas en transacciones con no repudio . Esto no es algo que se obtiene con SSL (donde la firma está en la sesión , no en los datos transmitidos); requiere un código especial en el lado del cliente. Las firmas sin repudio son un arma legal contra usted , en caso de que use el sitio web para enviar un pedido de transacción financiera y luego intente renegarlo. La firma puede ser utilizada como prueba, en la corte, de que realmente lo hizo.

Es improbable que su banco utilice un sistema de firma de este tipo en este momento; pero la implementación de certificados del lado del cliente es la forma en que comienza.

    
respondido por el Tom Leek 24.06.2014 - 22:56
fuente
7

Te estás perdiendo varias cosas:

  • Su cuenta ahora está protegida por dos factores: la clave privada (que se almacena en su máquina) y la frase de contraseña (que usted sabe). Un atacante necesita ambos.
  • No se deben almacenar ni enviar datos confidenciales al servidor. La clave privada nunca abandona tu PC. Por lo tanto, un atacante no puede simplemente tomar algunos hashes de contraseña del servidor e iniciar un ataque de fuerza bruta. Necesitan atacarte específicamente.
  • Seamos realistas: la mayoría de las contraseñas son terribles. Esto puede ser aceptable siempre y cuando "solo" nuestra cuenta de Facebook esté en juego, pero un banco necesita un poco más de seguridad.
respondido por el Fleche 24.06.2014 - 20:24
fuente
4

Usted presenta inquietudes válidas:

  • Si hay malware en su computadora, la contraseña memorizable por el hombre que protege el archivo p12 puede ser forzada sin conexión, exponiendo sus credenciales y contraseña
  • El uso de un certificado en muchos dispositivos es problemático

El principal beneficio que veo es que los certificados de cliente permiten la Autenticación mutua TLS, lo que significa que cada parte puede estar segura de que no hay un proxy HTTPS (software espía corporativo o pirata informático de Wifi) que inspecciona el tráfico entre usted y el banco.

Espero que su banco le permita tener varios certificados en muchos dispositivos, cada uno de los cuales puede cancelarse / revocarse de manera independiente si su dispositivo se pierde, es robado o está comprometido.

    
respondido por el random65537 24.06.2014 - 19:51
fuente
2

Certificados agrega un segundo factor de autenticación que hace que su cuenta sea mucho más segura.

Primero, los tres factores son:

  • Lo que sabes (es decir, las contraseñas)
  • Lo que tienes (es decir, teléfono, certificado, etc.)
  • Lo que eres (es decir, huellas digitales, retina, etc.)

Su banco se ha asegurado de que quienquiera que vaya a iniciar sesión en la cuenta debe conocer la contraseña y tener el certificado.

Entonces, digamos que un atacante encuentra su contraseña, ya sea por ingeniería social o comprometiendo la base de datos de contraseñas del banco, o detectando el tráfico del enrutador de su hogar, o mediante phishing, etc., todavía no pueden acceder a su cuenta porque Aún no dispongo del certificado.

Ahora digamos que un atacante lo está atacando y le roba su computadora portátil o computadora de su casa, etc., aún no pueden acceder a la cuenta bancaria porque no tienen la contraseña.

Por lo tanto, el atacante necesita robar ambos, lo que obviamente es más difícil y por lo tanto aumenta la seguridad.

Desde un punto de vista de usabilidad, pregunte a su banco si pueden enviar un SMS a su número de teléfono como un segundo factor de autenticación. Esto requerirá que el atacante conozca su contraseña y tenga su número de teléfono .

    
respondido por el Omer Iqbal 25.06.2014 - 11:03
fuente

Lea otras preguntas en las etiquetas