¿Sería posible que los virus informáticos desarrollen nuevos "genes" para permitirles realizar su trabajo?


8

Como estudiante de biología de nivel A, he pensado mucho sobre los vínculos con la biología y la informática, y algo que a menudo me viene a la mente son los vínculos entre la inmunología y la seguridad / virus informáticos. Por ejemplo, yo (al leer cómo funcionan los programas antivirus) decidí que la forma en que el sistema inmunitario maneja los virus es muy similar a los programas antivirus (ambos contienen una base de datos de definiciones de virus (ya sea,βcélulas de memoria o firmas de virus) y ambas contienen un método de extrapolación). Para mí, la progresión natural era pensar en la evolución natural de los virus en comparación con los virus informáticos. Entonces a mi pregunta:

¿Sería posible que los virus informáticos evolucionen en nuevas cepas que posean nuevos "genes" que les permitan realizar su trabajo?

Parece que este tipo de pensamiento solo podría aplicarse realmente a los virus, es decir, su calculadora antigua nunca estará sujeta a una "selección natural". Pero por lo que yo sé virus no mutan a sí mismos, a fin de evitar los programas anti-virus, pero se supone que éstos son más bien controlados, por lo que el virus podría no aumentar de mutaciones no beneficiosos que de otro modo podría hacerla inútil. Si la verdadera naturaleza aleatoria de la naturaleza pudiera aplicarse a los virus, ¿alguna vez podrían desarrollar una nueva funcionalidad, como por ejemplo convertirse en un retrovirus que se haga cargo de un programa antivirus o mutar para incluir un nuevo código que le permita derribar un cortafuegos? ¿Estarían involucrados en algún tipo de selección computacional natural, donde los virus más fuertes sobreviven y transmiten sus genes beneficiosos?


¡Una pregunta realmente genial! Sin embargo, creo que la metáfora del "virus" para el malware es bastante insuficiente. Comprendí que el principal (¿solo?) Piensa que los virus informáticos y los virus reales tienen en común su capacidad de propagarse.
jmite

1
@jmite bueno, al menos para mí, las similitudes radican en el hecho de que sí, se replican, también toman el control del sistema que están atacando en algunos / la mayoría de los casos, en su mayoría causan daño a la víctima (excepto algunos benévolos virus informáticos). Ambos también tienen métodos similares para eliminar (es decir, el sistema inmunitario y los programas antivirus) y también la segunda vez que una computadora se encuentra con el mismo virus, lo elimina más rápido (ya que ahora hay disponible una definición de virus) similar al sistema inmunitario. Esta similitud es probablemente la razón por la cual fueron nombrados virus en primer lugar: D
J_mie6

2
El problema es que varios de ellos son falsos. La segunda vez que una computadora se encuentra con un virus, no lo elimina más rápido. Las computadoras no pueden encontrar definiciones de virus por sí mismas. Vienen de compañías de seguridad, y probablemente provengan de una combinación de minería de datos y artesanía humana. Un virus no es una fuerza externa, como lo es en un cuerpo. La computadora no ve una diferencia entre el virus y cualquier otro programa. Es solo un fragmento de código. Por eso lo ejecuta. La única diferencia es que el efecto de ese programa es algo que nosotros, como usuarios, no queremos.
jmite

Respuestas:


7

Supongo que sería posible en teoría, pero el malware informático (virus, gusanos, etc.) generalmente no funciona de esta manera hoy en día, y hay buenas razones por las cuales están escritos de la manera en que están.

Es posible que le interese el código polimórfico , que cambia para evadir la detección. Cambia la secuencia de instrucciones a alguna otra secuencia de instrucciones que tendrá el mismo efecto, pero tendrá un binario diferente. Esto ayuda a evadir la detección mediante herramientas antivirus que buscan una "firma" específica de bytes. Sin embargo, esta no es la forma de mutación por la que está preguntando, porque nunca hará que el malware "desarrolle" un comportamiento nuevo que ya no tenía.

Realmente, no hay muchas razones por las cuales los autores de malware querrían o necesitarían su malware para desarrollar una nueva funcionalidad. Pueden construir el comportamiento deseado en el malware. O bien, pueden hacer que el malware se ponga en contacto con un servidor central de "comando y control" para descargar nuevos códigos ("actualizaciones de software" para el malware) periódicamente, para permitirles controlar el comportamiento del malware. Por lo general, los tipos malos determinan sin conexión qué ataques quieren montar y luego implementan esto en el malware o le ordenan al malware que realice esos ataques.

