Více než rok stačilo na Twitteru kliknout na zákeřně vytvořený odkaz a váš účet mohl být převzat a použit k tweetování, retweetování, lajkování nebo blokování jiných uživatelů. Zranitelnost byla veřejně odhalena ve středu, což vedlo k rychlé nápravě – a k pokárání uživatele, který ji odhalil.
Místo toho, aby uživatel získal finanční odměnu z programu odměn za chyby Twitteru, společnost mu zakázala účast v tomto programu.
Zaslal jsem toto hlášení o chybě a nedostal jsem odměnu. Řekli jste mi, že tato chyba existuje již rok. Když vidím, že jste ji tak dlouho neopravili, zdá se, že tato chyba není důležitá, a tak jsem ji zveřejnil. pic.twitter.com/R9X4k8KqMZ
– rabbit (@rabbit_2333) December 12, 2023
Odhalení provedl pseudonymní uživatel Twitteru @rabbit_2333, který se podělil o to, jak lze zneužít zranitelnost XSS na analytické subdoméně Twitteru, aby útočník získal přístup k profilu třetí strany a možnost dělat téměř vše kromě změny hesla účtu.
Při hackerském útoku bylo využito skriptování křížových stránek (XSS) a falšování požadavků na křížové stránky (CSRF). Útoky XSS umožňují škodlivým aktérům injektovat škodlivé skripty do webových stránek, zatímco CSRF oklame uživatele, aby provedl akce ve webové aplikaci, kde je již ověřen.
Chyba na Twitteru využívala obě tyto metody, což ji činí obzvláště nebezpečnou. Zneužitím XSS mohli útočníci obejít bezpečnostní opatření webu a získat neoprávněný přístup k uživatelským účtům.
Jakmile se zpráva o této zranitelnosti rozšířila, Chaofan Shou, spoluzakladatel platformy pro analýzu chytrých kontraktů Fuzz.Land, zasáhl a poskytl další podrobnosti. Prozradil, jak snadné bylo na základě této neřešené zranitelnosti vytvořit výkonný nástroj pro zneužití, a poskytl podrobné vysvětlení, jak chyba funguje a jaké potenciální škody může způsobit.
Zde je úplné odhalení zranitelnosti Twitter XSS + CSRF.
Kliknutí na podvržený odkaz nebo přechod na některé podvržené webové stránky by útočníkům umožnilo převzít kontrolu nad vaším účtem (odesílání příspěvků, lajkování, aktualizace profilu, mazání účtu atd.) pic.twitter.com/MVJ1MvHt6H
– Chaofan Shou (@shoucccc) December 13, 2023
Následovaly komentáře výzkumníka v oblasti kybernetické bezpečnosti Sama Suna, který poskytl praktické rady, jak se exploitu vyhnout, a upozornil na nedostatečnou bezpečnost i pro ty, kteří používají Twitter na svých telefonech prostřednictvím prohlížečů.
Sun poznamenal, že webový prohlížeč Brave zaměřený na ochranu soukromí by zabránil fungování exploitu.
Reakce týmu X byla po tomto veřejném odhalení rychlá. Během několika hodin zranitelnost opravili, jak potvrdil Sun. Navzdory potenciální závažnosti chyby však @rabbit_2333 nebyl za objev odměněn. Místo toho mu bylo oznámeno, že byl z programu odměn za chyby vyřazen.
„Děkujeme Twitteru,“ napsal uživatel a připojil snímky obrazovky s oznámením o zákazu ze strany Twitteru.
Když se začaly množit komentáře o tom, zda měl @rabbit_2333 o chybě informovat, nebo ne, uživatel tvrdil, že zpočátku postupoval podle správného protokolu. Teprve když X zamítl závažnost chyby a její způsobilost pro odměnu, zveřejnili ji, uvedl uživatel.
Předložil jsem toto hlášení o chybě a nedostal jsem odměnu. Řekli jste mi, že tato chyba existuje již rok. Když vidím, že jste ji tak dlouho neopravili, zdá se, že tato chyba není důležitá, a tak jsem ji zveřejnil. pic.twitter.com/R9X4k8KqMZ
– rabbit (@rabbit_2333) December 12, 2023
Účelem programů odměn za chyby je předcházet incidentům, jako je tento, a motivovat vývojáře k objevování bezpečnostních děr odměnami a dohodou, že je nebudou zveřejňovat, dokud společnost věci neopraví.
Programy odměn za chyby jsou běžné při vývoji softwaru i v kryptoměnách, zejména pokud jde o chytré kontrakty. Provozování takových programů sice může být náročné, ale prevence narušení bezpečnosti se obvykle považuje za úsilí, které za to stojí.
Motivační programy White-hat a Bug-bounty obvykle vyžadují, aby zranitelnosti zůstaly důvěrné. Často však mají také datum vypršení platnosti, aby se zajistilo, že vývojáři softwaru budou jednat včas.