GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué puede hacer un atacante con Bluetooth y cómo se debe mitigar?

(Nota:esta respuesta es de 2013. Mucho ha cambiado en Bluetooth desde entonces, especialmente el fuerte aumento en la popularidad de BLE, nuevos ataques, características obsoletas. Dicho esto, la mayor parte sigue siendo aplicable).

Introducción

Intentaré, en la medida de mis conocimientos, abordar sus preguntas sin tocar las partes técnicas de la tecnología Bluetooth en sí. Aprendí mucho de lo siguiente mientras tenía que escribir un informe de seguridad para dar forma a una política BYOD. Conociéndote, no tendré que sermonearte sobre que no hay nada 100% seguro, todo lo que hacemos es solo para ponérselo más difícil a los malos.

Lo que NO es Bluetooth

  • Bluetooth en sí mismo como tecnología no es seguro, no se trata solo de la implementación, hay algunas fallas graves en el diseño en sí.

  • Bluetooth no es un método de comunicación de corto alcance; el hecho de que estés un poco lejos no significa que estés a salvo. Los dispositivos Bluetooth Clase I tienen un alcance de hasta 100 metros.

  • Bluetooth no es un método de comunicación maduro (en términos de seguridad). Con los teléfonos inteligentes, se ha convertido en algo totalmente diferente de lo que estaba destinado a ser. Fue creado como una forma de conectar teléfonos a periféricos. Mi consejo:no uses Bluetooth para nada serio.

¿Cómo se protege Bluetooth ahora?

  • Salto de frecuencia como loco:Bluetooth usa algo llamado AFH (salto de frecuencia adaptativo). Básicamente utiliza 79 canales en la banda ISM de 2,4 Ghz y salta entre ellos a una velocidad de 1600 saltos/s, mientras observa el entorno y excluye las frecuencias existentes de la lista de saltos. Esto reduce en gran medida las interferencias y los intentos de interferencia.

  • Paquete de cifrado E0:utiliza un cifrado de flujo con una clave de 128 bits.

  • Imposibilidad de detección:a menos que configure su dispositivo como "detectable", no responderá a los intentos de escaneo y su BD_ADDR de 48 bits (la dirección que identifica su dispositivo con Bluetooth) no se revelará.

  • Emparejamiento:a menos que los dispositivos estén emparejados con el consentimiento de las partes, no podrán comunicarse. Solo se puede realizar una solicitud de emparejamiento si conoce el BD_ADDR del otro dispositivo (mediante escaneo o conocimiento previo).

¿Es una buena idea quitar y volver a emparejar mis dispositivos en un intervalo determinado (pensando que esto está cambiando el PIN de Bluetooth)

Sí. Es una muy buena idea. Está eliminando los riesgos de ser explotado por sus dispositivos de confianza. Dado que generalmente emparejamos dispositivos por razones insignificantes (enviar un archivo a un conocido, obtener una VCard de una persona que conoció en algún lugar...) es muy probable que cree una enorme lista de dispositivos "confiables" si usa mucho Bluetooth.

¿Cuál es el impacto en la seguridad de hacer que mi dispositivo o computadora sea "detectable"?

El problema de hacer que su dispositivo sea reconocible es que está anunciando su BD_ADDR a cualquiera que lo solicite. La única forma de emparejarse con otro dispositivo es conociendo el BD_ADDR. En un ataque dirigido, tomará algún tiempo aplicar fuerza bruta al BD_ADDR de 48 bits.

En el caso normal, conocer su BD_ADDR no debería ser un gran problema, pero en caso de que haya una vulnerabilidad en su teléfono o en el software Bluetooth de su computadora, es mejor pasar desapercibido. Otro problema es el impacto en la privacidad; al ser detectable, permite que las partes no emparejadas (que no son de confianza) sepan cuándo estás cerca.

¿Qué tipo de acceso tiene un dispositivo habilitado para Bluetooth en mi sistema?

En el caso normal (sin vulnerabilidad para permitir la ejecución de código arbitrario), todo depende de los perfiles de Bluetooth compatibles con su dispositivo. Por lo general, puede suponer que su computadora admite todos los perfiles. Voy a enumerar algunos:

  • BHIDP (perfil de dispositivo de interfaz humana Bluetooth) le dará acceso a la activación de eventos de su mouse y teclado (mover el mouse y enviar las teclas del teclado).
  • BIP (perfil de imagen básico) le dará acceso a su cámara.
  • A2DP (perfil de distribución de audio avanzado) le dará acceso a su MIC y a su salida de audio.
  • OBEX (intercambio de objetos) es de lo que generalmente debe preocuparse. Dependiendo de la implementación, podría dar acceso a sus archivos, directorio telefónico, mensajes, etc.

