Gophish: проведение запланированной фишинг атаки в организации

Во любой цепочке безопасности самым слабым звеном был и остается человек. Забывчивые сотрудники, которые пароли хранят в открытом виде, иногда даже приклеивают на монитор; любопытные пользователи, которые не прочь покликать по первой попавшейся кнопке или ссылке. Чем сидеть и ждать, когда кто-то извне взломает и потом принять меры, лучше самому выявить таких нарушителей и предотвратить взлом со всеми его последствиями.

Одной из наиболее распространённых видов атак является фишинг атака. Фишинг это такой вид атаки, когда злоумышленник создает поддельную страницу, которая точь-в-точь копирует легальный сайт. Невнимательный пользователь перейдя по поддельной ссылке попадает на эту страницу. Так как внешний вид похож на доверенный ресурс, никто не догадывается проверить URL. Далее он, как ни в чем не бывало, вводит свои данные и нажимает на соответствующую кнопку. Страница перезагружается и перебрасывает пользователя уже на реальный сайт, а последний думает, что где-то ввёл что-то неправильно и еще раз вводит. А тем временем злоумышленник уже получил нужную ему информацию. Это могут быть пароли, номера кредитных карт и т.п. Данную атаку может провернуть даже начинающий хакер. Но мы лишим его такого удовольствия и сами раскинем свою сеть и посмотрим кто туда попадётся.

В этом деле нам поможет бесплатный фреймворк gophish. Фреймворк мультиплатформенный, но я предпочитаю и советую поднять всё это на Linux машине. Подойдёт абсолютно любая версия.

Перед тем как начать, посмотрите наш ролик "Информационная безопасность компании. Никаких шуток":

Погнали. На сайте разработчика переходим по ссылке Download и качаем нужный нам дистрибутив. На Linux машину можно скачать сразу. Копируем ссылку на zip архив и в терминале вводим:

wget https://github.com/gophish/gophish/releases/download/v0.8.0/gophish-v0.8.0-linux-64bit.zip

Далее разархивируем скачанный файл:

unzip gophish-v0.8.0-linux-64bit.zip

Если в системе нет пакета unzip качаем его. Для Debian/Ubuntu

apt-get install unzip

Для RedHat/CentOS:

yum install unzip

Затем открываем файл config.json любым удобным вам редактором:

nano config.json

Меняем указанные ниже значения

admin_server.listen_url

127.0.0.1:3333

IP/Port админ панели gophish

admin_server.use_tls

False

Нужно ли защищённое соединение с админ панелью

admin_server.cert_path

example.crt

Путь к SSL сертификату

admin_server.key_path

example.key

Путь к приватному ключу SSL

phish_server.listen_url

0.0.0.0:80

IP/Port самого фишинг сервера, куда переходят пользователи по ссылке

Здесь первый параметр я поменял на 0.0.0.0:3333 так как мой сервер находится за межсетевым экраном и доступа извне туда нет. Но при необходимости можно организовать это. Также я отключил требование TLS. Во внутренней сети особой надобности в нем нет.

Далее просто запускаем файл gophish командой:

./gophish

И переходим на админскую часть нашего фишинг сервера. По умолчанию имя пользователя admin, а пароль gophish. Всё это можно потом поменять, но по порядку. При входе открывается панель, где видны проведённые атаки и результаты. Кликнув на иконке статистики можно перейти к детальным отчётам.

Админская часть нашего фишинг сервера

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

Теперь начнём непосредственно настраивать систему и готовить нашу атаку. Пойдем снизу вверх. На вкладке User Management можно создать новых пользователей. Для этого переходим на нужную страницу и нажимает на кнопку Add user:

Add User

Хотя и пользователям можно назначать права, особого смысла тут тоже нет. Потому, что пользователь, во-первых, не видит никакие кампании другого пользователя, во-вторых, имеет те же самые права, что и администратор, с тем лишь отличием, что он не может создавать других пользователей или сбрасывать их пароли. На этой всё странице интуитивно понятно, так что не буду слишком углубляться.

