¿Puede algún software dañar físicamente el hardware?


91

Sé que se ha hecho una pregunta similar a esta, sin embargo, se trataba de instalar un sistema operativo de 32 bits en una computadora portátil de 64 bits. Mi pregunta es más sobre dañar el hardware.

Me preguntaba si había una forma de interactuar con el hardware desde el sistema operativo o la capa de terminal para dañarlo sin posibilidad de reparación (daño físico real, no solo hardware defectuoso).

  • ¿Podría pasar por alto las medidas de seguridad y ejecutar una CPU tan fuerte que la cerámica se rompa realmente?
  • ¿Podría escribir o interactuar con una unidad de disco duro de forma que pueda causar daños físicos a los platos?
  • ¿Podrías jugar con la memoria y freír RAM?
  • ¿Puedes volar una NIC?

Me interesa conocer el límite al que puede llegar el software cuando se mira un sistema como un todo.


23
Yo diría que sí a todas esas cosas, aunque no sería trivial. ¿Has leído sobre stuxnet? - arstechnica.com/tech-policy/news/2011/07/…
Nate



44
Mi amigo tenía un monitor Magnavox CRT que cuando se configura a 1280 x 1024 moriría en una nube de humo. Accidentalmente le hizo esto a un par de monitores, afortunadamente todavía estaba en garantía.
Jack B Nimble

2
@dmckee Yo diría que esto no es un duplicado exacto porque es algo más general - no se trata de la fusión de la CPU específicamente, pero sólo de cómo el software puede causar ningún daño físico.
nhinkle

Respuestas:


61

Cuando realmente ejecuta programas, la carga en la CPU puede hacer que la temperatura del núcleo aumente. Si bien las tecnologías más nuevas tienen algún efecto (escala dinámica de frecuencia y voltaje), esto se debe principalmente a que ciertas instrucciones usan diferentes vías eléctricas en el microprocesador (a diferencia de cuando el procesador está simplemente en un estado inactivo o de baja potencia). Se han escrito varios virus de potencia en el pasado, que se aprovechan de este hecho para ejecutar repetidamente código de máquina específico que consume la mayor cantidad de energía y, por lo tanto, produce la mayor cantidad de calor (consulte la pregunta ¿Puede un virus derretir la CPU? Para obtener más detalles).


Si bien también podría extender esta idea a otro hardware en el sistema (que cubriré a continuación), otra interesante es los dispositivos de almacenamiento. También podría escribir un virus para leer y escribir constantemente archivos en una unidad, lo que lo desgastará mucho más rápido (tanto discos duros mecánicos como unidades de estado sólido). Aumentará la probabilidad de falla mecánica en un HDD y disminuirá la vida útil del disco de un SSD. Si el usuario no es consciente de estos ciclos constantes de lectura y escritura, lo más probable es que pueda dañar sus discos dentro de una semana más o menos si lo implementó correctamente.

Además, algunas computadoras portátiles Apple tienen un microcontrolador integrado en la batería. Nada especial, pero en el pasado lanzaron un parche que actualiza el firmware y, a su vez, ahora las baterías son susceptibles a ataques de firmware .


Ahora, de vuelta al daño por calor. Algunas placas base nuevas incluyen la opción de modificar la configuración del BIOS en Windows. Teóricamente, podría escribir un virus que aumentaría los voltajes en el sistema a límites artificialmente altos, lo que podría dañar los componentes (RAM, CPU, puentes norte / sur). Elevar el voltaje y / o acelerar el bus PCIe también podría dañar algunos de esos componentes.

Un componente en particular en un bus PCIe / AGP que me gustaría abordar es la tarjeta de video. Esto se debe a que la mayoría de los fabricantes proporcionan herramientas de overclocking para aumentar la velocidad y el voltaje del núcleo. Dando un paso más allá, también podrías escribir un virus para usar estas herramientas para elevar ambas cosas a niveles peligrosos, para que puedas quemarlo, sobrevolucionarlo hasta que se degrade, ¡o ambos!

Tenga en cuenta que la mayoría del hardware de la computadora tiene protección contra sobrecalentamiento y alcanzará el "apagado térmico" antes de que ocurra cualquier daño. En cuanto a la protección contra sobretensiones, es posible pero mucho menos común.


