Facebook: una pequeña actualización que provocó una gran interrupción

A última hora del día 4 de octubre, muchos usuarios no pudieron acceder a sus cuentas de Facebook, Instagram o WhatsApp.

Todos estos servicios son propiedad de la empresa Facebook, y se vieron afectados por el mismo tipo de interrupción: una actualización accidental y errónea de la información de enrutamiento a los servidores de Facebook.

El funcionamiento de Internet se basa en un conjunto de tecnologías, dos de las cuales estuvieron implicadas en el incidente de ayer, BGP (border gateway protocol) y DNS (domain name system).

Para comunicarse, cada máquina debe tener una dirección IP. Una comunicación en Internet consiste en poner en relación dos direcciones IP. El contenido de cada comunicación se divide en paquetes, intercambiados por la red entre una fuente y un destino.

Cómo funciona BGP (border gateway protocol)


Internet se compone de un conjunto de “sistemas autónomos” (AS). Hay varias docenas de ellas, algunas muy grandes, otras más pequeñas. Algunos SV están interconectados por puntos de intercambio que les permiten intercambiar datos. Cada uno de estos sistemas está formado por un conjunto de dispositivos llamados routers, unidos entre sí por enlaces de comunicación ópticos o eléctricos. La comunicación en Internet viaja por estos enlaces, y los routers se encargan de pasar una comunicación de un enlace a otro según las reglas de enrutamiento. Cada AS está conectado con al menos uno, si no con varios.

Cuando un usuario conecta su máquina a Internet, suele hacerlo a través de un proveedor de servicios de Internet (ISP). Este ISP es en sí mismo un “sistema autónomo”. Tiene rangos de direcciones y asigna una a cada una de las máquinas de sus clientes. Cada router que recibe un paquete examina las direcciones de origen y destino y decide reenviar el paquete al siguiente enlace, basándose en las reglas de enrutamiento pasadas en sus tablas.

Para rellenar estas reglas de enrutamiento, cada AS difunde a los demás información que describe cómo asociar un rango de direcciones que posee con una ruta de sistemas autónomos. Esta difusión la realiza el BGP (border gateway protocol), de cerca a cerca. Así, cada router dispone de toda la información necesaria para encaminar un paquete.

El DNS (sistema de nombres de dominio)


Como el uso de las direcciones IP no es muy transparente para el usuario final, Internet ofrece el DNS (sistema de nombres de dominio). Para los servidores disponibles en Internet, esto permite asociar “facebook.com” con la dirección IP “157.240.196.35”.

Cada propietario de un nombre de dominio establece (o delega) un servidor DNS que asocia los nombres de dominio con las direcciones IP. Se considera la fuente más fiable (autorizada) de información DNS. Esta suele ser la primera causa de fallo, ya que si la máquina no puede resolver un nombre (es decir, asociar el nombre solicitado por el usuario con una dirección), el usuario final recibe un mensaje de error.

Cada gran operador de Internet, Facebook pero también Google, Netflix, Orange, OVH… tiene un (o varios) AS y dirige el servicio BGP asociado en relación con sus pares. También tiene uno o más servidores DNS que son autoritativos en sus dominios.

El fracaso


A última hora de la mañana del 4 de octubre, Facebook realizó una modificación de su configuración de BGP y la distribuyó a los AS a los que está conectado. Este cambio provocó la desaparición de las rutas a Facebook para todo Internet.

Como resultado, las comunicaciones en curso con los servidores de Facebook se detuvieron a medida que la eliminación de la ruta se propagaba de AS a AS, ya que los routers ya no podían reenviar paquetes.

La consecuencia más visible para los usuarios fue una interrupción del servicio de DNS y un mensaje de error, y luego los servidores de DNS de los ISP ya no pudieron (debido al fallo de BGP) contactar con el servidor de autoridad de Facebook.

Por parte de Facebook, este fallo también causó importantes trastornos, ya que no era posible el acceso remoto (es decir, no había posibilidad de teletrabajar). Los empleados de Facebook se vieron incapaces de comunicarse entre sí, ya que utilizaban las mismas herramientas para sus intercambios. Por lo tanto, fue necesario recurrir a la intervención in situ en los centros informáticos. Como los controles de acceso al edificio son también servicios en línea, este acceso parece haber sido más complejo de lo esperado.

Por último, el nombre de dominio “facebook.com” dejó de estar referenciado y fue identificado como libre por varios sitios especializados durante la interrupción, y se presentó como candidato a la subasta.

Consecuencias para los usuarios


Por lo tanto, el acceso a la información de todos los usuarios de Facebook fue imposible durante la interrupción. Facebook se ha convertido en un servicio muy importante para muchas comunidades de usuarios, ya que permite a los profesionales o a los estudiantes intercambiar información en grupos privados, por ejemplo. Por lo tanto, estos usuarios no podían trabajar con normalidad.

Facebook también es un proveedor de identidad para muchos servicios en Internet, actuando como un inicio de sesión único. Los usuarios reutilizan su cuenta de Facebook para acceder a otros servicios distintos de los ofrecidos por la empresa. Al no poder acceder a Facebook, los usuarios tuvieron que reutilizar otros datos de acceso (que podrían haber perdido) para poder acceder.

Durante la interrupción, los usuarios siguieron solicitando acceso a Facebook, lo que provocó un aumento del número de consultas DNS emitidas en Internet. Esto creó una sobrecarga temporal pero notable de la actividad global del DNS.

Esta interrupción ilustra la creciente importancia y criticidad de estos servicios en línea en nuestra vida cotidiana. También ilustra la fragilidad todavía significativa de estos servicios y la dificultad que tenemos para gestionarlos. Por ello, cada vez es más importante que estos servicios funcionen con tanta profesionalidad y rigor como otros servicios críticos.

Por ejemplo, nuestros servicios bancarios son hoy en día en gran medida, si no exclusivamente, en línea. Una interrupción como la que afectó a Facebook es más difícil que le ocurra a un servicio bancario debido a las normas y regulaciones vigentes para desplegar estos servicios (Directiva de Seguridad de Redes y Servicios, Reglamento General de Protección de Datos, PCI-DSS).

En comparación, Facebook establece sus propias normas de funcionamiento y escapa parcialmente a las normas comunes, como el GDPR. La introducción de obligaciones de servicio para estas grandes plataformas podría conducir a una mejor calidad de servicio. Sin embargo, hay que tener en cuenta que ningún banco explota una red tan grande como la infraestructura de Facebook, cuyo tamaño aumenta obviamente las dificultades de funcionamiento.

De forma más general, tras muchos años de investigación y normalización, se están desplegando mecanismos de seguridad para BGP y DNS con el fin de evitar ataques con efectos similares. Por lo tanto, debería acelerarse el despliegue de estos mecanismos de seguridad para mejorar aún más la fiabilidad de Internet.