Cuando empecé a investigar este tema hacia fines de 2013, noté cierto escepticismo por parte de la comunidad científica, particularmente cuando personas de diferentes ámbitos empezaban a experimentar entre distintas disciplinas, lo cual puede revelar nuevos vectores de ataque.

A fines de 2015, cuando presenté mi tesis de maestría en seguridad de TI, que trató sobre malware que infecta genomas sintéticos, experimenté ese escepticismo de cerca. Durante el proceso de revisión, uno de los profesores, que era especialista en biología molecular, la caratuló como un "disparate erudito". En su opinión, era obvio que una secuencia de ADN podría ser modificada con fines maliciosos y que era deber del investigador verificar que lo que se secuenció coincida con la secuencia originalmente publicada.

no era algo que pudiéramos ver in-the-wild, pero eso no significaba que no pudiera pasar algún día

No estoy en desacuerdo con este punto de vista, pero más allá de los muchos escenarios que se abren en términos de seguridad, es difícil explicar cuán fácil sería que algunas de las verificaciones fallara, particularmente si el problema está en el software. El simple hecho de que esto podría ocurrir ameritaba seguir investigando, en mi opinión.

Sin embargo, su perspectiva no carecía de fundamento. Mis escenarios biológicos eran meramente teóricos, dado que no tenía los recursos para sintetizar/secuenciar un genoma modificado y demostrar un caso real. Sin esto, era difícil verificar la posibildad de que un genoma fuera comprometido con información maliciosa de manera que, al ser sintetizado, pudiera pasar al reino biológico llevando una secuencia arbitaria, y luego ser secuenciado para comprometer el sistema. Además, no era algo que pudiéramos ver "in-the-wild", pero técnicamente eso no significaba que no pudiera pasar algún día.

Y entonces llegó ese día.

El profesor Tadayoshi Kohno y su equipo de la Universidad de Washington lograron demostrarlo en su artículo publicado la semana pasada, titulado: "Computer Security, Privacy, and DNA Sequencing: Compromising Computers with Synthesized DNA, Privacy Leaks, and More".

Kohno y su equipo hicieron una investigación profunda y detallada del tema, en la que pusieron en práctica este escenario teórico por el que yo también me estaba preguntando: ADN modificado "maliciosamente" puede ser sintetizado y secuenciado, dando lugar a la ejecución de código arbitrario. En este caso, crearon una vulnerabilidad en una aplicación llamada fqzcomp para demostrar la ejecución del código.

debemos someter este tema a un mayor escrutinio para disparar una discusión interdisciplinaria

Sin embargo, hay muchas posibilidades diferentes. En mi trabajo, por ejemplo, había un script simple que parseaba el archivo FASTA, que contiene la información del genoma y está escrito usando las cuatro bases de nucleótidos (adenina, citosina, timina y guanina), para descifrar y ejecutar el "payload". No era una solución elegante, y era necesario que la víctima fuera vulnerable para ejecutar el script; por lo tanto, no estaba del todo satisfecho, pero cumplía su función.

Para codificar la string en la secuencia, el procedimiento era similar al proceso biológico, en el que estas cuatro bases (A, C, T y G) se agrupan en tríos, formando lo que se conoce como codones, los cuales representan aminoácidos y luego se traducen en proteínas.

Esto significa que puedes tomar los grupos de tres como base y luego codificar un símbolo para cada trío, formando un alfabeto "escondido". En este caso se usó ASCII y la codificación tomó la siguiente forma: ACA = “A”, ACC = “B”, ACG = “C,” y así sucesivamente; hay varias formas de codificar el mensaje, esta es solo un ejemplo. Como puedes ver, tenemos 4^3 combinaciones, por lo que podemos codificar bastante fácilmente el alfabeto completo en mayúsculas, minúsculas, números y símbolos, y tenemos de sobra tras cubrir las 64 posibilidades.

Este sistema ofrece una forma de "escribir" código arbitrario dentro de un genoma. Naturalmente, podrías escribir citas, como hizo J. Craig Venter cuando creó una célula controlada por un genoma sintetizado, o inyectar malware o código arbitrario.

¿Qué tipo de impacto podría causar esto?

Abajo transcribo una parte de mi tesis que analiza los escenarios potenciales que podrían discutirse.

El impacto de este tipo de ataque podría clasificarse como: digital, digital-biológico y biológico.

  1. Impacto digital: el hecho de que un payload malicioso puede ser inyectado en una secuencia de ADN no implica que esta metodología agrava la infección, sino que agravaría la complejidad de identificarla y consecuentemente detectarla usando metodologías de protección tradicional, como hashes para garantizar la integridad y soluciones para detectar archivos corruptos. Por esta razón, se ha demostrado cómo funcionaría este escenario para advertir sobre el uso de secuencias de genoma como vectores alternativos.
  2. Impacto digital-biológico: en el caso de que una secuencia de genoma sea modificada maliciosamente, y ese genoma sea sintetizado con éxito, el código malicioso podría permanecer en la célula sin impactar en ella. Debería aclararse que esto no fue verificado por el autor ya que excede a los objetivos de este trabajo. Si esto pasara, el organismo cargaría algún código malicioso, cuyo ADN luego podría ser secuenciado en un laboratorio para generar un archivo de secuencia que contendría, por ejemplo, una porción de código malicioso. Un atacante solo tendría que extraerlo y ejecutarlo para activar un ataque digital. [Este punto es similar al que demostró la Universidad de Washington].
  3. Impacto biológico: este sería el caso en el que una persona con intenciones maliciosas tuviera la habilidad de causar una mutación en una secuencia, la cual no tendría impacto malicioso en el sistema, pero podría poner en marcha un problema funcional en el nivel biológico, si fuera sintetizada sin los controles adecuados. [Este sería un caso hipotético cuya viabilidad es más difícil de verificar].