El punto : es posible escribir virus que aprovechen cualquier sistema informático. Sin embargo, si el sistema de destino no tiene acceso a hardware externo (o incluso propio), no hay mucho daño que pueda hacer. La mejor analogía aquí sería como tratar de hackear a alguien que sacó su cable Ethernet de la pared, literalmente no tiene acceso a ese sistema.

Dicho esto, la mayoría de los dispositivos en nuestros sistemas informáticos modernos no tienen acceso para modificar los parámetros de hardware físico - es decir, la tensión y la velocidad del núcleo. Dado que estas cosas pueden modificarse, es posible que los virus se aprovechen y posiblemente interrumpan o destruyan su operación por completo.


19
-1 No estoy de acuerdo con los discos duros. Los discos duros del servidor funcionan constantemente y no se desgastan en una semana. static.googleusercontent.com/external_content/untrusted_dlcp/…
Byron Whitlock

66
Aunque en el tema de la CPU, cualquier placa moderna tendrá cortes térmicos que deberían eliminar la energía mucho antes de que la CPU esté en peligro de daño físico.
Phoshi

55
@Bryon Whitlock Yo diría que depende del patrón de uso. La mayoría de los servidores almacenan en caché la información que recuperan y realizan reescrituras secuencialmente. Podría crear un virus para escribir información en el borde mismo y en los bordes internos de un plato hacia atrás y cuarto muy rápidamente, causando un desgaste excesivo mucho más rápido. Finalmente, si pudiera escribir continuamente a un grupo seleccionado de sectores, puede causar algunos malos mucho más rápido de lo habitual.
Avance el

1
@Breakthrough: Uhm ... no. Escribir continuamente a los mismos sectores no hará absolutamente nada para esos sectores. Los platos magnéticos no se "desgastan por la flexión excesiva". Estoy un poco confundido sobre por qué crees que esto podría causar un problema. Si su unidad tiene problemas para buscar entre los bordes del plato, tiene una unidad defectuosa ... una vez más, esa interfaz es electromagnética, no mecánica. Para tener un problema allí, literalmente tendría que desgastar el rodamiento sellado que sostiene el conjunto del brazo en su lugar.
user11934

55
Los discos duros PUEDEN ser dañados por virus, pero no por ninguna tontería relacionada con el brazo y el plato. El punto más vulnerable es el motor del husillo principal. Arranque el disco, apáguelo, enciéndalo, apáguelo, etc., etc. Esto es (relativamente) difícil para los componentes. Esta es la razón principal (aparte del choque físico) de que las unidades portátiles no duran tanto como las unidades de escritorio, los requisitos de energía mantienen las cosas lo más bajas posible. Por lo tanto, un virus podría acortar teóricamente la vida útil de las unidades de escritorio para que se parezca más a la de una computadora portátil.
user11934

15

Siempre hubo esa advertencia de que algunos monitores CRT más antiguos, si recibían una señal de video más allá de las frecuencias que podían manejar, podrían sufrir daños. No sé cuáles, pero fue un descargo de responsabilidad común cuando se ajustaban las frecuencias de actualización o la configuración de resolución manual.

Básicamente, a menos que un sistema no tenga una refrigeración adecuada o una fuente de alimentación adecuada instalada, no puede romper una CPU trabajando demasiado. El enfriamiento y la potencia con la que se instala deberían mantenerlo al 100% de uso.

Sin embargo, todas las CPU modernas tienen todas las actualizaciones de microcódigo. Intel siempre ha requerido que su microcódigo esté encriptado, pero AMD no (no sabe si eso ha cambiado). Podría ser posible cargar un microcódigo en una CPU que hace algo desagradable.

La memoria flash se puede desgastar con escrituras repetidas. Es probable que sea posible "quemar" un chip flash BIOS con este método.

Estoy seguro de que los fabricantes de discos duros diseñan sus dispositivos con enclavamientos de hardware y sin capacidad para ajustar la velocidad del motor, ya que realmente el motor HDD gira a una velocidad constante. Sin embargo, girar y girar hacia abajo un HDD le causa estrés y desgaste prematuro, lo que se puede hacer en el software. Además, es posible "quemar" la memoria flash / EEPROM de un disco duro con actualizaciones falsas repetidas o firmware pirateado que escribe repetidamente en una memoria flash accesible o EEPROM. Del mismo modo para las unidades de CD-ROM.

