Hay un equipo de hackers en las oficinas de Microsoft que se dedica solo a una cosa: encontrar la forma de vulnerar y atacar Windows y el resto de productos de la compañía, y gracias a ello mejorar su seguridad. Se llama el equipo rojo y, he conversado con uno de sus miembros para saber cómo operan.
Los equipos rojos no son ninguna novedad en compañías de software y tecnología, pero sí deberían ser la norma. Muchas empresas tecnológicas dedican sus esfuerzos en materia de seguridad a resolver los problemas después de que surjan. Quienes tienen equipos rojos intentan descubrirlos antes que otros, adelantarse a ellos. Es seguridad preventiva y no solamente correctiva.
Recientemente tuve la oportunidad de visitar el campus de Microsoft en Redmond, Estados Unidos, y conocer cómo trabajan varios de sus equipos, en especial en materia de seguridad. En la visita pude conocer a miembros de los equipos rojo y azul, investigadores de seguridad que trabajan en conjunto como en una especie de juegos de guerra. El primero intenta romper los productos de la compañía, el segundo intenta adelantarse y solucionar los exploits o vulnerabilidades que encuentren antes de que lo hagan los del equipo rojo.
Sin embargo, quien robó mi atención fue el equipo rojo. Aunque ya sabía de su existencia en este tipo de empresas, conocer desde dentro cómo funciona un equipo que parece salido de la serie Mister Robot y que se dedica a atacar a su propia empresa era algo que prometía ser interesante. Efectivamente, lo es.
El equipo rojo de Microsoft se dedica a tres cosas o fases principalmente, y lo que haga en el día dependerá de en qué fase del proyecto se encuentran. Jordan Rabet, ingeniero senior de seguridad para Microsoft, y parte clave del equipo rojo de la empresa lo explica así:
El primer aspecto o fase es la que puede sonar más ‘sexy’ o interesante, ya que tiene que ver con encontrar las vulnerabilidades. Cada vez que le explico a alguien lo que hago les parece genial por el hecho de ser hackers, pero en realidad esta primera fase puede ser muy aburrida. Normalmente se basa en leer código durante días, o incluso semanas, intentando entender qué hace, ya sea teniendo el código fuente a la mano o haciendo ingeniería inversa si no lo tenemos.
De hacker de consolas de videojuegos a uno de los responsables de seguridad en Microsoft
Jordan es la persona que se robó mi atención por completo en las oficinas de Microsoft. Su trabajo y su pasado como hacker de consolas de videojuego me hicieron entender que Microsoft buscó hackers conocidos, famosos en la comunidad por haber logrado jailbreaks o exploits, para que hicieran lo mismo con sus productos. “Este tipo de hackers tienen la experiencia y conocimiento necesarios para hackear productos como los que hace Microsoft”, me comentó. Antes de entrar a Microsoft, Jordan fue el responsable del jailbreak de la consola Nintendo 3DS, y de su homebrew. Es lo que llamó la atención de Microsoft y lo que les decidió a contratarlo tras ver una publicación en Reddit y un vídeo en YouTube.
Volviendo al día a día del equipo rojo, la segunda fase de su trabajo es la que el grupo disfruta más, según explica el hacker: “lo más importante de la primera fase es entender cómo funciona el código, qué hace y cómo cree que funciona la persona que lo creó, además de descubrir si cometieron errores y dónde. La segunda fase se basa en encontrar la forma de romperlo, desarrollar un exploit o, en general, encontrar una forma de hacer que el código haga lo que queremos que haga”.
No es un trabajo fácil. Durante el proceso, como cualquier hacker, deben superar una serie de restricciones y protecciones que haya implementado Microsoft en el producto, y a la vez hacerlo sin ser detectados. “Es como un puzzle, un rompecabezas”, asegura el miembro del equipo rojo. Los hackers de este tipo son muy necesarios. Las personas que desarrollan jailbreaks son muy hábiles para hackear cualquier otra cosa, en el caso de las consolas, Rabet asegura que están a la par en seguridad en muchos aspectos con un iPhone, un dispositivo que tiene tu correo electrónico, datos bancarios y más. “Las consolas lo que quieren es proteger propiedades intelectuales y por eso su seguridad es tan buena”, añade, “y es por esto que muchos de los miembros del equipo [rojo] fueron contratados del mismo modo que yo”. Son hackers.
En primera línea durante las crisis de Spectre y Meltdown
El equipo rojo de Microsoft tiene apenas 4 años funcionando, pero ha sido una pieza clave a la hora de mejorar la seguridad de los productos de la compañía. Y es que además de trabajar buscando sus propias vulnerabilidades, también resultan muy útiles en escenarios críticos de la vida real, como las recientes crisis de Spectre y Meltdown. Una vez se descubrieron esas vulnerabilidades, el equipo de respuesta de Microsoft en materia de seguridad (Microsoft Security Response Center, o MSRC) contactó al equipo rojo con una pregunta clave: “¿pueden convertir o usar esto como un arma, crear exploits?”
El trabajo del equipo rojo en ese caso se basó en encontrar la forma de aprovechar Spectre y Meltdown para hacer daño, para atacar Windows, Azure y los productos de la compañía, con la intención de adelantarse a los criminales o atacantes que quisieran hacerlo también. A estas alturas, las vulnerabilidades todavía no se habían hecho públicas.
El trabajo de Jordan y su equipo incluso permitió descubrir y explotar una vulnerabilidad en Google Chrome que los llevó a contactar a Google, Apple, Mozilla y el resto para reunirse y mitigar ese problema de los navegadores antes de que fuera demasiado tarde. “Esto permitió que al hacer pública la existencia de Spectre y Meltdown los navegadores ya tuvieran nuevas medidas de seguridad para que fuera muy difícil y en algunos casos imposible usar esas vulnerabilidades para atacarlos”, comentó orgulloso, calificándolo como una historia de éxito para el equipo rojo.
Hackers sí, cibercriminales no
El equipo rojo de Microsoft está compuesto de hackers, pero eso no quiere decir que sean cibercriminales. A esta clase de personas la motiva una sola cosa: abrir ecosistemas y dar libertad, aunque el fabricante no quiera (como es el caso de Nintendo y la 3DS). Jordan no apoya la piratería, porque hackear una consola o smartphone, hacerles jailbreak, no es sinónimo de piratería.
“Una de las preguntas que mas nos hacen es ‘¿contratan a criminales?’ No, lo que hacemos es contratar a gente que hace este tipo de trabajos de seguridad de manera interesante y responsable, no contratamos gente que hace cosas como intentar robar datos. Los que trabajan en nuestro equipo hacen investigaciones de seguridad de este tipo en su tiempo libre, pero ninguno intentan robar datos ni nada por el estilo, ni trabaja con personas sospechosas. Tenemos un límite que no cruzamos”.
Las compañías de tecnología buscan a este tipo de personas, los Mister Robot, por su conocimiento y habilidades, su pasión por los ecosistemas abiertos, la libertad, y por hacer ingeniería inversa para saber cómo funcionan las cosas; no por su deseo de hacer daño. De hecho, y aunque ya tengan un trabajo como este, siempre continúan investigando cosas en su tiempo libre. Jordan, por ejemplo, me ha dicho que actualmente tiene proyectos personales relacionados a la comunidad de hacking, pero son completamente privados. Eso sí, aunque se mantiene enterado de lo que hace la comunidad de hackers de consolas, no está trabajando directamente con ellos ni en ningún proyecto de este tipo.
La última fase del trabajo del equipo rojo es, quizás, la más importante. Una vez estudian el código, lo entienden y lo rompen, solo queda una cosa por hacer: ayudar a que el producto sea más seguro. “En este momento, tras lograr hacer exploits para un producto, lo que queda es descubrir cómo hacer para que sea más difícil explotarlo, atacarlo”, explicó. “Por ejemplo, durante los últimos dos meses hemos estado trabajando en una nueva característica de Windows que será parte del sistema operativo y funcionará con todos los programas que sean ejecutados, para hacer la plataforma más segura”.
¿Cuál es la parte más divertida para el equipo? “Sin duda, escribir y desarrollar el exploit”.
Trabajar en seguridad para una empresa como Microsoft no es tarea fácil por una sencilla pero importante razón: Hay más de 1.000 millones de personas usando sus productos. Según Jordan, la compañía lo está haciendo muy bien en materia de seguridad en parte gracias a su equipo, porque les permite ser preventivos y no simplemente reaccionar cuando las cosas malas pasan. En este aspecto, también cree que ser una compañía más abierta ayuda a mejorar constantemente. Para el experto, ser cerrados es un grave error que cometen muchos.
“Muchas compañías creen que esconder lo más posible va a permitirles ser más seguros, y eso es algo que vemos fallar todo el tiempo. La gente es lo suficientemente inteligente para hacer ingeniería inversa. Creer que cerrarse al mundo hará que nadie quiera atacarte, o que sea más difícil, es un error muy grande. No funciona. Día tras día se vulneran sistemas cerrados.
Esto es algo en lo que hemos mejorado mucho en Microsoft. Cada vez somos mas abiertos, e incentivamos a la comunidad de seguridad a que participe e incluso haga ingeniería inversa en algunos casos.[...] Por ejemplo, en la pasada Black Hat expliqué cómo funciona un exploit para uno de nuestros productos porque queremos que la gente haga ingeniería inversa, encuentre fallos y lo notifique para solucionarlos. Tenemos un reto para encontrar bugs recompensado con hasta 250.000 dólares. Esa es parte de nuestra estrategia de seguridad. Creo que ser cerrados es uno de los mayores problemas para muchas compañías, y creo que Microsoft está haciendo esfuerzos para no caer en esos problemas o trampas.”
La gran diferencia de tener un equipo rojo es que ayuda a descubrir fallos, vulnerabilidades y la manera de explotarlos antes que otros. De hecho, ni siquiera es necesario esperar a crear un exploit antes de atacar. Según Jessica Payne, investigadora de seguridad y parte del equipo azul de Microsoft, una vez el equipo rojo encuentra algo relativamente bueno, un fallo que pueda hacer cosas como obtener permisos, obtener códigos o hacer que una app deje de funcionar, lo identificarán y marcarán para encontrar rápidamente si alguien más, un posible atacante fuera de la compañía, está trabajando en algo similar. “Si piensas en la forma de romper algo, es posible que alguien más ya había pensado en ello, o se le ocurrirá en el futuro”, comentó Payne.