¿Cuáles son los riesgos de seguridad asociados con la generación de una cadena de seguridad como una cadena en lugar de una imagen?

1

En el trabajo, usamos un sistema de autenticación llamado Swivel Secure sin implementación, específicamente cuando conectamos dispositivos de nuestros clientes, tales como: enrutadores, conmutadores, cortafuegos, etc. Debemos proporcionar un OTC (para 2FA, por supuesto)

Por ejemplo, si me conecto a un conmutador debo proporcionar: nombre de usuario, contraseña & una OTC para obtener una OTC debemos visitar un enlace que genere una imagen (vea el siguiente ejemplo)

Un enlace normalmente se ve de la siguiente manera: enlace

Sinoestáfamiliarizadoconunaimagen,esencialmentecadausuariotieneunpin(quesepuedecambiar),losnúmerosprincipalescorrespondenalosnúmerosquesepuedenusarenunpindeusuarioyamp;Losnúmerosdeabajosonlosnúmerosrequeridosparaunaautenticaciónexitosa.

Porejemplo:simipines1234usandolaimagenarribademiOTCparaunaautenticaciónexitosasería3087.

EnSwivelhayunaopciónquetepermiteconfigurarobtenerSCImagecomounasimplecadenareemplazandoSCIMageconSCText.LepreguntéaundesarrolladordeSwivelsobreestoydijo:"está deshabilitado por defecto porque es intrínsecamente inseguro". Encontré que esta declaración era muy vaga y desafortunadamente él nunca respondió a mi solicitud de expansión.

¿Cómo es más inseguro generar la cadena de seguridad como texto? Me doy cuenta de que es más legible en términos de introducirlo en la computadora. Por ejemplo, podría raspar el HTML para obtener la cadena de seguridad, mientras que con la imagen tendría que usar algún tipo de software / biblioteca OCR para obtener los caracteres de la imagen. lo que puede ser difícil, especialmente si la imagen está muy revuelta.

Entonces, ¿cómo es menos seguro generar esta cadena de seguridad como texto? Ni siquiera es como si pudieras iterar sobre todas las combinaciones porque hay un mecanismo de bloqueo en muchos reintentos, por lo que no puedes obtener el PIN de alguien sin adivinarlo esencialmente, etc.

Si alguien pudiera aclararme esto, sería genial. Supongo que me estoy perdiendo algo y simplemente no estoy pensando correctamente.

EDIT Después de una discusión que tuve con DMB sobre la base de que uno de sus comentarios no estaba muy claro. Hemos llegado a la conclusión de que la única diferencia REAL aquí es el tiempo que pasaría un atacante.

Su punto fue que les lleva mucho menos tiempo obtener la etiqueta de párrafo del HTML que usar el software OCR para obtener los dígitos requeridos de la imagen, con lo que estoy de acuerdo (de ahí que mencioné esto en mi post)

Si alguien más tiene algo más que agregar, hágalo, de lo contrario, escribiré una respuesta y la marcaré como contestada. Me interesaría saber qué OTROS riesgos habría al obtener la cadena de seguridad como TEXTO en lugar de como una IMAGEN, gracias.

    
pregunta J.J 03.05.2018 - 18:42
fuente

2 respuestas

0

Con la ayuda de dmb hemos llegado a la conclusión (por lo que podemos decir) de que la ÚNICA diferencia real aquí es la velocidad.

Como mencionó (y lo describí en mi pregunta) si la cadena de seguridad es una imagen en lugar de un texto, hace que sea mucho más difícil para alguien ingresar esa información en la computadora para luego utilizarla en un script, etc. Esto se debe a la forma en que se muestran las imágenes, ya que el punto principal de una imagen de Turing es hacer que el texto sea menos legible / codificado para evitar el uso de robots.

Sin embargo, cuanto más tiempo le toma a un atacante obtener esa información técnicamente, hace que el sistema sea más seguro, acordamos que cuanto más tiempo lleve a un atacante, mejor. El problema de tener una cadena de seguridad como texto es que es muy, muy fácil llevar esa información a la computadora / secuencia de comandos, como mencioné en mi pregunta, una forma de hacerlo sería eliminar las páginas HTML.

Gracias por sus respuestas en este caso! Creo que tengo mi respuesta, si alguien tiene algo que agregar, siéntase libre.

    
respondido por el J.J 04.05.2018 - 17:44
fuente
2

El otro riesgo de seguridad es que esto no es realmente 2FA.

En 2FA, la OTC del usuario se generaría de forma casi aleatoria de manera que requiera el uso de un dispositivo separado, como un token, como prueba de algo que tienen . En el caso de SMS OTP, utiliza un canal separado (celular) para conectarse a un dispositivo separado.

Aquí, el código es el PIN del usuario que está cifrado a mano con un cifrado de sustitución. Eso todavía es algo que el usuario sabe, así que esto es 1FA hecho dos veces.

Algunos de los riesgos como el que se abre 1FA * 2 en comparación con 2FA incluyen:

  • Una PC comprometida registrará la imagen (clave de cifrado) y la "OTC", que se descifra trivialmente al PIN, proporcionando credenciales completas.
  • Lo mismo se puede hacer con MITM, pero debe interceptar tanto el inicio de sesión como los sitios web de venta libre.
  • Dado que el cifrado manual requiere esfuerzo y produce errores, es muy probable que los usuarios elijan los PIN que simplifican la tarea. Esa es una secuencia ascendente de dígitos cerca del comienzo ('1234') o el final ('7890'), desplazados por 1-2 dígitos ('3456') por los más conscientes de la seguridad.

Ya sea una cadena de texto o una imagen de Turing, el tráfico interceptado compromete el sistema. La necesidad de OCR es solo una molestia para los atacantes más sofisticados. Dado que la seguridad siempre es un compromiso frente a la facilidad de uso, puede ser mejor eliminar el PIN y simplemente enviar al usuario su OTC. Eso es menos para el usuario y una seguridad menos visible, por lo que es un poco más probable que escojan una contraseña más segura.

    
respondido por el Therac 04.05.2018 - 07:33
fuente

Lea otras preguntas en las etiquetas