Es posible deshabilitar los ventiladores por software, pero muchas CPU modernas se apagarán automáticamente cuando se alcance una temperatura demasiado alta. Las CPU más antiguas no tenían esta protección, pero esas placas base tampoco tenían control de ventilador.


2
Acerca de los CRT: creo que fue posible con los más viejos. Ya tenía algunos de los míos en niveles donde la pantalla era un desastre. Siempre apagaba la pantalla porque tenía miedo de romperla. Los más nuevos acaban de mostrar el error "fuera de rango".
sinni800

2
Hace años, Donkey escribí un código de bajo nivel que controlaba la pistola electrónica del monitor (mono). Me preocupaba que si me equivocaba, el escaneo del haz se restringiría a un pequeño punto en el medio de la pantalla, que podría sobrecalentarse en relación con el resto del cristal y romperse. Nunca lo hizo, ¡pero sudaba un poco!
FumbleFingers

55
En el viejo color de gameboy y gameboy, si ponía a cero el bit 7 de FF40(LCD Enable) en cualquier período, excepto un vblank, se rompería permanentemente la pantalla LCD del gameboy.
Callum Rogers

Este fue un problema a mediados / finales de los 90 cuando se configuraba X en una máquina Linux con ciertas combinaciones de tarjetas de video y monitores y se generaban resoluciones específicas / profundidades de color / actualizaciones de frecuencia.
ivanivan

10

Su fuente de alimentación, si explota, no hará el mismo daño que la de Die Hard. Lamento decepcionar.

Un artículo interesante que destaca una variante de software provoca daños en el hardware aparecidos recientemente en Wired con respecto al virus Stuxnet . Software que hace que el software de comando y control dañe físicamente las centrifugadoras nucleares. Es un poco asombroso.


2
Si bien este es un virus muy interesante, y sus implicaciones fueron muy grandes, diría que Stuxnet no es lo que @MaxMackie estaba buscando. En ese caso, el software tenía el control físico de un dispositivo físico capaz de causar daño . Creo que está hablando de un sistema informático básico que se causa daño a sí mismo , no de ningún dispositivo sobre el que tenga control directo. Dicho esto, el virus Stuxnet fue increíble en lo que hizo : +1.
Avance el

1
Seguí riendo y sacudiendo mi cabeza mientras leía ese artículo. Sé que no es lo que estaba preguntando, pero aparentemente no fui la única persona que pensó que al menos tenía relaciones teóricas con este tema.
music2myear

8

Históricamente, ha habido algunos casos en los que los defectos de diseño de hardware han permitido dañar directa e inmediatamente una máquina. En un caso, una instrucción de una sola línea podría causar que una computadora se cortocircuite y se incendie, IIRC. Pero los casos que escuché estaban en micros antiguos de 8 bits.

Aparentemente, el término es "Killer Poke", pero acabo de aparecer en un rápido Google.

No me sorprendería si estas cosas pueden suceder en sistemas integrados con controladores defectuosos para hardware, pero debería ser difícil de lograr en las plataformas de hardware más comunes, en primer lugar porque el acceso directo al hardware está controlado y, en segundo lugar, porque estos problemas deberían ser inusual y muy específico para plataformas de hardware exactas de todos modos. Por ejemplo, un golpe de tu tarjeta gráfica de expansión probablemente solo funcione para una tarjeta gráfica específica.

Ver - http://en.wikipedia.org/wiki/Killer_poke

