«… ты приходишь и просишь что-то у меня, но ты просишь без уважения …»
Вито Корлеоне

Фишинг все еще самый популярный и самый успешный тип хакерских атак. Все просто, атакуются не софт, не сервера, не сети, а самые уязвимые компоненты информационных систем – пользователи. Я часто встречаюсь с фишингом, как единичными, направленным на личные адреса, так и массовыми атаками. В большинстве случаев это неумело составленные письма и коряво сварганенные фишинг страницы. До недавнего времени большинство таких атак срывалось уже на уровне пользователей: письма или сразу игнорировались (так как признаки фишинга были очень явными) или, в худшем случае, письма перенаправлялись в службу поддержки с вопросом «безопасно ли вводить пароль на этой странице?». Конечно, какая-то часть пользователей все-таки попадалась, но в процентном соотношении это был реально минимум. Но буквально на прошлой неделе я столкнулся с фишинг атакой, уровень которой меня удивил. Я провел небольшой анализ, и выяснил как именно она была организована и какие инструменты были при этом использованы.

Надеюсь, это не будет выглядеть как инструкции для подготовки фишинг атак, на самом деле, цель статьи – рассказать о конкретном случае из практики. Я также поделюсь результатами небольшого анализа действий злоумышленников.

Phishing page
Последовательность соблюдать не буду (как уже говорилось, это не руководство к действию), и начну с того, что меня удивило больше всего, а именно поддельная страница, куда направлялись жертвы атаки. Страница была точной копией ADFS страницы жертвы. Кроме визуальной схожести, страница была на домене того же уровня и URL отличалась только одной буквой: реальный адрес ADFS портала был
https://login.contoso.ch/
, адрес фишинг страницы —
https://login.contoso.cf/
(здесь и далее — название фирмы заменено на contoso). И да, протокол совпадал, фишинговая страница использовала SSL с полноценным сертификатом от COMODO!.. Конечно, без Extended Validation, но тем не менее, Chrome отображал адрес «зелененьким».


«Расследование»

Как же так? Совсем глупые «хакеры»! Домены второго уровня и сертификаты COMODO кому попало не дают, их будет легко вычислить! Но это на первый взгляд…

Домен

Google подсказал, что .cf домены раздают бесплатно. В данном случае важна не цена, а возможность приобрести домен, не оставляя следов в виде кредитной карты (или другого способа оплаты). То есть, обычного (левого) адреса электронной почты более чем достаточно. Один из регистраторов, Freenom, помимо cf, предлагает еще и tk, ml, ga. Единственное неудобство, при регистрации не получается указать некоторые адреса бесплатной электронной почты (mail.ru, yandex.ru, yahoo.com) но с большинством других адресов зарегистрировать домен удается.

Электронная почта

Какой почтой пользовался наш фишер для регистрации домена мы узнать не смогли, так как whois server выдал такое сообщение: «Due to restrictions in [] Privacy Statement personal information about the user of the domain name cannot be released». Однако, можно предположить, что protonmail, так как сами фишинг сообщения отправлялись с помощью этого сервиса. Это не удивительно, так как на protonmail можно зарегистрироваться абсолютно анонимно, и, даже если привлечь соответствующие органы для расследования, заставить protonmail сотрудничать, как показывает практика, будет не так-то просто.

SSL сертификат и хостинг

До этого случая мы наивно полагали что поднять web сервер с валидным ssl сертификатом от COMODO, не оставив никаких следов, невозможно. Как оказалось, это не так. В нашем случае атакующие воспользовались Cloudflare. Небольшой анализ предлагаемых функций бесплатного пакета от Cloudflare выявил кладезь возможностей для фишинга:
— Полностью анонимная регистрация. Адреса почты (от того же protonmail) более чем достаточно. Теоретически, они могут выяснить с какого IP адреса была регистрация/вход, но я более чем уверен, что наши злоумышленники с легкостью могли скрыть реальный адрес.
— Бесплатный сертификат от COMODO. Он не только бесплатный, но и выдается за несколько минут без какой-либо дополнительной проверки.
— Скрытие реального IP адреса веб-сервера. Весь трафик идет через Cloudflare (это в первую очередь CDN-сервис)
— SSL offloading. Реальный веб сервер может работать и по незащищенному http, с применением Cloudflare весь трафик пойдет через SSL. Это важно потому что, бесплатный хостинг с HTTP найти реально, а за хостинг с поддержкой SSL надо платить (оставляя следы).

И еще один факт: за редкими исключениями, CA сервисы на домены ga, cf, tk сертификаты не подписывают. В этом случае (даже если вы не фишер) Cloudflare проблему решает, через них сертификат выдается без проблем.

