Mientras trataba de encontrar algunos bugs en los servicios de Facebook, un investigador de seguridad de la compañía se topó accidentalmente con una puerta trasera que había llevado a cabo un hacker en los servidores del gigante de las redes sociales, el cual se registraba empleando credenciales de diferentes empleados de Facebook con el fin de hacerse con alguna de los back-ends (o motores) de las diferentes aplicaciones que se encuentran en la misma. Orange Tsai, consultor de DevCore, es un hombre que empleaba gran parte de su tiempo libre a ayudar a diferentes empresas de renombre a corregir ciertas vulnerabilidades que puedan encontrarse en sus servidores, aplicaciones, etc. De hecho, a finales de febrero, Tsai decidió hacer lo propio con Facebook, comenzando así el mapeo de algunos de los servicios back-end de la empresa con el fin de encontrar aquellas vulnerabilidades en sus servidores que hiciesen que estos pudiesen ser fácilmente pirateados.

El curso de su búsqueda lo llevó hasta el dominio files.fb.com, un servicio de transferencia y alojamiento de archivos en línea que se ejecuta mediante la aplicación Secure File Transfer (TFA) de Accellion.

Una vez identificada el tipo de aplicación que era y la versión de la misma, el investigador prosiguió con su trabajo, explorando el código fuente de la app y descubriendo así tres defectos en el cross-site scripting (XSS) de la misma –el cross-site scripting un tipo de inseguridad informática típica de las aplicaciones Web y que permite a una tercera persona incluir un código JavaScript o en otro lenguaje y que sirve para evitar diferentes medidas de control-. También en dicho proceso se encontraron otros errores que permitían la ejecución remota de código mediante una clave secreta o una inyección SQL (un método de infiltración de código intruso que se apoya en una vulnerabilidad informática en una aplicación con el fin de realizar diferentes operaciones sobre una base de datos). Ante esto, era evidente que tenía frente a sí una importante labor que llevar a cabo.

De hecho, el propio Tsai utilizó esa inyección SQL que había encontrado en la aplicación TFA para acceder al servidor de Facebook, haciéndose así con un control completo del mismo. Una vez hecho esto, el consultor pudo recopilar toda la información necesaria con la que poder presentar un informe sobre ese fallo ante el personal de Facebook. Y es que, mientras echaba un ojo a los registros del servidor de la compañía, descubrió una serie de mensajes de error que tenían un aspecto bastante sospechoso.

Facebook error

Dichos mensajes le llevaron hasta una WebShell, la cual resultaba bastante obvio que no pertenecía a Facebook ni la había subido ninguno de sus empleados. Al inspeccionar el código fuente de dicha WebShell, Tsai encontró ciertas evidencias que apuntaban a que había un keylogger que interceptaba las operaciones de inicio de sesión, almacenando así las credenciales de acceso de los empleados de Facebook en un archivo de registro local.

Al comprobar otros archivos de registro, Tsai descubrió que el hacker que se escondía tras todo esto volvía cada “x” tiempo para recoger los datos registrados, mapeaba la red local e intentaba robar claves privadas de SSL. Vamos, que no se andaba con chiquitas.

Una investigación más profunda desveló que hubo dos períodos en el que el hacker se mantuvo más activo; uno en julio de 2015 y otro a mediados de septiembre del mismo año.

Finalmente, Tsai decidió presentar un informe sobre los errores encontrados e inmediatamente se inició investigación de puertas para dentro hasta poner fin al asunto, mientras recompensaba a su vez al consultor con unos 10.000 dólares (unos 8.000 euros) por sus esfuerzos.

Al final, la historia tuvo un final feliz.