EDITAR : no he podido encontrar ninguna referencia a micros de 8 bits que provoquen un cortocircuito y se incendien con un golpe mortal; tal vez esto fue solo un mito urbano que aprendí en el camino en alguna parte. Pero las notas sobre las instrucciones de la CPU HCG (Halt and Catch Fire) ( http://en.wikipedia.org/wiki/Halt_and_Catch_Fire ) son divertidas ... El procesador Motorola 6809 se usó en el Dragon 32, IIRC, así que tal vez eso es lo que Lo recuerdo vagamente.


AFAIK "Killer Poke" como protección de copia en Commodore 64 (8 bits) era real.
Peter Kofler

@Peter: si hubiera una forma de hacer daño permanente al hardware C64 con código, probablemente habría sido mencionado en el libro "Guía definitiva" de Raeto West: no recuerdo nada, pero eso no significa mucho. Me coloco apuestas que no eran maneras de hacer daño permanente a la unidad de disquete, pero nunca he tenido uno de esos.
Steve314


6

Dañé una unidad de disquete una vez, programando un código de ensamblaje para mover la cabeza fuera de los límites habituales. La unidad dejó de funcionar y pude hacerlo con otras 2 unidades.

Pero mucha gente lo duda en ese momento y nunca volví a prestarle atención al tema.

Se discute si reescribir un BIOS (como lo hizo un virus antiguo) es un daño físico, pero muchas personas (incluido yo mismo) eliminan esto de los problemas que usted menciona.


5

ejecuta una CPU tan fuerte que la cerámica se rompe realmente

No, es imposible hacerle algo a una CPU en el software para causar que "la cerámica se rompa". Aunque en algunas CPU es posible cambiar los modos de control de frecuencia o potencia de modo que el troquel se sobrecaliente , o cambiar las salidas de modo que los transistores se hundan o generen demasiada corriente (que depende de cómo se conectan los componentes externos); cualquiera de estos dañará el silicio o las almohadillas. La cerámica no se verá afectada.

También es posible en una CPU que tiene registros de configuración EEPROM (a veces llamados 'fusibles') para bloquear la CPU. Por ejemplo, procesadores integrados ( no clase x86 como en la pregunta original ) con flash interno que proporciona opciones de protección de código u otras opciones (por ejemplo, Microchip PIC) que, si se configura incorrectamente, podría hacer que el código se rompa (si la protección de código está activada) , y el software está intentando leer la memoria del programa, devolverá todos los ceros en lugar de los valores reales). Esto podría 'bloquear' el sistema y podría ser necesaria la reprogramación utilizando un programador de chips externo (tal vez incluso la eliminación de la placa de circuito para lograr esto).


3

La mayoría de nosotros simplemente escribimos código para pequeñas computadoras simples y es poco probable que esto pueda suceder. Cuando interactúas con máquinas mecánicas, es más probable.

Recientemente, el gusano Stuxnet fue creado para atacar el software de Siemens que controla las centrífugas de gas que se utiliza en el proceso de enriquecimiento de uranio. Haría que las centrifugadoras giraran a velocidades diseñadas para dañarlas.


3

Hace muchos años, tenía una unidad DAT (cinta de audio digital) configurada como una unidad de copia de seguridad de la computadora. Solo podía escribir indirectamente a través de Retrospect (software de respaldo). Luego encontré un software que te permite montar el disco: úsalo como un disco duro. Funcionó ... durante unas semanas ... y luego la unidad de cinta se quemó. Los cabezales de la cinta simplemente no fueron diseñados para acceso aleatorio como un disco duro, y todo ese golpe de un lado a otro los destrozó.

Entonces, sí, el software puede dañar (o incluso destruir) el hardware.


3

Una vez que se aleja de las computadoras de escritorio normales, incluso los errores de software no maliciosos pueden causar fallas espectaculares en el hardware:

  • El Mars Climate Orbiter : más de $ 500 millones gastados en misson, destruidos por un error de conversión de métrica a imperial.

  • Ariane 5 Flight 501 : destruido por un error de desbordamiento de enteros, lo que resulta en la pérdida de cohetes y naves espaciales a bordo que cuestan más de US $ 370 millones.

  • Dos choques de aviones F-22 Raptor de $ 150 millones, por diferentes errores .

  • Los errores en el software FADEC del helicóptero Chinook fueron al menos en parte responsables del accidente del ZD576 y la muerte de 29 personas.


Una de las primeras tomas de la luna se desvió debido a un error de codificación en el software de navegación. Un desaparecido *, IIRC.
Daniel R Hicks

No mencionemos el avión que voló perfectamente boca abajo tan pronto como cruzaron de un hemisferio al otro.
Micheal Johnson