Unvalidated Redirects на службе у Phishing

Теперь самое интересное. В фишинг письме, которое само по себе представляло шедевр социальной инженерии, естественно, была ссылка, но не на фишинг страницу. Ссылка была на сайт компании, на страницу с уязвимостью типа Unvalidated Redirects. Это, возможно, было одной из причин того что письмо прошло все анти-спам фильтры, в письме на адрес user@contoso.ch была единственная ссылка на
http://contoso.ch/vulnerable.php?url=https://login.contoso.cf/


Реально ли их найти?

Без сомнения, сами мы их найти не сможем. Смогут ли их найти «органы»? Можно попробовать запросить данные у регистратора или у Cloudflare и выйти на тот же protonmail. Если они и пойдут на сотрудничество, максимум что можно получить – это IP адрес. Можно ли по IP адресу «вычислить» преступника? Я в этом сомневаюсь.

Итог

Мы не знаем какое количество пользователей «купилось» — сами признаваться не будут. На всякий случай, мы посоветовали всем поменять пароли AD. Самой компании было настоятельно рекомендовано включить двухфакторную авторизацию на ADFS c помощью Custom Authentication.

P.S. И еще, я не уверен, что я бы сам не повелся на это – уровень меня впечатлил.
Поделиться с друзьями
-->

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


  1. Akuma
    29.07.2016 14:02
    +1

    Потрясающе. Разве что не понимаю для чего было брать сертификат от комодо? Cloudflare дает возможность пользоваться «общим» сертификатом бесплатно. Разве что IE6 не будет работать на таком сайте, ну да ладно. В остальном все такой же зелененький значек.


    1. savostin
      29.07.2016 15:31

      Так они и не брали — Cloudflare сам дает.


  1. EminH
    29.07.2016 14:04

    Cloudflare дает возможность пользоваться «общим» сертификатом

    Так там он и был, я имел в виду именно общий. Его тоже выдает Comodo


    1. EminH
      29.07.2016 14:08
      +1

      в поле «issued to» хост cloudflare, а в списке subject alternative все хостящиеся там домены

      Скрытый текст


      1. antreides
        29.07.2016 15:25

        Кстати, есть один нюанс, который может чем-то помочь. Если к одному аккаунту CF привязали несколько доменов, то они все будут в списке subject alternative одного и того же сертификата. Иногда это позволяет выявить связь между доменами. Правда, не абсолютно точно — на один сертификат CF привязывает домены нескольких аккаунтов.
        И еще у всех доменов в одном аккаунте будет одинаковая пара NS-серверов CF.


        1. EminH
          29.07.2016 15:26

          Да, можно выявить соседей. Информация иногда полезная, например если роскомнадзор заблокировал «соседа», то и ваш сайт будет недоступен.


  1. pwrlnd
    30.07.2016 16:47

    а возможность приобрести домен, не оставляя следов в виде кредитной карты

    Так написано, будто в наше время большая проблема оплатить услугу, сохраняя анонимность.


    1. EminH
      30.07.2016 19:21

      Легально — да. Нелегально — за кардинг статья посерезнее чем за фишинг.


      1. pwrlnd
        30.07.2016 20:58

        Причём здесь кардинг? Ничего красть не нужно. Взять симку на вокзале, купить одноразовый телефон и сделать виртуальную карту VISA и пополнить её через терминал — дело пары часов.


        1. EminH
          30.07.2016 21:09

          Понятно. Полезное замечание, я не даже задумывался о такой возможности- у нас без паспорта ни симку ни тем более кредитку не оформишь.


          1. BOT_Kooper
            31.07.2016 18:21

            Можно зарегистрироваться на киви с левым номером и левыми документами(купить паспорт, получив его на руки, можно ~за 2000 р) и оформить виртуальную карту там


            1. pwrlnd
              31.07.2016 23:50

              Только зачем покупать? Найти скан паспорта в интернете — дело пять минут.


              1. BOT_Kooper
                02.08.2016 11:09

                Кому как удобнее будет


  1. dartraiden
    31.07.2016 00:02
    +1

    Chrome отображал адрес «зелененьким».

    «Адрес зелёненький» означает лишь, что соединение между вами и сервером защищено от прослушивания, и ничего более. Это обычный DV-сертификат, от того, выдан он Comodo или Let's Encrypt, не меняется ничего.


    1. EminH
      31.07.2016 09:19

      На фишинг пользователи попадаются даже без https или когда сертификат подменен, и это довольно часто. А если адрес зелененький, то шансы что они введут пароль повышаются в разы.