ИБ-специалист Теренс Иден (Terence Eden) получил от Twitter 2940 долларов США по программе вознаграждения за обнаруженные уязвимости. Исследователь обнаружил, что некоторые приложения могли читать личные сообщения пользователей Twitter, о чем социальная сеть не предупреждала.
Иден рассказывает, что корень проблемы заключался в том, что ключи и секреты для официального Twitter API утекли и довольно давно доступны публично. То есть разработчики в теории имеют возможность обращаться к API без одобрения сервиса.
Чтобы подобного не происходило, и никто не выдавал себя за официальные приложения, инженеры Twitter предусмотрели ряд ограничений. Например, одним из методов является использование callback URL, то есть после успешного входа приложение может использовать только заранее определенный URL.
Однако не все приложения работают с URL и поддерживают callback’и. Для таких случаев разработчики Twitter предусмотрели альтернативу: использование специальных PIN-кодов. «Вы логинитесь, вам предоставляют PIN, вы вводите его в приложение», — объясняет исследователь.
Иден обнаружил, что в таких случаях пользователям по какой-то причине показывают некорректную информацию OAuth. Так, пользователям соображают, что приложение не сможет получить доступ к их личным сообщениям, хотя на самом деле это не так, и доступ у приложения есть.
Исследователь сообщил о баге еще 6 ноября 2018 года, и 6 декабря 2018 года проблема была исправлена.