2

Depende en parte de las restricciones impuestas al hardware cuando fue diseñado. Si la computadora está conectada a una bomba para la que fue diseñada, probablemente pueda destruir el hardware con bastante eficacia. Sin embargo, se evita el acceso directo al detonador y el hardware es seguro.

Para dañar el hardware, con el software, necesitarías:

  • hardware que es capaz de dañarse a sí mismo
  • una forma para que el software controle esa capacidad (por ejemplo: una interfaz de usuario, API, acceso de bajo nivel o errores en las restricciones de acceso)
  • una forma de modificar / manipular / instalar / ejecutar software

2

Sí, al menos para hardware mal diseñado. Sin embargo, los hardwares modernos tienen que cumplir con varias normas de seguridad, lo que limita su capacidad de dañarse. La CPU moderna se apagará cuando se sobrecaliente, la unidad de disco duro / CD / DVD / Bluray moderna tiene una velocidad predefinida, etc. Los fabricantes de hardware implementan todo tipo de mecanismos de seguridad para evitar que el software defectuoso (incluidos los controladores y el firmware defectuosos) dañe el hardware.

Si bien estos mecanismos de seguridad no son infalibles, es muy difícil dañar un hardware bien diseñado solo con software. Lo máximo que puede hacer el software es usar el hardware de manera que aumente de manera óptima su desgaste.


2

La forma más directa de dañar el hardware es en el caso de los sistemas integrados, donde puede acceder a los pines individuales de un microcontrolador. Puede configurar una entrada para que sea una salida o viceversa, y provocar un cortocircuito. La única forma en que puedo imaginar que esto es útil para dañar la PC es si tiene acceso y puede modificar el firmware de algunos de los componentes del hardware.


2

Ciertamente, es posible causar daños en muchos sistemas, si puede acceder a los controles de nivel del BIOS. Simplemente apagando el ventilador y luego ejecutando un programa de cómputo intensivo causará daños en muchos sistemas (aunque algunos contienen limitadores térmicos cableados). En algunos sistemas puede ajustar los voltajes a través del programa, etc., y en algunos puede ajustar los ciclos de trabajo del procesador y similares. (Esto es especialmente cierto para las computadoras portátiles, donde a menudo existe una amplia lógica de control de potencia).

Y, por supuesto, con los monitores más antiguos había formas de dañarlos al proporcionar una frecuencia de actualización incorrecta o incluso simplemente apagar el video por completo. (La mayoría de los monitores modernos contienen lógica de autoprotección). Y, como alguien mencionó, en algunas unidades de disquete puede causar daños si lleva la cabeza más allá de sus límites. (He encontrado este problema).

Tenía un teléfono Nokia n97mini que tenía la pantalla dañada por el sobrecalentamiento, cuando la CPU quedó atrapada en un circuito cerrado y se sobrecalentó. El calor hizo que las capas de la pantalla se separaran. Supongo que otros teléfonos tienen riesgos similares.


1

Solo si el hardware está mal diseñado. Por ejemplo, el software controla la velocidad del motor eléctrico cambiando el voltaje, sin embargo, el motor está diseñado de manera que se queme si se usa el voltaje más alto durante 1 minuto. Puedes imaginar que el software puede superar fácilmente este límite. Sin embargo, si el motor tiene una corriente de corte de circuito específica si su temperatura alcanza cierto límite, entonces el motor sobrevivirá cualquier cosa que el software esté tratando de hacer.

Volviendo a mi otra publicación donde culpé a Windows 7 + BIOS de Dell capaz de brindar por un disco duro.


1

Hace años leí un libro sobre virus informáticos y el que más me llamó la atención fue el Virus de Turquía, que en realidad podría matar el hardware.

Una variante del virus enfocaría el haz en un monitor CRT de modo que lo quemaría. Al quemarlo, no solo me refiero a la quema de fósforo, aunque eso fue un efecto secundario, sino que la pistola de electrones fallaría, dejando el monitor completamente muerto.

Otra variante del virus realizaría cálculos matemáticos de tal manera que sobrecargaría el coprocesador y haría que se quemara.