Al resolver los ataques fuera de línea, de antemano, los atacantes pueden probar esos ataques en sus propios sistemas y asegurarse de que funcionen correctamente y no sean detectados. Desde la perspectiva del atacante, esto es mucho mejor que escribir malware que intente cosas al azar con la esperanza de que evolucione a un ataque útil; El malware que intenta cosas aleatorias será mucho más probable que active alarmas y sea detectado.

Por lo tanto, en realidad no hay ninguna necesidad o motivación para usar la "selección natural" en el malware, y normalmente no se ve en la práctica.


Sí, el código polimórfico era lo que buscaba como etiqueta, ¡pero no existía! Su respuesta plantea algunos puntos agradables, y yo haría +1 si pudiera (considérelo cuando tenga el representante aquí), no sabía que los virus pueden descargar actualizaciones, ¿cómo lo logran? ¿Es a través de las conexiones de las máquinas infectadas?
J_mie6

@ J_mie6, hacen una conexión de red a un servidor central (controlado por el atacante) y le preguntan: "¿tiene algún software nuevo para mí?" y si la respuesta es sí, lo descargan y ejecutan lo que acaban de descargar. Alternativamente, podrían preguntarle al servidor central: "¿tiene algún comando para mí?" y si el servidor central dice que sí, hacen lo que el servidor central les ordena que hagan. Lea un poco en botnets y servidores C&C para obtener más información sobre este tema. [Si mi respuesta es la más útil después de un día o dos, puede marcar la marca de verificación para aceptarla.]
DW

Hay muchas razones por las que el malware se beneficiaría de las estrategias de adaptación (generales). por ejemplo, algunos algoritmos de ataque pueden optimizarse en base a estrategias adaptativas. De hecho, el malware ha "evolucionado" durante muchos años, pero no de forma autónoma, sino a través de mejoras del autor.
vzn

5

TL; DR: las computadoras no son entidades autónomas como los organismos, con ningún instinto de supervivencia. Simplemente ejecutan instrucciones y, a veces, ejecutan instrucciones que no nos gustan, por lo que ejecutamos otras instrucciones para encontrar las malas.


Empecé a decir esto en los comentarios, pero creo que hay mucho más que decir.

La metáfora del virus está desactualizada y es muy utilizada por personas que no entienden cómo funcionan realmente las computadoras. Tratan de compararlos con los seres vivos, porque entienden a los seres vivos. Aquí hay una mejor metáfora.

Eres un empleado de oficina. Trabajas para una mega corporación gigante, donde no ves a tu jefe. Nunca se te dice por qué haces tu trabajo, ni siquiera sabes lo que hace tu empresa. Todo lo que sabes es que te presentas a trabajar todos los días y sigues tus instrucciones.

Hay una pequeña ventana junto a su escritorio, que es la única forma en que interactúa con alguien más. No ves a nadie, pero a veces salen trozos de papel por la ventana.

Sus instrucciones son siempre las mismas al principio, pero tiene una gran pila de papeles en su escritorio. Algunos de estos contienen instrucciones, algunos contienen cosas que has escrito. A veces, sus instrucciones le dirán que busque un papel diferente y comience a usarlo como sus instrucciones. A veces te dicen que cambies los trozos de papel, los rompas o borres partes de ellos. (Esto es lo que es ejecutar un programa. A veces los programas editan archivos, a veces ejecutan otros programas, etc.)

A veces, sus instrucciones le dicen que espere junto a la ventana para que llegue más papel. El papel puede tener una imagen, puede tener texto o puede tener más instrucciones. (Esto es lo que sucede cuando una computadora espera la entrada del mouse o del teclado, o algo de una red (es decir, archivos)).

No haces nada más que seguir estas instrucciones. Nunca sabes por qué, nunca sabes para quién, pero simplemente lo haces.

A veces, sus instrucciones le dicen que realice múltiples tareas. Tienes un montón de papeles. Establece un temporizador y trabaja en las instrucciones del documento superior durante 5 minutos. Cuando pasa el tiempo, pones ese papel en la parte inferior de la pila y haces lo que sea que esté en el nuevo papel superior. (Así es como las computadoras ejecutan más de un programa a la vez).

Ahora, un día estás esperando un pedazo de papel junto a la ventana, y sabes que cuando lo recibas, harás lo que sea que diga, porque eso es lo que el último pedazo de instrucciones te dijo que hicieras. Lo obtienes, y dice que encuentres algunos de tus papeles principales, con tus instrucciones principales, y los borres. Te dice nuevas instrucciones para poner allí. Estas están haciendo algunas cosas extrañas, como enviar sus archivos por la ventana a lugares extraños o recopilar copias de seguridad de todas las cosas que entran por la ventana. Pero lo importante es que no piensas nada de eso. Son solo más instrucciones. Solo los haces.

Esto es lo que es un virus. Es solo un conjunto de instrucciones que engañas a la computadora para que se ejecute.

