¿Cómo pueden las memorias USB vacías contener malware?

55

Leí un artículo de la BBC sobre dispositivos USB vacíos que contienen malware:

  

Los investigadores con sede en Berlín Karsten Nohl y Jakob Lell dijeron que un dispositivo   que parecía estar completamente vacío todavía podría contener un virus.

  • ¿Cómo pueden las memorias USB "vacías" contener malware?
  • ¿Esto es solo un problema para los sistemas Windows (heredados)?
  • ¿Hay alguna manera de usar estos bastones mientras te proteges?

Esta pregunta puede parecer similar a otras preguntas , pero no están preocupadas por el vacío. palos     
pregunta Gruber 22.09.2016 - 07:45
fuente

9 respuestas

45

Puedes hackear el firmware de un dispositivo USB. Con eso puedes decirle al sistema operativo lo que quieras, por ejemplo. El dispositivo está vacío aunque no lo esté. O ataque la pila de software USB del sistema operativo enviando datos que un dispositivo USB normal no enviaría (por lo que el dispositivo podría estar realmente vacío, el ataque proviene del firmware).

También puedes hacer otras cosas divertidas, como decirle al sistema operativo que el dispositivo USB también es un teclado, y luego escribir comandos que hagan algo si está conectado. O decirle al sistema operativo que el dispositivo USB es una tarjeta de red, y redirige todo el tráfico a un servidor que controlas.

Diversión sin fin con dispositivos USB pirateados ...

    
respondido por el stackunderflow 22.09.2016 - 19:07
fuente
69

Me temo que esto se debe a un malentendido del periodista:

  

... dijo que un dispositivo que parecía estar vacío todavía podría contener un virus.

En el video al que se refiere el reportero está claro, de hecho, en los primeros dos minutos Karsen dice que NO hablando de virus. Luego continúa demostrando, en la pantalla, que el dispositivo USB aparentemente vacío se está cambiando a sí mismo en un dispositivo diferente (por ejemplo, emulando almacenamiento y teclado y tocando teclas), como se mencionó en mi respuesta anterior (abajo), pero En ese momento no había revisado el recurso completo para establecerlo como evidencia concluyente.

Así que ahí lo tienen, el autor de alguna manera entendió mal la presentación del video, y la BBC lo publicó ...

  

¿Cómo pueden las memorias USB "vacías" contener malware?

Esta pregunta no forma una imagen clara.

Primero debemos definir "vacío" .

  • ¿Quieres decir sin formato ? Si este es el caso, ¿podemos simplemente borrar el primer sector para dejar de formatear un dispositivo de almacenamiento, dejando el resto de los bytes intactos? ¿Podría haber código viral en esos bytes no borrados y, sin embargo, técnicamente sin formato?
  • ¿Quieres decir que se ve vacío cuando se inserta ? Ha habido numerosos trucos para ocultar archivos en el pasado, como almacenarlos en la papelera de reciclaje, usar el atributo 'oculto' o 'archivo del sistema', usar flujos NTFS o incluso particiones no compatibles. Profundizando en el agujero del conejo, ¿el disco está vacío pero encriptado? Una falla en una importante biblioteca criptográfica (hemos visto bastante recientemente) podría exponer al sistema a ataques de canal lateral encubiertos, incluso desde un dispositivo aparentemente vacío ... Además, algunas memorias USB son de arranque (en algunos sistemas ; lo veremos más adelante), lo que implica que es posible que pueda escribir un virus del sector de arranque para infectarlos. A los virus del sector de inicio realmente no les importa qué sistema operativo está instalado, ya que se ejecutan antes de que se inicie el sistema operativo de todos modos ... Esto me lleva a la siguiente pregunta:
  

¿Esto es solo un problema para los sistemas Windows (heredados)?

No. Debemos considerar lo que constituye "malware". Es posible que una secuencia arbitraria de bytes se considere malware porque causa daños en un sistema (por ejemplo, el código de máquina x86 / x64 en un procesador de x86 / x64) pero no en otro (por ejemplo, el mismo código de bytes en un ARM / SPARC). Para responder a esta pregunta, solo tenemos que encontrar (o diseñar) un sistema que decodifique la secuencia arbitraria como malware, aunque anteriormente no lo fuera.

  

¿Hay alguna forma de usar estos bastones mientras te proteges?

No. Finalmente, considere la definición de memoria USB . Es posible que, en lugar de enchufar un dispositivo de almacenamiento , pueda estar conectando algún tipo de error electrónico, como un adaptador de teclado inalámbrico o un asesino de pulgar USB. Dichos dispositivos en sí mismos no constituyen realmente malware , ya sea porque no son software o no fueron diseñados para ser maliciosos ... aunque podrían ser riesgos de seguridad. También es posible que un dispositivo tenga acceso a la memoria (por ejemplo, aparece como un cargador para su teléfono móvil y luego le roba todas sus fotos, videos, etc. mediante la línea de datos o una red wifi secreta).

