¿Violación de los principios de seguridad?

2

Está claro que los mandos de entrada sin llave, las tarjetas de entrada inteligentes, NFC, etc. son vulnerables a los ataques de retransmisión.

Supongamos que se mejoraron al limitar el período de actividad, por ejemplo, déjelos estar activos solo cuando se agitan, solo cuando se detecta sonido, solo cuando hoy es martes, etc. Esto reduce la oportunidad de que ocurran los ataques.

¿Estas mejoras violan algún principio de seguridad? Específicamente, ¿podrían concebirse tales mejoras como defensas inútiles?

    
pregunta John M. 26.09.2015 - 02:23
fuente

2 respuestas

2

Lo que estás describiendo es la autenticación de múltiples factores, el primer factor es la proximidad de los 2 dispositivos. Por lo tanto, no viola los principios establecidos, sino que se está convirtiendo en una práctica estándar más que en una respuesta a un ataque de alto perfil. Los dispositivos involucrados necesitan saber que la comunicación se realiza cuando solo el usuario quiere que sea, y que son los dispositivos que dicen ser. Esto se logra a través de protocolos y métodos seguros para detectar la interacción legítima del usuario.

La proximidad se puede falsificar en algunos dispositivos con protocolos diseñados incorrectamente a través del relé, los más públicos son los de los mandos de teclas (amplificación de señal) y los abridores de puertas de garaje (atascar / robar 2 y reproducir primero, guardar el segundo para más adelante).

Agregar un segundo factor no es difícil, generalmente es una cuestión de costo. Los ataques de atasco / robo bloquean la señal del transmisor al dispositivo mientras hace una copia, dos veces, luego envía la primera señal al dispositivo que lo activa. La segunda copia se usa para activar el dispositivo bajo el control del atacante. Esto evita tanto los transmisores de código rodante como aquellos con contadores incrementales criptográficamente mejorados. Un código de tiempo sincronizado en ambos dispositivos y como parte del código generalmente derrota este ataque. Sincronizar un código de tiempo y mantenerlo de esa manera requiere relojes de alta precisión (y costosos) en ambos dispositivos, más potencia y esfuerzo adicional por parte del usuario.

Sin embargo, un código de tiempo no suele ayudar con un ataque de amplificación de señal. Una mejor manera de detectar la proximidad ayuda, como una medición precisa del tiempo que toma procesar el saludo del dispositivo para estimar la distancia. Un tiempo de respuesta excesivo puede indicar un ataque activo. El Mercedes Benz de 20 años de mi padre tenía un transmisor de infrarrojos en el llavero además del RF, por lo que el automóvil podía asegurarse de que el llavero apuntaba hacia él y no ser presionado en un bolsillo por accidente. También desbloqueó la puerta específica (o maletero) a la que estaba apuntada, para evitar que alguien se metiera a hurtadillas en el automóvil por una de las otras puertas. Esto también evitó los ataques de transmisión solo de RF, lo que aumenta el costo y el esfuerzo del equipo atacante.

Los métodos adicionales para detectar la interacción legítima del usuario incluyen cercos por tiempo (como sugirió), geo-cercos, detección de manos (usando el tacto capacitivo), detección de gestos, detección de temperatura (para detectar ataques que modifican la velocidad de los relojes y procesadores)

Un protocolo de dispositivo más óptimo incluiría un protocolo de enlace autenticado criptográficamente con teclas grandes, códigos de tiempo, contadores y respuesta de recepción de mensajes. Este tipo de protocolo utiliza grandes cantidades de energía para un dispositivo integrado, por lo que se requieren mejores potencias y baterías de mayor capacidad antes de poder adoptar algo como esto a gran escala. Implementarlo en un teléfono es fácil, pero no tanto en dispositivos de muy bajo consumo (BTLE, IOT, tarjetas inteligentes, etc.). Al menos no en este momento, pero la eficiencia aumenta constantemente.

El costo de la implementación debe ponderarse contra el esfuerzo de un ataque exitoso durante la vida útil del dispositivo, y contra los posibles costos de dicho ataque, en forma de malas relaciones públicas, juicios, etc.

No logré mantener esto corto y me desvié del tema, espero que toda la información sea relevante para la pregunta.

Este es un protocolo básico que uso para el control de servicios de IRC, es corto y simple, y se puede aplicar a muchos escenarios de uso.

A: Hello B, I am A, I would like you to do X<br>
A: B + A + H_1 + X + T_A + C_A + MAC_A(msg)

B: Hello A, you are authorized for X<br>
B: A + B + H_2 + X + T_B + C_B + MAC_B(msg + Z_A)

A: Thanks B, please do X now, over<br>
A: B + A + H_3 + X + T_A + C_A + MAC_A(msg + Z_B)

B: Ok A, I will do X now, over and out<br>
B: A + B + H_4 + X + T_B + C_B + MAC_B(msg + Z_A)

Donde A y B son números de serie o identificadores de dispositivo, C_x es un contador incremental específico del dispositivo x, T_x es el código de tiempo actual del dispositivo x, H_x es un identificador para la parte x del protocolo de enlace, y Z_x es la última MAC respuesta del dispositivo x. Los mensajes están cifrados y autenticados con grandes claves previamente compartidas, pero para algo como un llavero o un abridor de puerta de garaje solo es necesaria la autenticación.

    
respondido por el Richie Frame 27.09.2015 - 03:39
fuente
0

No, no viola ningún principio de seguridad, y ninguna mejora de este tipo en general no se considerará una defensa inútil.

El punto a todo esto es que un sistema seguro a menudo se diseña como un tipo de cebolla: cada capa de seguridad traerá sus propias ventajas y debilidades. El objetivo al crear un sistema seguro es que las debilidades de una capa se compensarán con las ventajas de otra capa.

Resalté el término " en general " anterior porque a menudo ocurre lo que se llama teatro de seguridad : agregar capas suplementarias que no agregarán ninguna ventaja suplementaria que las capas ya existentes . Estas son capas superfluas que dan una falsa sensación de "mejor seguridad" sin agregar nada (excepto una complejidad inútilmente incrementada).

Sin embargo, como describiste en tu pregunta:

  • Tiene mandos de entrada sin llave que proporcionan algunas ventajas de seguridad, pero identificó algunas debilidades,
  • Propones agregar otra capa de seguridad cuyas propiedades sean complementarias de la ya existente.

Así que, en general, se mejorará la seguridad de su sistema.

    
respondido por el WhiteWinterWolf 26.09.2015 - 09:52
fuente

Lea otras preguntas en las etiquetas