¿Puede la tarjeta SD ser un vector de un ataque tipo BadUSB cuando se usa con un lector USB?

17

El firmware de una unidad flash USB puede reescribirse maliciosamente para que aparezca como un dispositivo malicioso (como un teclado, una tarjeta de red, etc.). Dado que varios tipos diferentes de dispositivos pueden conectarse simultáneamente al mismo puerto USB, es muy difícil (si no imposible) que el sistema operativo de la computadora distinga entre los dispositivos originales y los no autorizados. Esto se llama un ataque de BadUSB.

Las tarjetas SD se basan en la misma tecnología que las unidades flash USB: la misma memoria NAND, el mismo controlador, el mismo tipo de firmware que se ejecutan todos juntos. Por lo tanto, teóricamente, el propio firmware debería ser vulnerable al mismo tipo de ataque.

Sin embargo , al menos cuando la computadora proporciona un lector interno de tarjetas SD no USB (como se puede encontrar en las computadoras portátiles donde el lector de tarjetas SD está conectado directamente al bus PCI), El sistema operativo nunca esperaría ver un teclado o lo que sea que se conecte en la ranura del lector de tarjetas SD, el protocolo ni siquiera permite este tipo de cosa extraña, por lo que un ataque tipo BadUSB contra tarjetas SD sería discutible.

Sin embargo, me pregunto si esto sigue siendo cierto cuando uno utiliza un lector externo de tarjetas SD USB. ¿Se puede infectar la tarjeta SD de una manera que, cuando se usa junto con un lector USB sano, pueda desencadenar un ataque tipo BadUSB contra la computadora? ¿O puede considerarse un lector de tarjetas SD como un "proxy" seguro entre la computadora y una tarjeta SD potencialmente maliciosa?

    
pregunta WhiteWinterWolf 02.01.2016 - 19:46
fuente

1 respuesta

15

No puedo decir que siempre sea así, pero todos los lectores de tarjetas SD internas que he visto eran en realidad dispositivos USB, lo que los pone en la mira de BadUSB.

Internamente, una tarjeta SD es de hecho muy similar a una unidad de disco - y ha habido ataques contra ellos liberados. Por lo tanto, se pueden reprogramar para que cambien su comportamiento, al igual que puede hacerlo con un dispositivo de arrastre. Entonces, ciertamente hay algo en esto.

Myself y Brandon Wilson lanzaron el primer código público de BadUSB: cuando hicimos esto, también miramos las tarjetas SD, tratando de ver cómo podrían ser aprovechados para realizar ataques similares. La respuesta que se nos ocurrió fue que no había una forma confiable de hacerlo.

El vector de ataque aquí sería que una tarjeta SD malintencionada se comportaría de una manera no estándar para explotar una vulnerabilidad en el firmware del lector, ya que está conectado a USB y es potencialmente capaz para hacer cosas más interesantes, para tomar el control de la interfaz USB directamente o aplicar modificar el firmware del lector para facilitar futuros ataques.

¿El problema con esto? Debe dirigirse a lectores específicos (por controlador y versión de firmware), lo que significa que tiene cierto valor como ataque dirigido, pero no puede ser lo suficientemente confiable o genérico para tener un impacto a gran escala. Así que no lo perseguimos en nuestra investigación. Por supuesto, vale la pena señalar que no hay una gran cantidad de compañías que desarrollen los controladores que utilizan los lectores, por lo que existe cierto potencial para apuntar a un número relativamente pequeño de combinaciones de controlador / firmware comunes y cubrir un porcentaje decente del mercado.

Entonces, para responder a su pregunta, no es un proxy seguro, pero es un proxy complicado. Si un atacante puede aprender sobre su configuración específica y está dispuesto a gastar el dinero en investigación y desarrollo, es posible . Pero, dicho esto, si te enfrentas a ese tipo de atacante, es casi seguro que hay mejores opciones para ellos.

En general, casi todo lo que se conecta a USB, desde los ratones hasta el centro de raíz interno, son objetivos potenciales de los ataques de BadUSB. Algunos son más difíciles de aprovechar que otros: las unidades de disco están ubicuas y son fáciles de modificar, por lo que se convirtieron en la cara del ataque, pero están lejos de estar solas. Si está conectado al bus, siempre existe el riesgo de que se modifique con un firmware malicioso.

Se ha señalado muchas veces, pero tenga en cuenta que BadUSB no es realmente una vulnerabilidad, es una característica . Todo lo que ves en un ataque de BadUSB cumple con la especificación, por eso no hay una defensa efectiva. El host no tiene forma de saber si el comportamiento es deseado o no.

También es importante recordar que BadUSB no es solo que los dispositivos se muestren como otro tipo de dispositivo, sino que también puede cambiar la forma en que se comporta el dispositivo, mientras que parece que actúa normalmente. Una de las demostraciones que lanzamos fue una partición oculta a la que solo se podía acceder si conocía el truco correcto: también habíamos jugado con unidades autodestructivas y unidades que hacían una copia de seguridad de todo lo eliminado, por lo que incluso si la unidad está formateado, aún puede contener información confidencial (no los publicamos).

    
respondido por el Adam Caudill 03.01.2016 - 00:55
fuente

Lea otras preguntas en las etiquetas