Lo que encuentro poco claro es CÓMO se robaron el token de acceso y qué tiene que ver la funcionalidad de subida de video.
Pero esa no es tu pregunta. Desea saber cómo un token de acceso proporciona acceso a la cuenta de otro usuario. Esto requiere cierto conocimiento sobre cómo un sitio web lo autentica y le da acceso. La administración de sesiones se explica aquí.
En un flujo normal, se autentica utilizando una contraseña, bio-métricas, etc. A cambio de una autenticación válida, recibe un ID de sesión que a menudo se almacena en una cookie. Para todas las demás solicitudes, agregue este ID de sesión para demostrar que es el mismo usuario que el que se autenticó correctamente. Un token de acceso es básicamente un identificador de sesión. Se proporciona a un usuario después de la autenticación exitosa. El token puede tener un cierto nivel de privilegio adjunto. Esto le permite obtener un token de acceso de privilegio bajo cuando se usa una autenticación débil, como una contraseña, o un token de acceso de alto privilegio, cuando se usa una autenticación más fuerte, como la bio-métrica. Probablemente, la funcionalidad ver-como le proporciona un token de acceso para un usuario que no sea usted (la persona que está viendo). Debido a algún error (no claro para mí también), este token de acceso se puede adjuntar a otras solicitudes y dar como resultado una respuesta exitosa.
Flujo normal:
- me autentico.
- Recibo un token de acceso.
- Traigo mi perfil y adjunto mi token de acceso como prueba de que soy la persona autenticada.
- Recibo mi información de perfil.
Flujo de ataque:
1. Veo como mi usuario objetivo.
2. De alguna manera recibo un token de acceso para este usuario objetivo.
3. Recupero "mi perfil" pero uso el token de acceso de mi usuario objetivo.
4. Recibo la información del perfil del usuario objetivo.
El concepto completo de tokens, SSO, sesión es más complejo y corté algunas esquinas. Un identificador de sesión a menudo se refiere a una información en el servidor que alimenta el control de acceso con atributos de usuario para basar las decisiones de control de acceso. Un token de acceso a menudo es autónomo, lo que significa que contiene los atributos del usuario posiblemente encriptados y firmados.