¿Existen funciones de seguridad de Bluetooth que puedan (o no) habilitarse? ¿Cómo puedo auditar la presencia (o falta de) estas características?

Antes de Bluetooth V2.1, al implementar el protocolo en sí, el desarrollador tiene la opción de usar el Modo de seguridad n.º 1, lo que significa que no hay seguridad en absoluto. Los dispositivos pueden comunicarse sin necesidad de emparejamiento y no se utiliza el cifrado.

Bluetooth V2.1 y posteriores requieren encriptación.

Como usuario, hay algunas cosas que puede hacer para que su uso de Bluetooth sea más seguro. (Ver más abajo)

Suponiendo que el cifrado es una función de seguridad que se puede habilitar, ¿es obligatorio u opcional?

Como en la pregunta anterior, depende de la implementación. Por lo general, el cifrado se usa de forma predeterminada en la comunicación PC-PC, teléfono inteligente-teléfono inteligente y PC-teléfono inteligente. A partir de Bluetooth V2.1, el cifrado está habilitado de forma predeterminada.

¿Qué puede hacer un atacante una vez que un dispositivo malicioso se empareja con el mío?

Básicamente, cualquier cosa que admita su dispositivo. Para demostrar esto, solo use una aplicación llamada Super Bluetooth Hack, verá cosas muy aterradoras que incluyen:

- Timbre:reproducción de sonidos de llamadas entrantes, despertador.
- Llamadas:marcar un número, finalizar una llamada.
- Teclas, Teclas presionadas:presionando y viendo teclas presionadas
- Contactos
- Lectura de SMS
- Modo silencioso:encender o apagar
- Funcionalidad del teléfono:apagar la red / teléfono
- Alarmas
- Reloj:cambiar fecha y hora
- Cambiar operador de red
- Java:iniciar, eliminar aplicaciones Java
- Calendario
- Estado de la memoria
- Bloqueo de teclas

Entonces, ¿qué tiene de malo el Bluetooth?

  • Confianza total en el dispositivo emparejado: Un dispositivo emparejado tiene acceso a prácticamente todos los perfiles compatibles con el otro dispositivo. Esto incluye OBEX y FTP (perfil de transferencia de archivos).

  • Los perfiles tienen demasiada libertad: Los perfiles pueden elegir el modo de seguridad que deseen. Incluso puede implementar su propia versión de OBEX sin que Bluetooth requiera que use encriptación o autenticación. (Anterior a Bluetooth V2.1)

  • Debilidades en E0: Desde 1999, las vulnerabilidades E0 comenzaron a aparecer. Se demostró que es posible descifrar E0 con 2 en lugar de los 2 que se creía anteriormente. Año tras año, los investigadores han descubierto más vulnerabilidades, lo que llevó al ataque de 2005 por parte de Lu, Meier y Vaudenay. El ataque demostró la posibilidad de recuperar la clave con 2 operaciones.

  • El emparejamiento está vagamente definido: Los dispositivos pueden implementar sus propios métodos de emparejamiento, incluido un PIN de 4 dígitos que se puede descifrar en poco tiempo.

Finalmente, para pautas de buenas prácticas:

Enumeraré algunas de las recomendaciones importantes de seguridad de Bluetooth de la NSA (modifiqué algunas de ellas y agregué algunas propias):

  • Habilite la función Bluetooth solo cuando sea necesario.
  • Habilite la detección de Bluetooth solo cuando sea necesario.
  • Mantenga los dispositivos emparejados juntos y controle lo que sucede en los dispositivos.
  • Emparejar dispositivos mediante una clave de acceso larga segura.
  • Nunca ingrese claves de acceso o PIN cuando se le solicite de forma inesperada.
  • Actualice y parchee periódicamente los dispositivos habilitados para Bluetooth.
  • Elimine los dispositivos emparejados inmediatamente después de usarlos.

Actualización: Hace una hora estaba sumergiéndome en las especificaciones de Bluetooth V4.0 y, para mi sorpresa, parece que todavía usan E0 para el cifrado y no hubo buenos cambios en el mecanismo de emparejamiento. Lo que es aún peor es que están impulsando el mecanismo de emparejamiento de comparación de números, en el que a los usuarios se les muestra un número de seis dígitos en los dos dispositivos y se les pide que verifiquen si son iguales. Lo que, en mi opinión, abre enormes puertas a los ataques de ingeniería social.

