Кража пароля от Gmail аккаунта

    image
    Позавчера, Oren Hafif, известный багхантер, обнаружил уязвимость в Gmail. Точнее говоря, не одну уязвимость, а целую цепочку, которая позволяет угнать пароль от аккаунта.

    Для тех, кто не хочет читать, но любит смотреть видео может сразу взглянуть на результат.
    Первым делом необходимо было отправить жертве фишинговую ссылку, которая выглядела как настоящая:

    image

    После клика, клиента отправляет на специально сформированную страницу с JavaScript кодом, который благодаря CSRF отправляет запрос на www.google.com/accounts/recovery/verifyuser?jsEnabled=False&preoption=1&Email=' + location.hash.split("Email=")[1] + '&Email2=, затем берет полученный из параметров email и производит редирект на нужную ссылку вида: google.com/accounts/recovery/ktpass?rpu=EVIL_JS. Уязвимым параметром является rpu, который позволяет выполнять произвольный JS код. Далее происходит отрисовка формы ввода пароля.

    image

    Передав в параметре rpu нужный нам JS, можно отследить результат ввода пароля, а затем передать данные на сниффер.
    image

    За данную уязвимость Google заплатил Орену 5100$ по программе вознаграждений за найденные уязвимости. Я думаю достойная награда.

    Всегда есть уязвимые места, даже у такого гиганта как Google. Стоит только поискать.

    Similar posts

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 51

      +50
      Двухфакторая авторизация сводит на нет такие виды уязвимостей.
        +12
        Да и банальная осмотрительность — «Это что за адрес отправителя такой?»
          +9
          Сколько простых юзеров не увидит подвоха?
            +6
            Если не играться специально с фильтрами — такое пойдет в спам с пометкой, что возможен фишинг.
              +14
              Регнул свежий акк, фильтры не трогал. В спам не попало даже с ссылкой(перескринивать было лень).
              Скриншот
          0
          Ох, я бы с вами поспорил. Cookie не httpOnly, на видео показан их вывод в тело страницы, а отослать их на сниффер не составит никакого труда. Да, может быть привязка к ip, например, но это уже зависит от сервиса.
          Так что, двухфакторая авторизация — не панацея.
            0
            Ну значит разработчикам Google есть к чему стремится.
        • UFO just landed and posted this here
            0
            У Гугла есть вариант автономной генерации кодов на смартфонах для двухфакторной авторизации.
              0
              гугл разве не с нормального номера отправляет?
              • UFO just landed and posted this here
                  0
                  У гугла, емнип, есть еще и десяток бэкап-кодов, которые предлагают распечатать на бумажке при включении MFA. Т.е. тут даже смартфона с приложением не нужно, просто заныканная в бумажнике карточка.
                  • UFO just landed and posted this here
              0
              Даже если двухфакторная авторизация отключена, у Gmail есть дополнительный барьер защиты, о котором мало кто знает. Просто пароль от произвольного ящика ничего не даст, нужно еще точно знать страну владельца ящика и использовать прокси с ip этой страны, иначе Gmail при входе запросит дополнительные данные, например, адрес запасного email, и не пустит внутрь, если ответ будет неправильным.
                –3
                Чушь. Ящик регистрировал в РФ, сижу на Кипре — всё пускает.
                  0
                  При первом входе из новой страны gmail запрашивает дополнительную информации. Дальнейшие входы уже будут выполняться как обычно.
                  Возможно, есть и исключения, но у меня gmail всегда спрашивал дополнительную информацию или показывал капчу, когда я первый раз заходил в почту из другой страны.
              +81
              С утра прочитал не багхантер, а бухгалтер, думаю нихренасе у них них гуманитарии отжигают, что же тогда может сделать гуру…
                +12
                Бухгалтер — гуманитарий?!
                  +31
                  Тут просто стереотип уже, что бухгалтер — это обычно предпенсионного возраста женщина с фиолетовыми волосами которая на компьютер смотрит как на НЛО.
                  з.ы. кстати тоже прочитал спросонья как бухгалтер )
                    +1
                    Поэтому лучше использовать русское слово «баголов».
                      +15
                      «дыровед»
                        +6
                        «жукодав»
                          +4
                          «охотники на тараканов»
                            +3
                            Тапочки?
                              +1
                              Тапочки — это основное оружие охотников на тараканов.
                        • UFO just landed and posted this here
                        0
                        Вы наверное бухгалтеров с детства не видели.
                          +2
                            0
                            Каждый день на работе вижу. Никакие это не гуманитарии, а технические работники низшего звена типа меня (кроме главного бухгалтера).
                          –1
                          Если бухгалтерия это часть экономики как науки, то это скорее общественная наука.
                          +3
                          Вы посмотрите, действительно багхантер.
                          Тоже слегка удивился, что бухгалтер нашёл уязвимость, да ещё и в Gmail.
                            0
                            Ой да ну прямо, на первой же картинке крупным шрифтом Hatechnion — выпускник электроинжинерного факультета зарегистрировал подопытный аккаунт на название своей альма-матер.
                            +1
                            Тоже удивлён был. Но только после вашего комментария увидел что там не бухгалтер было написано.
                            +2
                            После клика, клиента отправляет на специально сформированную страницу с JavaScript кодом, который благодаря CSRF отправляет запрос на


                            Коллеги, подскажите старику, плохо разбирающемуся в вопросах безопасности — а каким образом у них джаваскрипт на левой странице так спокойно ходит к google.com как к себе домой? Ведь специально для предотвращения этого сделаны всякие «Access-Control-Allow-Origin» и прочие защиты. Если я размещу в интернете страничку, которая делает $.ajax( 'google.com/accounts/recovery/verifyuser' ) — оно ведь не сработает.
                              0
                              Так уязвимый скрипт у них на домене :) это как скрипт, который оставили сами разработчики, только передается как параметр урла. Фильтр xss не ловит, так как вывод внутри скрипта другого.
                                +1
                                Он разве на левой? Там JSку можно внедрить в параметр, и эта JSка будет работать уже внутри страницы на этом сама домене, а уж отправить на сторону пасс — плевое дело, банально img с параметром грузануть.
                                А по факт — «Первым делом необходимо было отправить жертве фишинговую ссылку, которая выглядела как настоящая:», понятно что там дальше уязвимость, но если человек ходит по всем левым ссылкам из письма, то тут мало что спасет.
                                  0
                                  Насколько я понимаю из описания:

                                  После клика, клиента отправляет на специально сформированную страницу


                                  По ссылке из письма клиент переходит на страницу атакующего, с которой уже и начинается атака. Или под словами «специально сформированная страница» подразумевается страница гугла? O_O.

                                  А по факт — «Первым делом необходимо было отправить жертве фишинговую ссылку, которая выглядела как настоящая:», понятно что там дальше уязвимость, но если человек ходит по всем левым ссылкам из письма, то тут мало что спасет.


                                  Это все понятно — с тем же успехом ему можно поставить ActiveX, затребовать elevation и отформатировать диск. По самой уязвимости вопросов нет, все понятно. Но я совершенно не понимаю как они со «специально сформированной страницы» отправляют запросу гуглу и те обрабатываются :(. Это идет вразрез с моими довольно скромными знаниями о том, как сейчас работает HTTP — потому и спрашиваю :).
                                    0
                                    Именно специально софрмированная внедренным JS скриптом страница на гугловом домене, XSS из-за того что один из параметров никак не проверяется (не проверялся).
                                    Посмотрите внимательно на скриншоты, там видно с гуглового домена никто не уходит, а JS-ка внедряется через rpu параметр GET запроса.
                                      0
                                      А, понятно. В статье «rpu» упоминается как последнее действие — но на самом деле это то, с чего все начинается?
                                        +1
                                        1) формируем ссылку с JSкой в параметре rpu
                                        2) отправляем html письмецо со ссылкой, скрытой под нечто более красивое
                                        3) юзер переходит по ссылке, а там google домен и далее не всем понятные кракозябры*
                                        4) показываем юзеру красивую страничку в гуглостиле, с просьбой вбить пароль, данные кредитки, кличку любимой собаки и т.д. на что фантазии хватит
                                        5) отправляем любые параметры по нужным адресам, а юзеру показываем «спасибо, всё хорошо» и редиректим обратно в почту

                                        * признаться я бы и сам мог на такую ссылку попасться, т.к. обычно не смотрю на параметры, доверяя домену, да и малоли сам гугл туда чего-то пишет, но главное правило — не переходить по непонятным ссылкам строго блюду, иногда, дабы удовлетворить параною, смотрю тело письма, в поисках каких то странностей
                                        ** и да, у меня однажды увели пароль от гугла, но дырка была в том, что был привязан давно забытый ящик на mail.ru, в котором по неосторожности был пароль qwerty, примерно в это же время появилась 2х факторная авторизация
                              • UFO just landed and posted this here
                                  +4
                                  Остатки ему оплатит поднявшаяся репутация.
                                    +4
                                    и карма.
                                    • UFO just landed and posted this here
                                    0
                                    Думаю не больше, у тех кто хранит действительно важную почту уже давно настроена двухфакторая авторизация.
                                      +4
                                      Вообще, по их правилам, данная бага стоит 5000$.
                                      Во-первых, они не принимают никакие вектора, работающие через фишинг или соц. инженерию (http://www.google.com/about/appsecurity/reward-program/ — "...that the scope of the program is limited to technical vulnerabilities in Google-owned web applications...")
                                      Во-вторых, CSRF тут не нужен, так как уже есть javascript на нужном домене (всё происходит на google.com, в отдельности CSRF не имеет в данном случае импакта). Так что непонятно в статье про «целую цепочку уязвимостей». Их всего две :)

                                      Получается, здесь просто одна XSS на «highly sensitive service», за которую и платят $ 5000 по их же правилам.
                                      –5
                                      вчера пришло смс от гугла что кто то пытался зайти в мой акк
                                        +12
                                        Держи нас в курсе, это очень интересно!
                                          +1
                                          Напишите об этом пост.

                                        Only users with full accounts can post comments. Log in, please.