
Un error que afecta al diálogo de permisos al autorizar ciertas aplicaciones a Twitter deja mensajes directos expuestos a terceros sin que el usuario se entere de ello.
El fallo se manifestó con las aplicaciones que requieren un PIN para completar el proceso de autorización en lugar del procedimiento basado en tokens de OAuth; como resultado, algunos permisos, como el de acceso a mensajes directos, permanecieron ocultos para el usuario de Twitter.
Terence Eden descubrió el problema y lo reportó a Twitter a través de la plataforma de recompensas de HackerOne. La revelación le valió una recompensa de 2.940 dólares.
Eden describió el problema como derivado de que las claves y secretos oficiales de la API de Twitter están disponibles gratuitamente, lo que permite a los desarrolladores de aplicaciones acceder a la API de Twitter incluso sin la aprobación del servicio.
Twitter impuso algunas restricciones para evitar hacerse pasar por las aplicaciones oficiales utilizando las teclas para redirigir a una aplicación diferente a la que están asociadas.
Uno de los métodos que utilizaron fue restringir las “URL de devolución de llamada”, de modo que al iniciar sesión en la cuenta, la aplicación autorizada sólo podía acceder a una URL predefinida. En términos más simples, un desarrollador no podría usar las claves de la API con su aplicación.
Esta protección no era exhaustiva, ya que algunas aplicaciones no utilizan una URL, o pueden no ser compatibles con las llamadas de retorno. Para ello, Twitter pone a su disposición un mecanismo de autorización secundario, basado en el PIN.
“Te conectas, te proporciona un PIN, lo tecleas en tu aplicación, y la aplicación está autorizada a leer tu contenido de Twitter”, explicó Eden.
En tales casos, Eden notó que las aplicaciones no mostraban los detalles correctos de OAuth al usuario. El diálogo informó erróneamente al usuario de que la aplicación no podía acceder a los mensajes directos, aunque lo contrario era cierto.
Por alguna razón, la pantalla OAuth de Twitter dice que estas aplicaciones no tienen acceso a Mensajes Directos. ¡Pero lo hacen!”