Hace apenas unos días hablamos de cómo iniciar una carrera en el campo de la seguridad informática y dos investigadores de ESET con décadas de experiencia a sus espaldas compartieron sus opiniones y recomendaciones sobre el tema. Dado que hoy es el Antimalware Day, una fecha que busca reconocer el trabajo de los profesionales de la seguridad y su importancia, nos pareció oportuno conversar con tres investigadores de ESET para conocer más sobre el trabajo diario de los investigadores, saber cómo piensan, y que compartan sus opiniones y experiencias.
¿Eres bueno para resolver acertijos? ¿Tienes una mente curiosa que busca constantemente nutrirse de nuevos conocimientos? ¿Estás pensando en emprender una carrera como malware researcher pero no estás seguro de estar hecho para ello? ¿O simplemente aprecias el buen trabajo de los investigadores de malware y te preguntas por qué han elegido esta carrera?
Sea cual sea la razón (¿quizás un poco de todo?), para saber un poco más acerca de cómo es el trabajo de un experto en la investigación y análisis de malware le preguntamos a los investigadores de ESET Lukas Stefanko, Fernando Tavella y Matías Porolli.
¿Cómo comenzaste en esto del análisis y la investigación de malware?
Lukas: Todo empezó cuando comencé a familiarizarme con la ingeniería inversa de software y traté de entender cómo funciona y se comporta un software sin tener acceso a su código fuente. A partir de ahí, la curiosidad me fue llevando a adquirir un mejor entendimiento de cómo funciona un software malicioso, cuál es su propósito, cómo se comunica, etc. Fue una nueva experiencia que disfruté enormemente, ¡y todavía lo hago!
Fernando: Antes que nada, siempre me gustó la parte de la investigación, ya sea enfocada en seguridad o para otras actividades. Por otro lado, cuando comencé mi carrera en seguridad me di cuenta que realizar ingeniería inversa era lo que más me llamaba la atención, por su complejidad y por su atractivo en general. De ahí fue que empecé a realizar CTF y a explorar diferentes tópicos, hasta que me topé con un malware y me di cuenta lo atractivo que es tratar de entender su funcionalidad desde un lenguaje de bajo nivel, así como las técnicas de ofuscación o evasión que utilizan y cómo uno puede defenderse de ciertas amenazas..
Matías: En 2011 fui el ganador del Premio Universitario de ESET, que en ese entonces consistía en realizar un artículo de investigación acerca de temáticas relacionadas con la seguridad informática. Antes de realizar ese trabajo no había tenido contacto con el análisis de malware, pero luego de esa experiencia seguí profundizando mis conocimientos por mi propia cuenta y en 2013 comencé a trabajar en ESET, teniendo que lidiar de cerca con el malware.
Lectura relacionada: Profesionales en seguridad informática: entre la formación académica y la autodidacta
¿Existe algo así como un día de trabajo típico?
Lukas: La mayoría de los días empiezan igual: reviso las últimas noticias sobre ciberseguridad, mi bandeja de entrada y Twitter. Pero algunos días dan un giro dramático; por ejemplo, como cuando descubrimos muestras de malware nuevas o interesantes o cuando a partir de sus rastros creemos que podemos llegar a identificar nuevas campañas llevadas adelante por cibercriminales o grupos de APT. Esta es una de las razones por las que es importante tener buenas fuentes de información, ya que nos permiten ahorrar tiempo de análisis dado que algunos de los trucos podrían haber sido revelados anteriormente.
Fernando: No creo que exista un “día típico” en mi trabajo, ya que muchas cosas surgen en el día a día y pueden ser diferentes entre sí. No puede planearse todo. Quizás si estoy trabajando en una investigación que demanda tiempo, por ejemplo, sobre una campaña maliciosa en Latinoamérica, un día típico sería estar analizando esa amenaza, sumado a unos 30 min que me tomo en la mañana para mantenerme informado. Sino cada día tiene algo nuevo.
Matías: Si bien existen días atípicos en los cuales se puede comenzar una investigación a partir de un ataque que ocurre en el momento, mi rutina se divide en dos actividades principales. Por un lado, realizar el ‘hunting’ de nuevas amenazas en mis feeds de información, hacer seguimiento de grupos de atacantes y demás. Por otro lado, analizar los archivos maliciosos que surgen de ese hunting o del trabajo colaborativo con mis colegas; en particular el de ingeniería reversa y documentación de esas amenazas.
¿Cuál es la parte qué más disfrutas de tu trabajo?
Lukas: En realidad son todas esas pequeñas partes que conforman el proceso de análisis de malware, el cual comienza cuando algo me genera curiosidad. Cada paso que se da a lo largo del camino ayuda a descifrar un problema y crear una imagen más clara del mismo. Esto significa llevar adelante un análisis estático y dinámico del malware para Android, lo cual implica ejecutarlo en un dispositivo real y observar su comportamiento desde la perspectiva de la víctima para entender su propósito. Este análisis revela, por ejemplo, con quién se comunica el malware y qué tipo de datos extrae del dispositivo. Si se observan las solicitudes de permisos es posible hacer una estimación sobre las capacidades del malware. Sin embargo, el análisis dinámico suele no ser suficiente. Para tener una mejor idea de cómo funciona un malware y cuál es su funcionalidad, es importante utilizar un descompilador y ensuciarse las manos analizando el código de forma manual.
A partir de ahí, a menudo empiezo a investigar y, finalmente, a desvelar campañas de malware activas, algo que a los malos no les gusta mucho. Parece que algunos siguen mi trabajo bastante de cerca. En varias ocasiones, su código contenía notas dirigidas a mí. No siempre son agradables. Por ejemplo, nombran sus clases o paquetes con mi nombre, firman el malware "a mi nombre" o incluso registran dominios maliciosos que contienen mi nombre y que después son utilizados para la comunicación con el malware. Sin embargo, no me lo tomo como algo personal.
Fernando: Creo que lo más emocionante de mi trabajo es la parte del análisis estático de una amenaza, aplicar ingeniería inversa, poder ir viendo todo el código a bajo nivel y a partir de ahí determinar el comportamiento que tiene la amenaza o sus funcionalidades más interesantes para luego poder documentarlas.
Matías: Lo que más me gusta es que rara vez aplico los mismos métodos para distintas investigaciones. Existen distintas plataformas y distintas tecnologías utilizadas por los atacantes, y en muchos casos hay que afrontar problemas específicos que requieren soluciones creativas. Por ejemplo, cómo automatizar la extracción de la configuración del malware para miles de archivos maliciosos, o como implementar la desofuscación de archivos que han sido alterados para dificultar el análisis.
¿Cuál es la investigación o proyecto que te hace sentir más orgulloso?
Lukas: Probablemente diría que es una de mis últimas investigaciones sobre el análisis de vulnerabilidades en aplicaciones de stalkerware para Android. Pasé meses trabajando en esta investigación, estudiando detenidamente más de 80 aplicaciones de stalkerware y descubriendo finalmente más de 150 problemas de seguridad y privacidad graves en ellas.
Fernando: Hasta ahora el trabajo del que estoy más orgulloso fue la investigación que realicé en conjunto con Matías sobre la campaña de espionaje en Venezuela usando el malware Bandook, porque pude realizar un análisis técnico completo de la amenaza que afectaba ese país y porque además fue una de mis primeras investigaciones.
Matías: En todas las investigaciones hay mucho trabajo de ‘backstage’ que no termina siendo publicado, pero del cual estoy muy orgulloso, sobre todo relacionado a lo que mencioné antes de la resolución de problemas específicos. Si tengo que mencionar una investigación por encima de las otras, diría Evilnum. Antes de la investigación había poco documentado acerca del malware y ninguna mención a este grupo de atacantes. ESET logró poner en contexto el arsenal de software malicioso utilizado por este grupo y darle un sentido y unidad.
¿Trabajas junto a otros equipos dentro del campo de la seguridad?
Lukas: Sí. Además de la investigación en profundidad, nuestro principal objetivo es proteger a los usuarios de nuestros productos y detectar amenazas en actividad. Esto significa no sólo compartirlas con nuestros equipos internos, sino también con otras empresas de ciberseguridad y así ayudar a mejorar la prevención sobre amenazas recientes.
Fernando: He trabajo en conjunto con gente de servicios sobre repuestas ante incidentes, principalmente ayudándolos a comprender el comportamiento de alguna amenaza que hayan visto durante un incidente.
Matías: Constantemente trabajamos en conjunto con otros profesionales. Un caso que vale la pena mencionar fue cuando trabajé con la Unidad de Crímenes Informáticos de los Países Bajos para desmantelar servidores usados por Evilnum y realizar el análisis forense en ellos.
¿Cuáles son las habilidades técnicas esenciales para realizar tu trabajo?
Lukas: En lo que respecta al análisis de malware para Android, yo diría que es necesario tener conocimientos del sistema operativo, incluido el ciclo de vida de las aplicaciones, y tener la capacidad de leer el código fuente descompilado de Java y Kotlin. También vale la pena mantenerse al día sobre los últimos descubrimientos, las herramientas publicadas recientemente e incluso sobre las actualizaciones que se lanzan para el sistema operativo y las aplicaciones. Por ejemplo, estas actualizaciones pueden incluir nuevas funcionalidades que pueden resultar convenientes para los usuarios, pero también pueden ser aprovechadas por cibercriminales. Afortunadamente, la mayoría de las actualizaciones dificultan el trabajo de los creadores de malware, en lugar de ayudarlos.
Fernando: Creo que tener conocimientos de programación es muy importante, no necesariamente programar, pero sí poder leer el código y comprenderlo. Por otro lado, tener conocimiento sobre sistemas operativos, criptografía, arquitectura de computadores o redes (ya sea protocolos de red o análisis de tráfico). Cuanto más dominio de estos temas tenga la persona, mayor será la preparación para analizar un malware y no frustrarse o rendirse en el intento.
Matías: En cuanto a las habilidades técnicas, es necesario tener conocimiento de muchos campos distintos de la informatica, como redes, sistemas operativos y programación. Lo que sí es fundamental y se debe conocer a fondo para el análisis de malware es cómo realizar ingenieria reversa, concentrándose principalmente en las plataformas de Windows.
¿Hay alguna habilidad no técnica relacionada con tu trabajo qué suponga un desafío o que consideres debes seguir mejorando?
Lukas: Sí, las hay. Cada año intento mejorar mis habilidades para escribir artículos, hablar en público, realizar una presentación, hablar con los medios de comunicación, conceder entrevistas y cosas por el estilo. La mayoría de ellas no son fáciles de adquirir para una persona técnica e introvertida como yo y requieren que salga de mi zona de confort, lo cual es más fácil de decir que de hacer.
Fernando: He tenido que mejorar mis habilidades de escritura en mis reportes y publicaciones. Si bien hay un equipo que se encarga de revisar este trabajo, es importante para el investigador encontrar las palabras justas para poder expresarse de la mejor forma posible, ya que el artículo o documento final refleja todo el trabajo que puede haber detrás de la investigación. Por ende, ser capaz de comunicarse de una forma adecuada al momento de escribir una publicación, reporte o cualquier otra cosa es tan importante como el trabajo previo.
Matías: Es importante saber comunicar los resultados: quién es el público para el cual producimos nuestros reportes y adaptar la comunicacion de acuerdo a eso. También es importante saber contar una historia y no solamente poner descripciones técnicas una tras otra.
¿Qué habilidades blandas crees que un malware researcher debería tener?
Lukas: Creo que el entusiasmo por resolver problemas y la voluntad de aprender cosas nuevas son los puntos más importantes. Todo lo demás se puede aprender durante el camino.
Fernando: Creo que hay dos características muy importantes que un malware researcher debe tener: capacidad para aprender de forma autodidacta y curiosidad.
Matías: Paciencia, curiosidad, atención a los detalles y afinidad por la resolución de problemas.
¿Cómo te mantienes actualizado?
Lukas: Tengo que decir que mantenerme al día con lo que sucede demanda mucho tiempo diario. Sin embargo, he aprendido a mantenerme actualizado utilizando feeds RSS dedicados y de confianza, alertas de Google, canales de redes sociales confiables, blogs y tweets de investigadores colegas y de otras empresas de ciberseguridad, así como investigaciones académicas. Una vez que pasado por estas fuentes y leído las noticias más importantes, intento compartirlas con otros entusiastas de la seguridad en dispositivos móviles a través de mi canal de Telegram y así quizás ahorrarles algo de tiempo mientras también buscan noticias sobre seguridad móvil.
Fernando: Por lo general voy a Twitter para conocer el trabajo de otros investigadores y sus publicaciones. De esta forma me mantengo informado acerca de nuevas campañas o técnicas que pueden ser utilizadas por los cibercriminales. También puede suceder que después de una investigación hubo un tópico en particular que me llamó la atención y lo anoto para seguir profundizando en mi propio tiempo libre; por ejemplo: un cifrado en particular, alguna técnica de ofuscación, etc.
Matías: Hay que leer las noticias y estar al tanto de todo lo que pasa. Sugiero utilizar redes sociales para seguir a las empresas de seguridad y enterarnos de las nuevas investigaciones, o incluso para seguir a los referentes técnicos e investigadores. Tambien leer blogs de seguridad informática: WeLiveSecurity es un buen punto de partida ;)
¿Qué mensaje le darías a aquellas personas interesadas en comenzar una carrera como malware researcher?
Lukas: Anímate. La pasión y el entusiasmo son cruciales y facilitan que cualquier investigador de malware en desarrollo absorba información y conocimientos. Además, si encuentras algo difícil de entender, no te preocupes: tus futuros colegas estarán encantados de explicártelo.
Fernando: Mi consejo es ir de a poco. Participar de CTF para cubrir distintos tópicos que tienen una fuerte relación con el análisis de malware, como ingeniería inversa, criptografía y análisis de trafico de red, entre otros. Quizás no ir directo sobre un malware puntual porque puede resultar complejo al principio. Por otro lado, leer lo que ya hicieron otros para aprender sobre amenazas que fueron detectadas en el pasado y comprender cómo funcionan. Si leen y buscan lo suficiente, observarán que algunos códigos maliciosos tienen ciertas características en común, por ejemplo, la forma de manipular los registros para ganar persistencia en la máquina de una víctima. Aparte, leer un artículo de otro investigador permite observar qué fue lo que consideró importante de esa amenaza puntual, lo cual puede servir como pista al momento de analizar un malware por primera vez.
Matías: Mantén la calma e identifica las constantes criptográficas
Esperamos que esta entrevista haya sido útil para aquellos que están pensando en dedicarse al mundo de la seguridad. Como última reflexón, un tercio de nuestras vidas lo invertimos en el trabajo. Por lo tanto, si aún no te has decidido, por qué no elegir una carrera en un campo en el que puedes generar un impacto y contriuir para que la tecnología sea más segura para todos.
¡Feliz Antimalware Day!
Lecturas adicionales:
Certificaciones en seguridad informática más populares
Falta de profesionales en ciberseguridad: una brecha que crece
Perfiles profesionales en la seguridad informática: ¿qué camino elegir?