Por supuesto, esto fue hace algún tiempo en los días de hardware antiguo que era susceptible a este tipo de ataque. Afortunadamente, el hardware moderno generalmente está diseñado para evitarlo, pero eso probablemente no detendrá a alguien que esté lo suficientemente decidido.


Además, sería relativamente fácil para un virus matar el BIOS. Hay una razón por la cual los flashes de BIOS siempre le advierten que no apague o reinicie el sistema durante el flasheo; es porque una escritura incompleta dejaría el BIOS dañado, y dado que el BIOS es el sistema básico de entrada y salida de la computadora, dañarlo haría que el sistema no funcione. Érase una vez, el BIOS solo se podía actualizar desde el modo DOS puro, pero los flashes de Windows han existido durante algún tiempo. No hay nada que impida que un virus escriba algunas cosas malas en el BIOS y, por lo tanto, elimine el sistema. CIH / Chernobyl hizo exactamente esto en 1999.

Afortunadamente, algunas placas base vienen con BIOS duales para que la copia de seguridad se pueda usar en caso de corrupción del primario, y otras hacen posible restablecer o volver a flashear un BIOS corrupto, pero no todos lo hacen o pueden.


0

En general, la respuesta es que el software no puede dañar el hardware. Sin embargo, hay excepciones ... ¿alguien recuerda cuándo el software en la PC original de IBM podría dañar la placa o el monitor del adaptador Monocromo? Eso definitivamente fue una revelación.

El software en muchos casos ahora tiene control de hardware de los dispositivos conectados, por lo tanto, el mal funcionamiento del software puede causar daños al hardware físico.


0

Un término relevante para esto es el "golpe asesino" que describe poner un valor en un registro (la instrucción "empuje") que el hardware no puede tolerar. La página de Wikipedia para "poke asesino" enumera varios ejemplos.

Los primeros discos duros podrían sufrir todo tipo de daños. Los cabezales de lectura / escritura a veces se pueden mover tanto más allá del plato que golpean el eje del eje o la carcasa. Esto podría dañar los cabezales de lectura / escritura o hacer que se desalineen.

Las impresoras y escáneres de tinta modernos a menudo tienen un interruptor limitador solo en un lado de la pista del cabezal de impresión o de la barra CCD. Solo el firmware los protege de moverse fuera de su alcance previsto (y conducir dentro de cosas). Teóricamente, se podría diseñar una actualización de firmware que no solo crea un dispositivo de este tipo, sino que también causa daños físicos.

También hay suaves "golpes asesinos". La vida útil de un disco duro se puede acortar considerablemente al maximizar el estrés y el calor. Por cierto, Windows se entrega con dicha "característica": si crea más de una partición RAID de software en un HDD, cuando el RAID necesita ser sincronizado (después de un reinicio inesperado, por ejemplo), todas las particiones se sincronizarán al mismo tiempo, mover la unidad hacia adelante y hacia atrás entre las posiciones extremas a la velocidad máxima, probablemente durante varios días, ya que el rendimiento en este estado es mínimo. Los SSD, por otro lado, necesitarían escrituras máximas sostenidas para fallar temprano.


0

La vieja BBC Microcomputer venía equipada con un relé que se usaba para iniciar y detener una unidad de cinta. Generalmente, habilitaría el relé a través de un comando antes de cargar un programa, y ​​luego deshabilitaría el relé.

Al habilitar o deshabilitar el relé, se escuchará un fuerte clic audible desde el interior de la caja, y al alternar rápidamente el estado del relé se generará un zumbido. La frecuencia diferente de activación y desactivación generaría diferentes tonos de zumbido. Podrías usar esto para tocar una melodía.

Sin embargo, el relé no fue diseñado para tantos ciclos de energía, y esto podría dañar el relé sin posibilidad de reparación, lo que haría que el propietario de la computadora saliera y comprara uno nuevo que tendría que soldarse físicamente en la placa base en reemplazo de el viejo.

Aprendí esto a través de la experiencia personal, sin embargo, nunca reemplacé el relé roto ya que tenía un sistema basado en disco y alternar el relé fue puramente divertido.

Si recuerdo, incluso hubo advertencias contra esto en el manual de referencia del programador que vino con el BBC Micro ...

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.