В продължение на повече от година е достатъчно да кликнете върху злонамерено създадена връзка в Twitter и профилът ви може да бъде превзет и използван за туитване, ретуитване, харесване или блокиране на други потребители. Уязвимостта беше разкрита публично в сряда, което доведе до бързо отстраняване – и до порицание за потребителя, който я е разкрил.
Вместо да получи парично възнаграждение от програмата на Twitter за награждаване на грешки, компанията забрани на потребителя да участва.
Подадох този доклад за грешка и не получих награда. Казахте ми, че този бъг съществува от една година. Виждайки, че не сте го отстранили толкова дълго време, изглежда, че този бъг не е важен, затова го направих публичен. pic.twitter.com/R9X4k8KqMZ
– rabbit (@rabbit_2333) December 12, 2023
Разкритието беше направено от псевдонимния потребител на Twitter @rabbit_2333, който сподели как уязвимостта XSS в поддомейна за анализи на Twitter може да бъде използвана, за да даде на нападателя достъп до профила на трета страна и възможност да прави почти всичко, освен да променя паролата на профила.
При хакерската атака са използвани XSS (cross-site scripting) и CSRF (cross-site request forgery). Атаките XSS позволяват на злонамерените участници да инжектират вредни скриптове в уебстраници, докато CSRF подмамва потребителите да изпълняват действия в уеб приложение, в което вече са автентифицирани.
Грешката в Twitter използваше и двата метода, което я прави особено опасна. Като използват XSS, нападателите могат да заобиколят мерките за уеб сигурност и да получат неоторизиран достъп до потребителски акаунти.
Когато новината за тази уязвимост се разпространи, Чаофан Шоу, съосновател на платформата за анализ на интелигентни договори Fuzz.Land, се намеси, за да предостави повече подробности. Той разкри колко лесно е било да се изгради мощен инструмент за експлойт на базата на тази неадресирана уязвимост и предостави подробно обяснение за това как работи бъгът и какви потенциални щети може да причини.
Ето пълното разкриване на уязвимостта Twitter XSS + CSRF.
Кликването върху подправена връзка или преминаването към някои подправени уебстраници би позволило на атакуващите да поемат контрола над профила ви (публикуване, харесване, актуализиране на профила, изтриване на профила и т.н.) pic.twitter.com/MVJ1MvHt6H
– Chaofan Shou (@shoucccc) December 13, 2023
Записът на Шоу беше последван от коментари на изследователя в областта на киберсигурността Сам Сун, който предостави практически съвети как да се избегне експлойтът, като подчерта липсата на безопасност дори за тези, които използват Twitter на телефоните си чрез браузъри.
Сън отбеляза, че уеб браузърът Brave, който е ориентиран към защитата на личните данни, би предотвратил работата на експлойта.
Реакцията на екипа на X беше бърза след това публично разкритие. В рамките на няколко часа те закърпиха уязвимостта, както беше потвърдено от Sun. Въпреки потенциалната сериозност на дефекта обаче @rabbit_2333 не беше възнаграден за откритието. Вместо това той беше уведомен, че е изключен от програмата за награди за грешки.
„Благодаря ти, Twitter“, пише потребителят, като прилага скрийншоти на уведомлението за забрана от Twitter.
Тъй като заваляха коментари за това дали @rabbit_2333 е трябвало да публикува за бъга или не, потребителят твърди, че в началото е следвал правилния протокол. Едва когато Х отхвърлил сериозността и допустимостта му за възнаграждение, те го оповестили публично, каза потребителят.
Подадох този доклад за грешка и не получих награда. Казахте ми, че този бъг съществува от една година. Виждайки, че не сте го отстранили толкова дълго време, изглежда, че този бъг не е важен, затова го направих публичен. pic.twitter.com/R9X4k8KqMZ
– rabbit (@rabbit_2333) December 12, 2023
Целта на програмите за възнаграждение за грешки е да предотвратяват инциденти като този, като стимулират разработчиците да откриват дупки в сигурността с награди и споразумение да не ги разкриват, докато компанията поправи нещата.
Програмите за възнаграждение за грешки са често срещани при разработването на софтуер, както и при криптовалутите, особено когато става въпрос за интелигентни договори. Макар че изпълнението на такива програми може да бъде предизвикателство, предотвратяването на пробив в сигурността обикновено се смята, че си заслужава усилията.
White-hat и програмите за стимулиране на грешки обикновено изискват уязвимостите да се пазят в тайна. Но те често имат и дати на изтичане, за да се гарантира, че разработчикът на софтуер действа своевременно.