Un investigador, Daniel Le Gall, ha puesto al descubierto una vulnerabilidad grave en uno de los servidores de Facebook. El investigador encontró un servicio alojado en Sentry 199.201.65.36 con el nombre de host sentryagreements.thefacebook.com, durante la exploración de un rango de IP que pertenece a Facebook -199.201.65.0/24.
Ejecución remota de código en un servidor de Facebook: Detalles Técnicos
Lo que es Sentry? Es una aplicación web recopilación de registros que está escrito en Python con el marco de Django.
El investigador explicó también que, mientras que él estaba mirando a la aplicación Sentry, algunos stracktraces extraen periódicamente en la página por ninguna razón particular.
La aplicación parece ser inestable con respecto a la función de restablecimiento de contraseña de usuario, que ocasionalmente estrellado, agregó, señalando que el modo de depuración de Django no se apagó, que imprime en consecuencia, todo el entorno cuando se produce un StackTrace.
Sin embargo, Django tijeras de información crítica (contraseñas, misterios, llave…) en aquellos stacktraces, por lo tanto, evitar una fuga de información masiva.
El investigador decidió buscar más cerca, y se dio cuenta que podía detectar nombres cookie de sesión, varias opciones, así como serializador conocida como la salmuera. Simplemente pon, La salmuera es un protocolo binario para (una)serializar estructuras de objetos Python, tales como clases y métodos en ellas.
Si hemos sido capaces de forjar nuestra propia sesión que contiene el contenido de la salmuera arbitraria, podríamos ejecutar comandos en el sistema,”Daniel célebre.
No obstante, la SECRET_KEY utilizado por Django para la firma de las cookies de sesión no está disponible en el StackTrace. Además, la lista SENTRY_OPTIONS contiene una clave denominada clave system.secret, que no se cortan con tijeras. De acuerdo con la documentación del centinela, -Clave system.secret es “una clave secreta utilizada para la sesión de firmas. Si esto se convierte en peligro es importante para regenerarla lo contrario es mucho más fácil para secuestrar sesiones de usuario “.
Como señaló el investigador, parece que la situación es “una especie de anulación Django de clave secreta".
El uso de toda esta información, Daniel pudo para crear una secuencia de comandos que forja cookies maliciosas utilizando el contenido de la salmuera arbitraria. Este último contenía una carga útil para anular la cookie Sentry. Esta cookie fue posteriormente anulado con un objeto arbitrario. Para probar esta vulnerabilidad, el investigador puso en marcha un retraso de 30 segundos de tiempo evitando la causa de cualquier daño real. Su intento fue exitoso.
Un atacante podría haber explotado la vulnerabilidad de seguridad de secuestrar de forma remota el sistema para robar los datos desde el servidor de Facebook o realizar otras actividades maliciosas. Cabe destacar, no obstante, eso sin datos de usuario se encuentra en el servidor, inferior estaba expuesto debido a esta falla.
Daniel reportó su descubrimiento a Facebook de julio 30, 2018, con la empresa reconociendo rápidamente el fallo tomando el servidor. Un parche se emitió de agosto 9, y el investigador fue galardonado $5,000 para reportar la falla.
El año pasado, un investigador de seguridad, Andrew Leonov, fue galardonado $40,000 en nombre de Facebook como incumplimiento de la red social y la fijación de una vulnerabilidad de ejecución remota de código que ya estaba descubierto y se fijaron en 2016. Al parecer,, la vulnerabilidad necesario abordar de nuevo. La falla seguía afectando a la página web.