На вкладке Account Settings можно поменять имя пользователя пароль текущего пользователя.

Settings – смена пароля

Следующая вкладка Sending Profiles. Вот тут то и переходим к этапу подготовки нашей атаки. На этой странице настраиваются профили, от имени которых будет идти атака.

Настройка профилей атаки

Вводим название профиля, e-mail, с которого будут рассылаться письма, адрес SMTP сервера и порт, имя пользователя и пароль при необходимости. Тут бы я хотел остановиться поподробней. Когда планировали свою атаку, мы решили создать почту на общедоступном почтовом ресурсе. Но там стоял лимит на число получателей, что в принципе и правильно. Поэтому первая наша кампания провалилась. И тогда мы оперативно создали новую DNS запись на нашем AD и провернули затею. Создание доменной записи я тут не буду объяснять, ибо этим занялись наши сисадмины, за что им спасибо.

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

Тестовый email для фишинга

Затем переходим к созданию самой страницы. Делается это на вкладке Landing Pages. Здесь можно пойти двумя путями: сверстать свою страницу с нуля или же просто скопировать с реального сайта и подкорректировать нужное. Для этого предусмотрен очень удобный инструмент в самой системе.

gophish – создание landing page для фишинга

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

Автоматический парсинг страницы с gophish

Чтобы перехватывать введённые данные, нужно поставить соответствующие галочки. Capture Submitted Data и Capture Passwords. Учтите, что пароли не шифруются и хранятся в базе системы в открытом виде!

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

Редирект с лендинг пейдж с помощью gophish

Следующий шаг создание шаблона письма, для чего переходим на страницу Email Template. Тут тоже можно и самому набрать текст или же импортировать уже готовое письмо.

Создание шаблона письма с гофиш

Ещё один минус, нельзя вставлять фото из локального ресурса, что досадно. Можно только вставить ссылку на картинку, что в моём случае тоже не сработало картинка не открывалась.

Но есть и удобные фичи: переменные например. Ниже приведён список переменных, которые можно указать в тексте, создавая персонализированные письма.

{{.RId}}

Уникальный ID цели

{{.FirstName}}

Имя цели

{{.LastName}}

Фамилия цели

{{.Position}}

Должность

{{.Email}}

Почтовый адрес

{{.From}}

Отправитель

{{.TrackingURL}}

Ссылка отслеживания

{{.Tracker}}

Псевдоним <img src="{{.TrackingURL}}"/>

{{.URL}}

Адрес фишинг ссылки

{{.BaseURL}}

Та же фишинг ссылка, только без RID

Далее создаем пользователя или группу пользователей, которые получат наше письмо. Делается это на вкладке Users & Groups. Здесь тоже разработчики предусмотрели массовый импорт адресов. Если у вас настроен AD и Exchange Server, попросите админов отдать вам список всех акттвных пользователей в формате CSV. Затем импортируйте их в систему.

Создание группы пользователей

И, наконец, переходим к созданию самой атаки. Для этого переходим на вкладку Campaigns. Здесь в принципе дублируется основная панель.

Создание атаки в gophish

Выбираем New Campaign задаём название кампании, из выпадающих списков выбираем ранее созданные шаблоны письма и фейковой страницы, указываем профиль, с которого пойдут письма, и определяем целевую группу. В URL прописываем адрес нашего сервера. Здесь можно написать и IP или же, что еще лучше, задать доменное имя, которое похоже на доверенный ресурс. В этом случае пользователь в адресной строке увидит не IP, а полноценный домен. Также можно выставить дату начала кампании. И, собственно, запускаем кампанию и ждем пока кто-то попадётся на нашу удочку.

Система заботливо показывает текущий статус отправки, и, в случае ошибки, указывает почему не удалось отправить письмо.

На этом, пожалуй все. Система очень лёгкая, интуитивно понятная. Удачи в реализации!

Сейчас на сайте

Сейчас на сайте 0 пользователей и 0 гостей.