Ahora, digamos que eres un trabajador multitarea. Obtiene una de estas instrucciones de borrado en la ventana. Pero estás ocupado, así que lo pones en el fondo de la pila. Miras la parte superior de tu montón de cosas para hacer, y hay un conjunto de instrucciones marcadas como "antivirus". Dice leer todos sus documentos y ver si alguno de ellos se parece a su papel de muestra. Lo haces, y ves que las instrucciones de borrado están en tu lista.

Tenga en cuenta que si comienza a ejecutar las instrucciones de virus, no piensa en nada. Sin un antivirus, no hay ataque, no hay respuesta inmune. No te está atacando, es solo un conjunto de instrucciones. El antivirus es solo una lista TODO que implica mirar sus otras instrucciones y encontrar las que coincidan con un patrón. No está tratando de preservar el sistema en su conjunto, es solo una hoja de papel que alguien le dio desde la ventana, porque evita que otras personas lo engañen para que haga cosas al poner cosas por la ventana.

Ahora, ¿qué pasa con sus virus "en evolución"? Esto es ciertamente posible, pero veamos qué implica esto. Un virus en evolución es básicamente una hoja de instrucciones que le dice cómo hacer más instrucciones. Es un trozo de papel que le indica que borre un montón de sus antiguas instrucciones y luego coloque otras nuevas en su lugar, pero esas nuevas instrucciones también le dicen que borre las viejas instrucciones y que ponga nuevas, y así sucesivamente. Entonces las instrucciones originales no están cambiando. El virus no está mutando. En cambio, solo está haciendo lo que sea que hace, mientras que también deja instrucciones para crear su próxima generación.

Entonces, ¿es posible hacer esto? Si. Pero es extremadamente complicado. Tener un programa que se cambie a sí mismo, pero que esa secuencia de cambio no converja finalmente en un programa que no hace nada útil, es increíblemente complejo.


Bueno, realmente, aunque estoy de acuerdo con lo que dices, cuando dices que para una computadora un virus son solo instrucciones regulares, lo mismo se aplica al cuerpo, a una célula normal, el virus es solo un conjunto de instrucciones adicionales, y lo único que hacen las células es producir proteínas, en este caso las proteínas de los virus, es el trabajo de los glóbulos blancos detectar los virus, ya que es el trabajo de los virus solicitar la detección de los virus. Así es como los virus se replican, ¡dependen del hecho de que el cuerpo simplemente siga las instrucciones!
J_mie6

Y estoy de acuerdo con lo que está diciendo sobre hacer que los virus tengan mutaciones significativas, pero si piensa en virus reales, son solo un conjunto de instrucciones, como un programa. Cuando mutan, son perjudiciales o beneficiosos, pero al final el virus evoluciona hacia algo nuevo. Eso es lo que estoy pensando, no importa si la mutación es buena o mala, solo sucede de vez en cuando. Y también, me gusta tu analogía :)
J_mie6

Supongo, pero el problema es que el cuerpo tiene sus propias funciones. La analogía solo se mantendría si el cuerpo fuera algo que no hiciera nada más que procesar fragmentos de ADN del mundo exterior todo el día, y un virus se aprovechara de eso. La idea es que no existe la misma idea de un cuerpo "extraño", que para una computadora un programa es solo un programa.
jmite

3

La pregunta general es sobre la evolución del malware. La pregunta específica es acerca de los genes. de hecho, existe un mecanismo de algoritmo genético que utiliza "genes" digitales para la optimización y ciertamente podría ser utilizado en virus / malware, aunque hasta ahora no parece haber informes de esto "en la naturaleza". Por otro lado, el malware ha evolucionado durante muchos años de una curiosidad más teórica a una que involucra el cibercrimen organizado, etcétera, con una creciente sofisticación en las amenazas. Hasta ahora, esto es impulsado en gran medida (¡pero no del todo!) por la "evolución" impulsada por el desarrollo humano. En cierto sentido, se puede decir que los virus informáticos generalmente están desarrollando una mayor "inteligencia" o "sofisticación de ataque" con el tiempo.

Aquí hay algunas referencias que estudian la "evolución de / en malware".


Stuxnet se volvió pícaro e infectó la EEI.
noɥʇʎԀʎzɐɹƆ

1

Lo principal es ponerlo en funcionamiento. Las versiones ingenuas, es decir, tomar una pieza de malware existente con cierto éxito y hacer que cada intento de reproducción tenga mutaciones, probablemente sean letales para el malware en la mayoría de los casos.

Sin embargo, esto no significa que no pueda evolucionar, solo que su propósito original, la replicación, podría verse obstaculizado. Con una tasa de mutación suficientemente baja y suficiente paciencia, finalmente se seleccionarían mutaciones benéficas y benéficas.