No inserte dispositivos USB que no sean de confianza. Período. Puede que no contengan malware, pero ese no es el único peligro ... especialmente en esta época en la que la competencia, el sabotaje electrónico y el amp; La vigilancia está de moda.

    
respondido por el autistic 22.09.2016 - 10:36
fuente
24

USB funciona de esta manera, AFAIK, note que las mentiras podrían desviar el sistema.

  1. La computadora suministra + 5V y GND al dispositivo USB.
  2. El microcontrolador en el dispositivo USB se ejecuta y transmite USB-speak para "Este es un dispositivo tipo X" (X es disco, cámara, teclado, mouse o cualquier dispositivo registrado con el USB Consortium).
  3. La computadora toma la acción "apropiada".

Considere dispositivos USB con microcontrolador subvertido (reprogramado) ...

Computer: +5V, GND
Microcontroller: I am a keyboard.
Computer: OK
Microcontroller: "FORMAT C:" ENTER "Y" ENTER

(referencia de Dilbert)

Busque la vulnerabilidad "BadUSB" para obtener más información.

Ahora hay un gadget GoodUSB: enlace

    
respondido por el waltinator 22.09.2016 - 19:56
fuente
8

Una computadora no es solo un procesador, algo de RAM y un disco duro. Hay muchos procesadores dentro de una computadora, incluidos los procesadores USB host, los procesadores de teclado, los procesadores de reloj, los procesadores de bus de direcciones, los procesadores IDE / SATA y más.

Una memoria USB "completamente vacía" podría estar reportando 0 archivos y carpetas en una sola partición, incluso si fuera, digamos, un teclado programado para publicitarse como un dispositivo de almacenamiento masivo.

Hay mucha confianza en el nivel de hardware para la mayoría de los procesadores. El firmware en muchas memorias USB está diseñado con la idea de que no serán programados por los usuarios finales. El firmware de muchos hosts USB también asume que no serán programados por los usuarios finales.

En otras palabras, un usuario con suficiente habilidad técnica podría escribir su propio código en una memoria USB, que a su vez podría escribir una carga útil en el procesador host USB, que a su vez podría usarse para subvertir otros sistemas a través de buses comunes .

Este entorno solo existe en primer lugar porque la mayoría de los procesadores incluyen RAM no volátil que usan como ROM para almacenar su código. Esto permite a los proveedores construir el hardware primero y luego soltar el software más tarde. Es mucho más eficiente en términos de dinero que construir el software directamente en el hardware.

Entonces, con todo esto en mente, estas son las respuestas que probablemente no quieras escuchar:

  

¿Cómo pueden las memorias USB "vacías" contener malware?

El hecho de que el sistema operativo vea algo vacío no significa que lo sea. Como mínimo, tiene un código de firmware que se ejecuta en un procesador que se inicia en milisegundos cuando el dispositivo recibe alimentación. Todos los dispositivos USB tienen memoria, incluso teclados, ratones y tarjetas de sonido. Si estuviera realmente vacío, el dispositivo no funcionaría.

Sin embargo, si el dispositivo se informa a sí mismo como un dispositivo de almacenamiento, y el sistema operativo consulta la tabla de particiones, el dispositivo puede simplemente enviar los datos que desee, incluso aparecer como vacío, tener una capacidad de almacenamiento arbitraria, etc. , puede encontrar estafadores que venden dispositivos de almacenamiento de capacidad insuficiente que se re-programan para reportar más capacidad de la que tienen. Por ejemplo, puede comprar una memoria de 32 GB que en realidad solo tiene 2 GB de almacenamiento físico. El firmware se encuentra en el sistema operativo, que eventualmente genera datos dañados cuando el usuario intenta utilizar más de (por ejemplo) 2 GB de almacenamiento.

  

¿Esto es solo un problema para los sistemas Windows (heredados)?

No. Este es un problema para prácticamente todos los dispositivos de hardware en el mercado. Algunas personas estiman que esto puede ser tan alto como el 90% o más de los dispositivos, incluyendo computadoras portátiles, tabletas, teléfonos, computadoras de escritorio, reproductores de mp3 y cualquier otra cosa que tenga firmware USB. Hay al menos un fabricante del que he oído hablar que ha "endurecido" su firmware contra la reprogramación. Una simple búsqueda en Google encontrará dispositivos de almacenamiento resistentes a la reprogramación.

  

¿Hay alguna forma de usar estos bastones mientras te proteges?

