Редактор Habrahabr, Geektimes
0,0
рейтинг
18 января в 20:44

Разработка → Пользователи LastPass уязвимы для простейшей фишинговой атаки в Chrome

image

Один из наиболее популярных менеджеров паролей, LastPass, несколько раз испытывал проблемы с безопасностью. К примеру, сервис взломали летом 2015 года, после чего пользователям пришлось менять свои данные для доступа к LastPass. В ноябре прошлого же года специалисты по информационной безопасности обнаружили у сервиса ряд багов, позволявших злоумышленникам получить доступ к учетным данным пользователей.

Теперь же обнаружилось, что и двухфакторная защита сервиса не спасает, если злоумышленник будет использовать простейшую фишинговую атаку. Специалист по информационной безопаности Шон Кессиди, обнаруживший уязвимость, придумал и название для нее — «LostPass». Для того, чтобы продемонстрировать уязвимость, специалист создал специальный инструмент.

Все дело в том, что LastPass при определенных условиях показывает пользователю уведомление о том, что сессия истекла и необходимо снова залогиниться. Если злоумышленник будет использовать на определенного рода ресурсах поддельные уведомления, двухфакторная аутентификация пользователю не поможет — его аккаунт будет скомпрометирован. Поддельная форма, выглядящая так же, как и обычная форма для ввода учетных данных LastPass, может обмануть многих, тем более, что и адрес у нее будет схож с техническим url сервиса.

image

В результате атакующий без проблем сможет верифицировать полученные данные, а в некоторых случаях — запросить код двухфакторной аутентификации, используя LastPass API. Интересно, что работает все это только в браузере Chrome. В других браузерах используется несколько иной способ вывода уведомлений сервиса.

По словам Кессиди, он уже обратился к разработчикам сервиса, и получил от них ответ о том, что это не уязвимость, а фишинг. По мнению специалиста, если представители компании не изменят принцип вывода уведомлений в Chrome, пользователи LastPass будут подвергаться опасности. Для того, чтобы не утерять свои данные, Кессиди советует использовать ввод данных на странице сервиса. Кроме того, хорошим выходом является аутентификация через приложение.
marks @marks
карма
170,2
рейтинг 0,0
Редактор Habrahabr, Geektimes
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Разработка

