SHARE

В петък вечер, както се полага при кризи, от централата на Facebook съобщиха, че най-голямата социална мрежа в света е станала жертва на хакерска атака и от уязвимостта във функционалността „View As“, която позволява да разгледате профила си като друг потребител, са засегнати между 50 и 90 млн. профила от целия свят. Пробивът е открит няколко дни по-рано, а от вторник до петък техниците на компанията са отстранявали грешката в кода.

Какво всъщност се е случило, какви са опасностите за потребителите и какви мерки трябва да предприеме всеки от нас – вижте анализа на един от най-добрите експерти по киберсигурност у нас Любомир Тулев, част от екипа на AMATAS.

От официалното изявление на Facebook личи, че всъщност засегнатите са много повече от 50 млн. потребители, тъй като се казва, че още 40 милиона профили в социалната мрежа са били изложени на уязвимостта във функцията „View As“ през изминалата една година.

Всъщност става въпрос за открита уязвимост в самия код на социалната мрежа, през която е осъществена атака от типа „кражба на активна сесия“ (session hijacking е терминът на английски). Характерното за този тип атаки е, че за разлика от фишинг атаките или другите форми на социално инженерство, където потребителят обикновено бива заблуден да въведе потребителското си име и парола на контролиран от хакер сайт със сходна визия на истинския, то при „кражбата на активна сесия“ всъщност се осъществява връзка и се взема цялата осъществена вече сесия, т.е. осъществена връзка межу facebook и браузъра на потребителя.

Как се генерира тази сесия:

Когато за първи път даден потребител ползва ново устройство, нов браузър, нов телефон и т.н. и за първи път прави опит да се „впише“ (Log In) в профила си в социалната мрежа, сервърът й прави опит да установи криптирана връзка с потребителя чрез неговия браузър или Facebook приложение. Тогава платформата го кара да въведе потребителското си име, парола и вече все по-често код от двуфакторна верификация.

След като процесът по верификация мине успешно, Facebook създава „сесия“ между своя сървър и приложението или браузъра на дадения потребител и тази сесия продължава да бъде активна винаги, до момента в който потребителят не натисне бутона „Log Out“ било то в своя браузър или апликация. Едва след процес на „отписване“ (log out) тази сесия се преустановява и при следващия опит на потребителя да се впише, сървърът на Facebook ще поиска въвеждане на потребителско име, парола и двуфакторна верификация, за да установи нова връзка.

Това е причината, поради която, ако при ползване на профила си в социалната мрежа излизаме само с натискане на бутона „Еxit“ на браузъра, след повторното му стартиране установяваме връзката директно, т.е. Facebook не ни моли да въведем потребителско име, парола и двуфакторен код, защото предишно установената ни сесия със сървъра на социалната мрежа е активна.

Така сесията между браузъра на потребителя може да остане активна с години, докато потребителят не натисне бутона „Log Out“, за да се отпише. Тази сесия се съхранява в браузъра на потребителя чрез така наречените „бисквитки“ (cookies). Така работят всички сайтове, при които се осъществява процес на „вписване“ – със сигурност не е проблем само на Facebook, но обикновено, за да се „открадне“ или още казано „копира“ тази сесия, хакерите трябва да установят контакт с устройството на жертвата посредством някаква уязвимост, откъдето да могат да копират тази сесия.

В конкретния случай с Facebook обаче не говорим за допусната грешка от страна на потребителя, а за пропуск в сигурността на социалната мрежа. Уязвимостта се крие в това, че всеки един потребител през своя потребителски профил има възможност чрез опцията „View Аs“ да провери как се вижда профилът му през очите на конкретни негови приятели или просто „Public“ за всички онези, които не са в приятелската му листа.

На практика, опитвайки се да си видиш профила през очите на конкретен твой „приятел“, всъщност Facebook те „внедрява“ в съществуваща активна сесия между социалната мрежа и именно този твой приятел, уж за да можеш да погледнеш профила си „през неговите очи“. Точно тук е и уязвимостта – при генерирането на тази „View As“ заявка в кода бива генерирана сесията на лицето, през чиито очи искаме да погледнем профила си, и за хакера остава само да разчете информацията и да я съхрани при себе си.

Още по-неприятно и зловещо при този тип атаки с „кражба на активни сесии“ е, че жертвата в случая дори и не разбира, че е била хакната. За това не разбира и засегатият сайт, в случая Facebook, защото след като веднъж вече копирал активна сесия, хакерът я въвежда ръчно в своя браузър и след като въведе адреса на въпросния сайт, той осъществява директно влизане в профила на хакнатата жертва. Понеже използва активна съществуваща сесия, за сървъра на Facebook това не е някой непознат, а е потребителят, с който сървърът има активна осъществена сесия. В същото време, ако жертвата се опита да влезе в профила си, също ще може да го направим, и то без проблем, тъй като също използва активна сесия.

В това е и голямата опасност – че нито засегнатите потребители, нито Facebook са знаели, че паралелно с тях са осъществявали достъп до профилите им напълно непознат/и хора.

Не се учудвам, че в официалното изявление на Facebook инженерите казват, че не е задължително да си сменяте паролите. При кражбата на активна сесия самата сесия всъщност представлява низ от символи, в който не присъства нито потребителското име, нито паролата. Дори и да откраднат твоята сесия, хакерите не могат само от нея да разберат паролата и потребителското име.

И въпреки това все пак е препоръчително всеки, който намери за уместно, да смени паролата си. Това важи в особена сила за онези потребители, които в петък следобед, ако са забелязали, че десктоп или мобилните версии на Facebook и Messenger са ги карали да въведат наново потребителското си име и парола.

Ще завърша този обяснителен текст с важен съвет към онлайн потребителите: освен да имат навика да си сменят паролите често, нека те да бъдат различни за различните сайтове и услуги и да не бъдат лесни за налучкване. И освен това да изградят навик у себе си всеки път, когато излизат от сайт, за който се изисква да се „вписва“, да натискат бутона „Log Out“, а не просто да затварят браузъра, за да може да се прекъсне тази установена активна сесия.

Любомир Тулев започва своята кариера като експерт по киберсигурност в специализирания сектор на ГДБОП-МВР като тиймлидер и контактна точка за повече от 7 години на всички големи интернет базирани продукти като Facebook, Google, Skype и други за България. Участвал в стотици международни киберразследвания в сътрудничество с ФБР, Европол, Интерпол и редица други чуждестранни правоохранителни органи. Тулев продължава своята кариера като един от водещите експерти в българската компания за киберсигурност AMATAS. Сертифициран по десетки международни сертификати в областта на киберсигурността и защита на информацията. Защитава квалификация и като и инструктор към международната организация EC Council, като редовно предоставя обучения като CEH, CHFI и CISSP на киберспециалисти в България и по света. Любомир Тулев активно се занимава с етично хакерство, тестване на сигурността на компании, социално инженерство, фишинг симулации и кибер форенсик. Притежава изключително дълбоки познания за различните модули на киберзащита и предоставя специализирани консултации.