Como vimos con la publicación del profesor Kohno de la semana pasada, el escenario 2 ya ha sido abordado y se demostró su viabilidad en ciertas circunstancias. Sin didas, sigue estando lejos de ser una amenaza real, pero ya no es un mero problema teórico como imaginamos en el pasado.

En el futuro, ¿podría una bacteria infectada con malware replicarse a sí misma?

Infected genomes viewed via microscope

En el hipotético caso de que una pieza modificada de ADN haya sido sintetizada de manera exitosa, el código malicioso podría formar una parte de una célula sintética capaz de replicarse a sí misma de manera autónoma en el reino biológico. El malware podría incluso ser "propagado" biológicamente, dado que las bacterias inherentemente tienen todo el equipamiento necesario para la reproducción.

Además, el código malicioso no afectaría a la célula portadora que lo acomodaba, pero lo usaría para mantenerse "vivo" hasta que su genoma se secuenciara en un laboratorio y recuperara su forma digital, para luego activarse en un ordenador o dispositivo.

Sin embargo, identificar la ubicación correcta para este código es una cuestión compleja si la propagación biológica tiene éxito. Estas son algunas de las áreas donde se podría insertar una cadena maliciosa:

  1. Área irrelevante: el código malicioso entra en un área de poca importancia; es probable que no tenga impacto significativo.
  2. Área de un gen: si entra en una secuencia de gen y produce una mutación, surgen dos posibilidades. O bien la mutación es letal, en cuyo caso podría desaparecer de la naturaleza sin propagarse; o la mutación es beneficiosa o neutral, en cuyo caso la porción añadida podría continuar su propagación.
  3. Área de regulación: en este caso, podría alterar un gen, como en el segundo escenario, o podría no hacer nada, como en el primero.

De tal forma, en caso de que no produzca una mutación letal, el malware y la célula portadora sintética podrían formar una especie de "comensalismo cibernético", para hacer una comparación simple con el comensalismo, el tipo de simbiosis por el cual un participante obtiene un beneficio mientras el otro no es dañado ni beneficiado.

En la investigación de la Universidad de Washington, se hizo más énfasis en secuenciar una pieza de ADN sin ningún objetivo biológico, pero no está claro (para mí) si se descartó por cuestiones de viabilidad o complejidad. Yo creo que esto, a pesar de que suena a ciencia ficción, podría ser otro punto a considerar en el futuro.

Detectando strings maliciosas

Como la información se codifica en la secuencia, detectar las strings maliciosas podría ser un procedimiento complicado. Esto se debe a que, sin importar si una aplicación es capaz de identificarlas, determinar si pertenecen o no a la estructura de la secuencia no sería algo trivial, si el ADN en cuestión tiene un objetivo biológico (y no fue publicado) o es usado para almacenar información o con otros fines.

Conclusión

Es interesante ver que este tema finalmente está obteniendo más atención de los medios y, posiblemente, entre investigadores y especialistas gracias a la investigación hecha por Tadayoshi Kohno y su equipo. A pesar de la debatible elegancia de la implementación (crear una vulnerabilidad en una aplicación), podemos observar que uno de los puntos más importantes desde una perspectiva de seguridad es ganar terreno: debemos someter este tema a un mayor escrutinio para disparar una discusión interdisciplinaria, en la que se reúnan especialistas en TI y bioinformática, expertos en seguridad, fabricantes de equipamientos, gobiernos y especialistas en biología molecular y sintética.

En mi opinión, dada la rápida velocidad con que se están desarrollando dispositivos de secuenciación, y la dramática reducción de costos, alcanzar con éxito la seguridad en secuencias de ADN va a requerir mucho más trabajo que el que puede ser realizado por un grupo de investigación y unos pocos entusiastas. Desafortunadamente, hasta que haya casos reales o pérdidas económicas, es probable que en los medios no veamos nada más que artículos sensacionalistas pronosticando un "genomalipsis".

Es cierto que la viabilidad todavía es baja y no hay motivo para alarmarse, pero también deberíamos recordar que en seguridad informática, esperar que un ataque ocurra antes de encontrar una solución nunca fue una buena estrategia.

Aclaración: Todo lo presentado aquí no pretende ser exhaustivo y puede contener errores, teniendo en cuenta la naturaleza interdisciplinaria de la investigación y mi experiencia como técnico y no como biólogo. Por lo tanto, los comentarios, sugerencias y mejoras son bienvenidos para seguir profundizando y ampliando este fascinante tema.