Атака на HackerOne, якая дазволіла атрымаць доступ да закрытых справаздач аб уразлівасцях

Платформа HackerOne, якая дае магчымасць даследчыкам бяспекі інфармаваць распрацоўшчыкаў аб выяўленні ўразлівасцяў і атрымліваць за гэта ўзнагароды, атрымала справаздача аб уласным узломе. Аднаму з даследнікаў атрымалася атрымаць доступ да ўліку запісу аналітыка па бяспецы кампаніі HackerOne, які мае магчымасць прагляду зачыненых матэрыялаў, у тым ліку са звесткамі аб яшчэ не ўхіленых уразлівасцях. За час існавання платформы праз HackerOne даследчыкам у суме было выплачана 23 млн даляраў за выяўленне ўразлівасцяў у прадуктах больш за 100 кліентаў, сярод якіх Twitter, Facebook, Google, Apple, Microsoft, Slack, Пентагон і ВМС ЗША.

Характэрна, што захоп уліковага запісу стаў магчымы з-за чалавечага фактару. Адзін з даследнікаў адправіў на разгляд заяўку аб патэнцыйнай уразлівасці ў HackerOne. Аналітык HackerOne падчас разбору заяўкі паспрабаваў паўтарыць прапанаваны метад узлому, але праблему прайграць не ўдалося, і аўтару заяўкі быў адпраўлены адказ з запытам дадатковых дэталяў. Пры гэтым аналітык не заўважыў, што разам з вынікамі няўдалай праверкі па недаглядзе адправіў змесціва сваёй сесійнай Cookie. У прыватнасці, падчас дыялогу аналітык прывёў прыклад выкананага ўтылітай curl HTTP-запыту, які ўключае HTTP-загалоўкі, з якіх забыўся пачысціць змесціва сесійнай Cookie.

Даследчык заўважыў дадзеную промах і змог атрымаць доступ да прывілеяванага ўліковага запісу на сайце hackerone.com, проста падставіўшы заўважанае значэнне Cookie без неабходнасці праходжання прымяняецца ў сэрвісе шматфактарнай аўтэнтыфікацыі. Атака стала магчымай, бо на hackerone.com не ўжывалася прывязка сеанса да IP ці браўзэру карыстача. Праблемны сесійны ідэнтыфікатар быў выдалены праз дзве гадзіны пасля публікацыі справаздачы аб уцечцы. За інфармаванне аб праблеме даследчыку вырашана выплаціць 20 тысяч долараў.

HackerOne ініцыяваў аўдыт для аналізу магчымага ўзнікнення падобных уцечак Cookie у мінулым і для ацэнкі патэнцыйных уцечак зачыненых звестак аб праблемах кліентаў сэрвісу. Аўдыт не выявіў фактаў уцечак у мінулым і вызначыў, што які прадэманстраваў праблему даследнік мог атрымаць звесткі пра прыкладна 5% з усіх прадстаўленых у сэрвісе праграм, да якіх быў адчынены доступ аналітыку, сесійны ключ якога быў скарыстаны.

Для абароны ад здзяйснення падобных нападаў у будучыні рэалізавана прывязка сесійнага ключа да IP-адрасу і фільтраванне сесійных ключоў і токенаў аўтэнтыфікацыі ў каментарах. У далейшым прывязку да IP плануюць замяніць на прывязку да прылад карыстача, бо прывязка да IP няёмкая для карыстачоў з дынамічна выдаванымі адрасамі. Таксама вырашана пашырыць сістэму логаў з інфармацыяй аб доступе карыстальнікаў да дадзеных і рэалізаваць мадэль грануляванага доступу аналітыкаў да дадзеных кліентаў.

Крыніца: opennet.ru