No. De hecho, a menos que examine cada código de firmware antes de enchufarlo a su computadora y, de hecho, lea el código de firmware de su computadora antes de conectar algo, no puede estar seguro. Es totalmente posible que su dispositivo haya sido infectado por la NSA antes de que fuera enviado a su tienda y vendido a usted. Incluso podría estar infectado incluso si compró todo el hardware poco a poco y lo construyó usted mismo. A menos que usted haya creado y programado físicamente todos los aspectos de su computadora, no hay absolutamente ninguna manera de estar perfectamente seguro.

Lo mejor que puedes hacer es establecer un cierto nivel de confianza y evitar comportamientos de riesgo. Evite comprar hardware abierto en e-bay, a menos que confíe razonablemente en el vendedor. Prefiera comprar partes de computadora de marca en lugar de imitaciones de imitación, a menos que pueda estar razonablemente seguro de que son seguras (es decir, investigue). Use la menor cantidad de dispositivos posible y evite compartirlos con personas que no conoce. En otras palabras, tome las mismas precauciones que tomaría al tratar de comprar alimentos, un automóvil o cualquier otra cosa. La mayoría del hardware no está infectado actualmente, solo porque hay formas más fáciles de obtener los datos de alguien, pero debe evitar la exposición casual a los riesgos.

    
respondido por el phyrfox 23.09.2016 - 19:24
fuente
6

Hay varias formas de hacer que parezca vacío:

  • Uso de caracteres no compatibles en el nombre del archivo

  • Usar opciones de ocultación para los archivos

  • Uso de las carpetas especiales de Windows (como información del sistema)

En todos los casos, con un administrador de archivos decente podrá detectarlos, pero desde dentro de un sistema operativo Windows solo podrá detectarlos en el caso 2 y eso es si lo ha habilitado para mostrar archivos ocultos.

Sí, principalmente es un problema del sistema operativo Windows.

Sí, hay formas de proteger:

  • Use un buen administrador de archivos para ver el contenido real del stick
  • Asegúrate de que no tienes habilitado ningún tipo de ejecución automática
  • Asegúrese de no ejecutar, leer o transferir archivos desde el stick a menos que sepa que están a salvo
respondido por el Overmind 22.09.2016 - 08:02
fuente
6

La propia memoria USB podría ser el virus, no los datos en su memoria flash.

Déjame mostrarte cómo:

  • Un dispositivo USB puede tener múltiples puntos finales
  • Un punto final puede recibir o enviar datos
  • Necesita 2 puntos finales para una unidad flash USB normal: enviar y recibir
  • USB 1.1 permite hasta 4 puntos finales
  • USB 2.0 permite hasta 15 puntos finales, creo

Podría usar los puntos finales restantes para emular un teclado o un mouse.

Si se hace correctamente, el usuario solo nota una unidad flash aparentemente vacía. Así que no hay forma de eliminar el virus sin modificar el firmware del USB

    
respondido por el KeksArmee 23.09.2016 - 16:29
fuente
2

Varias buenas respuestas anteriores - otra relacionada con la respuesta de waltinator sería algo así como un USB Ruberducky esto podría tener malware en un partición oculta que implementaría mientras muestra una partición vacía.

    
respondido por el Nate 23.09.2016 - 16:26
fuente
0

Debido a los datos corruptos. Cualquier cosa que pueda escribirse en la memoria puede, en teoría, guardarse sin la interacción del usuario. Según esta definición, podría decir que el propio Windows es malware porque cada vez que se conecta una unidad o un dispositivo USB, escribe unos cuantos bytes invisibles que podrían contener cualquier cosa. En cualquier lugar, desde la información de copia de seguridad que necesita el sistema operativo o incluso el software malicioso que se copia a sí mismo en cualquier cosa que se pueda escribir. En la década de los 90, los disquetes tenían una inserción física en el pulgar que se podía mover como un interruptor, y colocarlo en una posición de bloqueo provocaría que los datos no se pudieran escribir en el disco. Nada de esto existe para las unidades USB, aunque estoy seguro de que probablemente haya un software que pueda permitirle bloquear las unidades. En Linux, nada se monta automáticamente a menos que se configure de esa manera, si detecta malware en un hardware extraíble, es un problema de Windows.

    
respondido por el NERF 23.09.2016 - 05:05
fuente
0

Mi breve respuesta: es fácil falsificar datos para hacer que algo parezca ser algo que no es.

Esto se puede hacer maliciosamente o simplemente como un subproducto de una aplicación diferente.

Caso en punto de subproducto accidental. Tengo una memoria USB3 de 16 gb que hice en un USB de arranque de Kali linux. El programa que utilicé terminó convirtiendo el espacio no utilizado en una partición no asignada, por lo que ahora el sistema solo veía el stick como el espacio total que ocupaban los datos ISO. Terminé teniendo que usar un programa de partición de terceros para repartir la totalidad del stick y obtener el total de 16 GB.

    
respondido por el NZKshatriya 24.09.2016 - 14:16
fuente

Lea otras preguntas en las etiquetas