stringtranslate.com

firmware

El firmware se almacena comúnmente en una EEPROM , que utiliza un protocolo de E/S como SPI .

En informática , el firmware es un software que proporciona control de bajo nivel del hardware de un dispositivo informático . Para un dispositivo relativamente simple, el firmware puede realizar todas las funciones de control, monitoreo y manipulación de datos. Para un dispositivo más complejo, el firmware puede proporcionar un control de nivel relativamente bajo, así como servicios de abstracción de hardware para software de nivel superior, como un sistema operativo .

El firmware se encuentra en una amplia gama de dispositivos informáticos, incluidas computadoras personales , teléfonos , electrodomésticos , vehículos , periféricos de computadora y en muchos de los chips digitales dentro de cada uno de estos sistemas más grandes.

El firmware se almacena en una memoria no volátil , ya sea una memoria de solo lectura (ROM) o una memoria programable como EPROM , EEPROM o flash . Cambiar el firmware de un dispositivo almacenado en la ROM requiere reemplazar físicamente el chip de memoria, aunque algunos chips no están diseñados para retirarse después de la fabricación. La memoria de firmware programable se puede reprogramar mediante un procedimiento a veces llamado flasheo. [1]

Las razones comunes para cambiar el firmware incluyen corregir errores y agregar funciones .

Historia y etimología

Ascher Opler utilizó el término firmware en un artículo de Datamation de 1967 , como término intermediario entre "hardware" y "software". Opler proyectó que los sistemas informáticos de cuarta generación tendrían un almacén de control grabable (una pequeña memoria especializada de alta velocidad) en la que se cargaría el firmware de microcódigo . Muchas funciones de software se trasladarían a microcódigo y los conjuntos de instrucciones se podrían personalizar, con diferentes firmware cargados para diferentes conjuntos de instrucciones. [2]

A medida que las computadoras comenzaron a aumentar en complejidad, quedó claro que primero era necesario iniciar y ejecutar varios programas para proporcionar un entorno consistente necesario para ejecutar programas más complejos a discreción del usuario. Esto requirió programar la computadora para ejecutar esos programas automáticamente. Además, a medida que las empresas, universidades y especialistas en marketing querían vender computadoras a personas no profesionales con pocos conocimientos técnicos, se hizo necesaria una mayor automatización para permitir que un usuario no profesional ejecutara fácilmente programas con fines prácticos. Esto dio lugar a un tipo de software que un usuario no ejecutaría conscientemente, y condujo a un software que un usuario profano ni siquiera conocería. [3]

Tal como se usaba originalmente, el firmware contrastaba con el hardware (la propia CPU) y el software (instrucciones normales que se ejecutan en una CPU). No estaba compuesto por instrucciones de máquina de la CPU, sino por microcódigo de nivel inferior involucrado en la implementación de instrucciones de máquina. Existía en la frontera entre hardware y software; de ahí el nombre firmware . Con el tiempo, el uso popular amplió la palabra firmware para denotar cualquier programa informático que esté estrechamente vinculado al hardware, incluido el BIOS de las PC, el firmware de arranque de los teléfonos inteligentes, los periféricos de las computadoras o los sistemas de control de dispositivos electrónicos de consumo simples , como los hornos microondas y los controles remotos. .

Aplicaciones

Computadoras

Firmware ROM BIOS en una placa base Baby AT

En algunos aspectos, los distintos componentes del firmware son tan importantes como el sistema operativo en una computadora en funcionamiento. Sin embargo, a diferencia de la mayoría de los sistemas operativos modernos, el firmware rara vez tiene un mecanismo automático bien evolucionado de actualización para solucionar cualquier problema de funcionalidad detectado después del envío de la unidad.

Un usuario puede actualizar manualmente el firmware de una computadora a través de un pequeño programa de utilidad. Por el contrario, el firmware de los dispositivos de almacenamiento masivo (unidades de disco duro, unidades de discos ópticos, almacenamiento de memoria flash, por ejemplo, unidad de estado sólido) se actualiza con menos frecuencia, incluso cuando se utiliza almacenamiento de memoria flash (en lugar de ROM, EEPROM) para el firmware.

La mayoría de los periféricos de computadora son en sí mismos computadoras de propósito especial. Dispositivos como impresoras, escáneres, cámaras web y unidades flash USB tienen firmware almacenado internamente; Algunos dispositivos también pueden permitir la actualización de campo de su firmware.

Ejemplos de firmware de computadora incluyen:

Actualización del firmware de una cámara Fuji Instax

Productos para el hogar y uso personal.