Para escenarios de emparejamiento que requieren la interacción del usuario, la protección contra escuchas hace que una simple clave de acceso de seis dígitos sea más fuerte que un código PIN aleatorio de caracteres alfanuméricos de 16 dígitos.

Fuente

Actualización 2: Parece que este PIN de 6 dígitos "Simplemente funciona" es realmente problemático. Mike Ryan demostró un ataque a BLE y lanzó el código cuando su herramienta "crujió" para aplicar fuerza bruta a la clave temporal y descifrar el tráfico.


La seguridad del dispositivo está limitada al tipo de dispositivo.

¿Cuáles son los riesgos de seguridad de Bluetooth y qué tecnologías y mejores prácticas se deben usar para proteger mi dispositivo?

Cada dispositivo proporciona un nivel de servicios. Los servicios prestados crean las restricciones o limitaciones para acceder y explotar. La mejor protección es mantener el Bluetooth apagado (si estás paranoico). Un par de lecturas interesantes en el sitio de Symantec y en Dark Reading.

¿Qué puede hacer un atacante una vez que un dispositivo malicioso se empareja con el mío?

Algunas cosas que podrían suceder:

  • Alguien podría:robar guías telefónicas, fotos, videos, calendarios o permitir realizar llamadas telefónicas, enviar y leer correos electrónicos, concertar citas y enviar mensajes SMS.

  • Después de explotar un teléfono móvil, podría enviar un mensaje SMS con una amenaza de bomba a la estación de policía local. Los registros de facturación sin duda señalarán directamente a usted como el propietario del teléfono y el remitente real del SMS. Realmente depende de la implementación del sistema de destino del estándar Bluetooth. Norton

  • También podrían escuchar llamadas telefónicas (si han falsificado unos auriculares) y controlar el cursor de su mouse en su escritorio (si han falsificado su mouse).

Me divertí un poco con el estéreo de un auto en un concesionario Nissan mientras estaba aburrido esperando a que me hicieran el servicio. El estéreo en uno de los autos de demostración fue detectable, así que lo emparejé durante una demostración cuando el vendedor estaba mostrando las nuevas funciones a un comprador potencial, se emparejó con mi dispositivo, luego, cuando el cliente potencial indicó que su emparejamiento había fallado, lo intentó de nuevo (ambos estábamos emparejados). Luego, después de que el personal de ventas se fue, "poseí" el estéreo, transmití canciones al azar y controlé el volumen. Alguien se alejaría del auto, el estéreo se volvería más fuerte. Alguien caminaba hacia el auto, luego el estéreo se volvía más silencioso. Todo esto fue divertido hasta que recibí una llamada telefónica y el estéreo respondió automáticamente y casi voló mi tapadera (ignoré la llamada).

¿Es una buena idea quitar y volver a emparejar mis dispositivos en un intervalo determinado (pensando que esto está cambiando el PIN de Bluetooth)

Dado que el sistema es fácilmente explotable, hacer esto no elimina las vulnerabilidades originales que existen en las limitaciones de comunicación del hardware de destino con otros dispositivos (su nivel de confianza). lectura oscura

¿Cuál es el impacto en la seguridad de hacer que mi dispositivo o computadora sea "detectable"?

Al hacer que su sistema sea "detectable", permite que alguien se haga pasar por su dispositivo cambiando el nombre de su dispositivo para que coincida. Esto es inevitable en algunos dispositivos.

¿Qué tipo de acceso obtiene un dispositivo con Bluetooth en mi sistema?

Esto depende de las restricciones vigentes en el propio sistema. Si su sistema asume que todos los ratones inalámbricos o auriculares inalámbricos se comportan de la misma manera porque el desarrollador del software no se tomó el tiempo para proteger los intercambios y alguien se hace pasar por su ratón inalámbrico, podría tener acceso a todo lo permitido en los servicios de su sistema. En Windows aparentemente esto podría significar control total.

¿Cómo puedo controlar el alcance de acceso que tiene un dispositivo Bluetooth? (si mi teléfono estuviera comprometido, me gustaría limitar la exposición que tiene mi PC)