Комментарии (25)

  • +18
    Я думаю можно проще сформулировать:
    «Пользователи, хранящие пароли в интернете, уязвимы.»
    • 0
      А где вы их храните, например?
      • +13
        В чертогах разума.
        //Извините, не смог удержаться.
        • +3
          А пользователи, хранящие пароли в чертогах разума уязвимы к перебору сильнее тех, кто генерит новые пароли регулярно. А таковые уже в чертогах не сохранить.

          Вообще пароли в принципе обречены, т.к. строки, достаточно простые для запоминания человеком, априори слишком просты для компьютеров.

          Пароли не нужны. Нужны не пароли.
          • 0
            Двухфакторная авторизация, как вариант. И генерирование кодов приложением на телефоне. А если уж злоумышленник ради вашей информации находит возможность и пароль узнать, и телефон получить, то о защите такой информации уже другой разговор должен быть.
          • +2
            А пользователи, хранящие пароли в чертогах разума уязвимы к перебору сильнее тех, кто генерит новые пароли регулярно. А таковые уже в чертогах не сохранить.

            Верно лошадь батарея скрепка.

            «Движенья нет» — сказал мудрец брадатый.
            Другой смолчал и стал пред ним ходить.
            Сильнее он не мог бы возразить —
            Хвалили все ответ замысловатый.
            • 0
              Здесь не учитывается перебор с использованием словарей
              • +2
                Учитывается. Здесь считается, что слово даёт всего 2^11 бит, т.е. словарь придумывающего пароль может иметь всего 2048 слов (в жизни — гораздо больше), но за счёт того, что слов-то четыре, получаем 2^44.

                Я привёл этот комикс как возражение к тезису о слабости чертогов разума. Ничего они не слабые, если их правильно использовать.
                • +1
                  Более-того, незначительные индивидуальные изменения алгоритма «в чертогах разума» позволяют значительно увеличить ту самую энтропию.

                  К примеру всего 2 правила:
                  • Начинаем и заканчиваем любимым символом (здесь типа regexp)
                  • Заменяем гласные в конце или последнюю букву цифрами (здесь подряд 123...)

                  превращают 244 в 2113

                  correcthorsebatterystaple    — 244  = 17.592.186.044.416
                  ^correc1hors2batter3stapl$  — 2113 = 10.384.593.717.069.655.257.060.992.658.440.192

                  Добавив еще всего одно простое правило «вторая буква второго слова в апперкейсе», увеличиваем энтропию уже с 1034 как минимум до 2126 ~ 1038 (на самом деле в реале гораздо больше, ибо почти уже только «тупой» брут по 6-битным символам), но думается мне что-то около 2136 ~ 1040:

                  ^correc1hOrs2batter3stapl$

                  Т.е. 4-е слова уже и не нужны (можно остановиться на двух-трех в меру длинных).
                  Кстати, английский — язык в основном с короткими словами.

                  Мне, например, почему-то гораздо легче запомнить три длинных слова + мои стандартные правила к ним, чем четыре слова (и их последовательность).
                  Ну и наконец — пальцы тоже помнят…

                  А хранить или не хранить где пароли (дополнительно) — одно другому не мешает…
                  • 0
                    У меня, кстати, давно существует идея написать систему аутентификации с паролем по формуле:
                    (случайное прилагательное) + (случайное существительное) + (случайное наречие) + (случайный глагол) + (случайное прилагательное) + (случайное существительное)
                    Например:
                    грустный комод двусмысленно пинает фиолетового слона
                    Запоминается влёт (известное свойство памяти: ерунда запоминается быстро и накрепко). Энтропии — никак не меньше 64 бит.
          • 0
            У меня, например, в чертогах разума хранится один единственный набор символов, который соль, к нему прибавляется строка, содержащая адрес сайта, а получившаяся строка хешируется одним из распространённых алгоритмов, в результате получается пароль, который и не пароль вовсе. Но я полностью согласен, что это тоже костыли и что нужна нормальная аутентификация по ключам.
      • +5
        В локальном криптоконтейнере (KeePass).
        Да, криптоконтейнер хранится в интернете (dropbox), но при этом сам KeePass с интернетом никак не связан вообще — значит, никакой фишинг, никакие сетевые уязвимости ему самому не страшны. Только вирус, перехватывающий клавиатуру и буфер обмена… но это уже другой уровень)
        • 0
          Только вирус, перехватывающий клавиатуру и буфер обмена…
          Драг & Дроп же…
          Или то про мобильный имелось ввиду?
        • 0
          А насколько устойчив к взлому файл с паролями KeePass?
          • 0
            Ключ получается из пароля алгоритмом, похожим на PKDBF2, данные зашифрованы AES-256 CBC.
          • 0
            Можно сертификатом и паролем, вообще сложно в лоб.
        • –5
          У KeePass даже сайт не на https, как с него можно что-то скачивать и надеятся на безопасность?
          • 0
            Ставьте из репозиториев.
      • –1
        ownCloud на собственном сервере с включенным шифрованием, Grade A+ настройки SSL, KeePass контейнер собственно в ownCloud и KeePass-клиент натравленный на https://my.host.name/remote.php/webdav/filename.kdbx. Очень удобно. Не сильно опаснее локального KeePass контейнера.
    • +3
      ИМХО, пользователи делятся на тех, кто пользуется менеджерами паролей, и тех, у кого один пароль на всё. Ну и 0.1% с чертогами разума =). При всей спорности и уязвимости менеджеров, они сильно надёжнее второго варианта.
      Про хранение в интернете, кстати. Если верить схеме, по которой LastPass хранит пароли, нигде, кроме пользовательского девайса, пароли в расшифрованном виде не появляются. Так что «в интернете» всё хранится в зашифрованном виде.
  • +10
    А что ж самый основной скриншот не запостили — весь фишинг строится на том, что Хромиум не выделяет никак протокол расширения и можно делать следующее — содрать страницы расширения и захостить его на домене похожем на протоколб например «chrome-extension.pw»

    image

    Но с таким же успехом можно и фишить настройки на chrome://settings/passwords или установленные расширения на chrome://extensions

    Никакой принципиальной разницы между фишингом конкретно ластпасса и фишингом чего-то другого в хроме нету. Просто ластпасс дает доступ к большему количеству секретов, т.к. можно проксировать ответы пользователя к API.LastPass. Но проблема то в хромиуме, кстати такого же рода как и мимикрия расширений — можно содрать чужое расширение и пользователи будут его ставить, т.к. никто на длинный-мнемонический-идентификатор-расширения не смотрит…
    PS: оригинал статьи тут
    • +2
      Спасибо. Какой-то отстойный перевод: ссылки на оригинал нет, сути атаки (не заметить адрес — это надо постараться) нет, замечания, что LastPass вчера принял меры — тоже нет.
  • +1
    Использую LasPass + одноразовые пароли yubikey. В статье о защите от фишинга они пишут, что при вводе мастер пароля на неизвестном им сайте должно выходить предупреждение об опасности. Тут подробнее. Я в безопасности?
    • 0
      А зачем вы это у «переводчика» спрашиваете 8-) или это был сарказм?
      спасибо за линк, полезно перечитать о мерах ЛП по защите от такого.
  • 0
    При потере сессии расширение LP просит ввести только код второго фактора. У меня так работает. Или у кого-то оно просит мыло/пароль?

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