Los dispositivos de consumo como consolas de juegos , cámaras digitales y reproductores de música portátiles admiten actualizaciones de firmware. Algunas empresas utilizan actualizaciones de firmware para agregar nuevos formatos de archivos reproducibles ( códecs ). Otras características que pueden cambiar con las actualizaciones de firmware incluyen la GUI o incluso la duración de la batería. Los teléfonos inteligentes tienen una capacidad de actualización de firmware por aire para agregar nuevas funciones y solucionar problemas de seguridad.

Automóviles

Desde 1996, la mayoría de los automóviles emplean una computadora de a bordo y varios sensores para detectar problemas mecánicos. A partir de 2010 , los vehículos modernos también emplean sistemas de frenos antibloqueo (ABS) controlados por computadora y unidades de control de transmisión (TCU) operadas por computadora . El conductor también puede obtener información en el tablero mientras conduce de esta manera, como lecturas de presión de neumáticos y economía de combustible en tiempo real. Los distribuidores locales pueden actualizar el firmware de la mayoría de los vehículos.

Otros ejemplos

Otras aplicaciones de firmware incluyen:

Brillante

El flasheo [5] implica la sobrescritura de firmware o datos existentes, contenidos en la EEPROM o módulo de memoria flash presente en un dispositivo electrónico, con datos nuevos. [5] Esto se puede hacer para actualizar un dispositivo [6] o para cambiar el proveedor de un servicio asociado con la función del dispositivo, como cambiar de un proveedor de servicios de telefonía móvil a otro o instalar un nuevo sistema operativo. Si el firmware se puede actualizar, a menudo se hace a través de un programa del proveedor y, a menudo, permitirá guardar el firmware anterior antes de actualizar para poder volver a él si el proceso falla o si la versión más nueva funciona peor. Se han desarrollado reemplazos de software gratuitos para herramientas de actualización de proveedores, como Flashrom .

Hackeo de firmware

A veces, terceros desarrollan una versión no oficial de firmware nueva o modificada ("posventa") para proporcionar nuevas funciones o desbloquear funciones ocultas; esto se conoce como firmware personalizado . Un ejemplo es Rockbox como reemplazo del firmware para reproductores multimedia portátiles . Hay muchos proyectos caseros para varios dispositivos, que a menudo desbloquean funcionalidades informáticas de propósito general en dispositivos previamente limitados (por ejemplo, ejecutar Doom en iPods ).

Los hacks de firmware suelen aprovechar la función de actualización de firmware en muchos dispositivos para instalarse o ejecutarse ellos mismos. Algunos, sin embargo, deben recurrir a exploits para ejecutarse, porque el fabricante ha intentado bloquear el hardware para evitar que ejecute código sin licencia .

La mayoría de los hacks de firmware son software gratuito .

Trucos de firmware de disco duro

Kaspersky Lab , con sede en Moscú, descubrió que un grupo de desarrolladores al que se refiere como " Equation Group " ha desarrollado modificaciones del firmware de la unidad de disco duro para varios modelos de unidad, que contienen un caballo de Troya que permite almacenar datos en la unidad en ubicaciones que no se borrará incluso si la unidad se formatea o se borra. [7] Aunque el informe de Kaspersky Lab no afirmó explícitamente que este grupo sea parte de la Agencia de Seguridad Nacional (NSA) de los Estados Unidos , la evidencia obtenida del código de varios software de Equation Group sugiere que son parte de la NSA. [8] [9]

Los investigadores de Kaspersky Lab clasificaron las iniciativas de Equation Group como la operación de piratería más avanzada jamás descubierta, y también documentaron alrededor de 500 infecciones causadas por Equation Group en al menos 42 países.

Riesgos de seguridad

Mark Shuttleworth , fundador de la empresa Canonical , que creó la distribución Ubuntu Linux , ha descrito el firmware propietario como un riesgo para la seguridad, diciendo que "el firmware de su dispositivo es el mejor amigo de la NSA " y llamando al firmware "un caballo de Troya de dimensiones monumentales". dimensiones". Ha afirmado que el firmware de código cerrado y de baja calidad es una gran amenaza para la seguridad del sistema: [10] "Su mayor error es suponer que la NSA es la única institución que abusa de esta posición de confianza; de hecho, es razonable suponer que todo firmware es un pozo negro de inseguridad, cortesía de la incompetencia del más alto grado por parte de los fabricantes y de la competencia del más alto grado por parte de una amplia gama de dichas agencias". Como posible solución a este problema, ha pedido un firmware declarativo, que describiría "vínculos y dependencias de hardware" y "no debería incluir código ejecutable ". [11] El firmware debe ser de código abierto para que el código pueda comprobarse y verificarse.