Cualquier sistema bluetooth puede verse potencialmente comprometido a su manera debido a las limitaciones en la implementación de la seguridad. Alguien dentro del alcance puede comprometer fácilmente su computadora de escritorio o portátil "detectable" como su teléfono móvil, sus auriculares, su mouse, su refrigerador con Bluetooth, etc. Desvincule y deshabilite Bluetooth cuando no lo esté usando. Apague los dispositivos tontos cuando no estén en uso.

¿Existen características de seguridad de Bluetooth que puedan (o no) habilitarse? ¿Cómo puedo auditar la presencia (o falta de) estas características?

Esto depende del dispositivo. Los dispositivos como los ratones inalámbricos no tendrán un registro de actividad. Los escritorios pueden. Algunos teléfonos móviles no.

Suponiendo que el cifrado es una característica de seguridad que se puede habilitar, ¿es obligatorio u opcional? (además, ¿podría crearse una franja SSL para Bluetooth?)

El cifrado solo puede ser manejado por dispositivos que lo admitan. En el protocolo de enlace inicial, si indica que su dispositivo no tiene capacidades de encriptación, entonces el sistema no intentará encriptar las transacciones. Los ratones inalámbricos, por ejemplo, no transmitirán señales seguras.

Vulnerabilidad de Bluetooth de Mac explotada para la implementación de troyanos Vulnerabilidades de Windows

Un atacante podría entonces instalar programas; ver, cambiar o eliminar datos; o cree nuevas cuentas con todos los derechos de usuario. Esta vulnerabilidad solo afecta a los sistemas con capacidad Bluetooth.

La explotación de Bluetooth de Linux incluye manipulación y lectura de la pila de memoria.

Buena suerte.


Esta respuesta puede estar incompleta o incorrecta ya que mi conocimiento sobre el tema es limitado, pero mi comprensión de Bluetooth es que es una pila bastante suelta en la que se pueden desarrollar diferentes protocolos (llamados perfiles). Muchos de los detalles de seguridad dependerán de la pila y el perfil de Bluetooth en particular que tenga en su hardware.

Suponiendo que su pila de Bluetooth (los controladores para su hardware) no tenga fallas de seguridad, tener un dispositivo detectable no debería hacer ninguna diferencia siempre que el emparejamiento automático esté desactivado. Lo peor que alguien podría hacer es realizar una solicitud de emparejamiento que luego podrías rechazar.

El nivel de acceso que un dispositivo Bluetooth obtiene a un sistema está completamente determinado por cómo se implementan y configuran la pila y los perfiles de Bluetooth, por lo que no es realmente posible responder esta parte de la pregunta directamente.

Quizás el mejor paralelo sería pensar en Bluetooth como un pequeño servidor que brinda una variedad de servicios diferentes a través de un enlace de radio de corto alcance. Los servicios ofrecidos y cómo se implementan los servicios pueden diferir mucho, pero el protocolo utilizado para cada tipo de perfil es consistente. (Por ejemplo, el audio de los auriculares es un perfil común, al igual que AVRCP (protocolo de control remoto de audio/video)).

En cuanto al emparejamiento, durante el proceso de emparejamiento se desarrolla una clave secreta compartida para ser utilizada en el futuro. Siempre que ninguno de los dispositivos filtre el secreto compartido, otro dispositivo no podría hacerse pasar por ese par. Además, siempre que las comunicaciones estén encriptadas con esa clave, en lugar de solo un apretón de manos, las comunicaciones en sí mismas serán seguras.

Según Wikipedia, el cifrado era opcional en Bluetooth antes de 2.1 y podía romperse fácilmente si se usaba durante más de un día; sin embargo, 2.1 y las versiones más nuevas de Bluetooth solucionan esto al requerir cifrado en cualquier cosa que no sea el descubrimiento de servicios y una mejor gestión de claves compartidas.


Linux
  1. Cómo:¿Qué es Git y Github? ¿Cómo lo uso y por qué debería importarme?

  2. ¿Qué es la Curación de Contenidos y cómo se debe hacer?

  3. ¿Qué puedes hacer con un VPS y un servidor en la nube?

  4. ¿Qué significa tener * * * en el comando traceroute? y ¿Cómo se puede hacer frente a esa situación?

  5. ¿Qué es el correo y cómo se navega?

¿Qué es chroot jail y cómo usarlo?

Comando de cola de Linux:qué es y cómo usarlo

Cómo excluir archivos y directorios con Rsync

Cómo conectarse a través de Bluetooth en GNOME en Linux

Cómo hacer una copia de seguridad y restaurar Ubuntu con TimeShift

¿Qué es Crontab y cómo automatizar tareas en Linux con Crontab?