Sin embargo, un problema es que evolucionarían. Específicamente, evolucionarían sobre principios darwinianos puros. Si escribo un fragmento de código que se ejecuta, y luego, solo en una ejecución exitosa, copia su archivo binario 1000 veces en 1000 ubicaciones con un error aleatorio o varios en cada uno y los ejecuta a todos, podría parecer que he hecho que la replicación esté supeditada a completar cualquier tarea que se realice con éxito, pero en realidad, la replicación solo depende del programa PENSANDO que ha completado esa tarea con éxito.

Por lo tanto, existe una buena posibilidad de que si se tratara de una pieza de malware, sus dos objetivos básicos, específicamente, replicar y arruinar las computadoras de las personas, estarían en desacuerdo entre sí. Durante un período de tiempo suficientemente largo, probablemente surgiría una mutación que haría que no arruinara tanto sus computadoras, lo que haría que fuera menos importante para el antivirus tratar, por lo tanto, replicar con síntomas mínimos, como es la estrategia temprana más efectiva en pandemia o plaga inc, o hacer que se mienta a sí mismo que incluso logró arruinar sus computadoras, convirtiendo la función primaria en un intrón con bastante rapidez cuando no se ejecuta pero la función de replicación continúa funcionando.

Muchas personas se maravillan de la efectividad del sistema inmune para derrotar todo tipo de amenazas, pero en muchos sentidos, las computadoras son mucho más seguras que las células. Su computadora realmente no puede descargar un virus en primer lugar. Un sistema antivirus perfecto con un usuario perfecto no necesita escanear el disco duro nunca. El código de la computadora no se puede insertar físicamente en el disco duro.

Contraste las células, donde los virus han desarrollado algunos mecanismos FÍSICOS bastante únicos de deslizarse más allá de las defensas de las células. Por ejemplo, algunos virus son totalmente inertes hasta que encuentran una célula, pero luego su estructura física se agarra y perfora violentamente la membrana celular para inyectar su material genético. Esto es como un virus informático que físicamente abre su máquina y agrega nuevo hardware mientras su sistema operativo y antivirus piensan "esto está bien" y ejecutan el código que se encuentra en ese hardware.

Por lo tanto, es bastante probable que cuanto más benigno sea el código, mejor reproducción puede hacer. En algunos casos, puede ser más fácil para la evolución convencer al usuario de que lo ayude que desarrollar un nuevo antivirus. IE se agrega a los archivos que probablemente se compartirán con otros usuarios.

Entonces, en última instancia, me parece más probable que la posibilidad de replicación sea mayor cuando es inútil como una pieza de malware como tal, y probablemente aún mayor si puede convencer al usuario o al código antivirus de que, de hecho, es algo benigno , importante o beneficioso.

Otra cosa es que la mayoría de las máquinas tienen operaciones no válidas, por lo que es probable que las ediciones aleatorias del código no solo eviten la funcionalidad, sino que también hagan que el código se bloquee, incluso con memoria desprotegida.


0

Imagine programas informáticos no maliciosos como los microbios en su intestino. Imagine un virus informático como una bacteria infecciosa.

La computadora no puede distinguir la diferencia entre las bacterias buenas y las malas, a diferencia del sistema inmune.

Sería simple hacer un programa auto modificable, pero el 99% de las mutaciones darían lugar a un error. Un programa es como una lista de instrucciones, y las computadoras son muy estrictas acerca de cómo se escriben esas instrucciones. Digamos que tenemos este programa:

  1. Agregue una cucharada de mantequilla de maní.
  2. Agregue una cucharada de gelatina.
  3. Pon el pan encima.

Una mutación puede resultar en este programa:

  1. Agregue una cucharada de mantequilla de peahut.
  2. Agregue una cucharada de gelatina.
  3. Pon el pan encima.

Aunque está claro para el ser humano que significa "maní", eso no está claro para la computadora. Podría escribir un script simple que se mute a sí mismo en Python, pero la mayoría de las veces las mutaciones harán que falle.

Estaría muy interesado en un virus que mutara y pudiera permanecer vivo, incluso podríamos clasificarlo como vida.


Sí, llego tarde a la fiesta, pero este es un tema interesante sobre el que vale la pena escribir.


La mayoría de las mutaciones biológicas también son perjudiciales.
adrianN

@adrianN Sí, y el proceso biológico es mucho más preciso y hay miles de millones de copias del virus en cada cuerpo infectado, todos compitiendo en la carrera evolutiva. Para las computadoras, solo existe un virus por computadora.
noɥʇʎԀʎzɐɹƆ
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.