Los hacks de firmware personalizados también se han centrado en inyectar malware en dispositivos como teléfonos inteligentes o dispositivos USB . Una de esas inyecciones en teléfonos inteligentes se demostró en el sistema operativo Symbian en MalCon , [12] [13] una convención de hackers . En la conferencia Black Hat USA 2014 se presentó un hack de firmware de dispositivo USB llamado BadUSB , [14] que demuestra cómo un microcontrolador de unidad flash USB puede reprogramarse para falsificar varios otros tipos de dispositivos para tomar el control de una computadora, filtrar datos o espiar la computadora. usuario. [15] [16] Otros investigadores de seguridad han trabajado más en cómo explotar los principios detrás de BadUSB, [17] publicando al mismo tiempo el código fuente de herramientas de piratería que pueden usarse para modificar el comportamiento de diferentes dispositivos USB. [18]

Ver también

Referencias

  1. ^ "¿Qué es el firmware?". 23 de enero de 2013.
  2. ^ Opler, Ascher (enero de 1967). "Software de cuarta generación". Datamación . 13 (1): 22-24.
  3. ^ "Introducción a Conceptos y Aplicaciones Informáticas. Módulo 3: Software del Sistema". Lúmenes.
  4. ^ Mielewczik, Michael (2000). "Actualización de firmware. Más velocidad y seguridad". PC Praxis (en alemán). 1/2000: 68.
  5. ^ ab "Firmware intermitente". Tech-Faq.com. Archivado desde el original el 27 de septiembre de 2011 . Consultado el 8 de julio de 2011 .
  6. ^ "Centro de desarrolladores de HTC". HTC . Archivado desde el original el 26 de abril de 2011 . Consultado el 8 de julio de 2011 .
  7. ^ "Grupo de ecuaciones: el creador de la corona del ciberespionaje". Laboratorio Kaspersky . 16 de febrero de 2015. Archivado desde el original el 2 de diciembre de 2015.
  8. ^ Dan Goodin (febrero de 2015). "Cómo los piratas informáticos" omnipotentes "vinculados a la NSA se escondieron durante 14 años y finalmente fueron encontrados". Ars Técnica . Archivado desde el original el 24 de abril de 2016.
  9. ^ "Última hora: Kaspersky expone el pirateo por puerta trasera de la NSA en todo el mundo de prácticamente todo el firmware de los discos duros". Cos diario . 17 de febrero de 2015. Archivado desde el original el 25 de febrero de 2015.
  10. ^ "Shuttleworth solicita firmware declarativo". Revista Linux . No. 162. Mayo de 2014. p. 9.
  11. ^ Shuttleworth, Mark (17 de marzo de 2014). "ACPI, firmware y tu seguridad". Archivado desde el original el 15 de marzo de 2015.
  12. ^ "Reuniones técnicas de MalCon 2010". Malcon.org . Archivado desde el original el 4 de julio de 2011.
  13. ^ "Hacker coloca una puerta trasera en el firmware de Symbian". H-online.com . 2010-12-08. Archivado desde el original el 21 de mayo de 2013 . Consultado el 14 de junio de 2013 .
  14. ^ "Por qué la seguridad del USB está fundamentalmente rota". Cableado.com . 2014-07-31. Archivado desde el original el 3 de agosto de 2014 . Consultado el 4 de agosto de 2014 .
  15. ^ "BadUSB: sobre accesorios que se vuelven malvados". BlackHat.com . Archivado desde el original el 8 de agosto de 2014 . Consultado el 6 de agosto de 2014 .
  16. ^ Karsten Nohl; Sascha Krissler; Jakob Lell (7 de agosto de 2014). "BadUSB - Sobre accesorios que se vuelven malvados" (PDF) . srlabs.de . Archivado (PDF) desde el original el 19 de octubre de 2016 . Consultado el 23 de agosto de 2014 .
  17. ^ "Lanzamiento del malware BadUSB: infecta millones de unidades USB". El puesto de piratería . Archivado desde el original el 6 de octubre de 2014 . Consultado el 7 de octubre de 2014 .{{cite web}}: Mantenimiento CS1: URL no apta ( enlace )
  18. ^ Greenberg, Andy. "El malware no parcheable que infecta los dispositivos USB ahora anda suelto". CABLEADO . Archivado desde el original el 7 de octubre de 2014 . Consultado el 7 de octubre de 2014 .