• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Soft GoPhish. Средство удобной организации Phishing.

logo.png



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

Сегодня я хочу рассказать вам про нужный нам инструмент высокого качества GoPhish.

GoPhish — это инструмент для фишинга с открытым исходным кодом, предназначенный для бизнеса и тестирования на проникновения. Он обладает быстрой и легкой настройкой и обеспечивает легкое управление фишинговыми операциями.

Приступим к работе.
Переходим по ссылке:
Код:
https://github.com/gophish/gophish.git
Здесь представлены релизы для всех OS. Выбираем нужный и качаем. Мне необходим для Linux x64. Качаем и распаковываем.
Код:
Wget https://github.com/gophish/gophish/releases/download/v0.4.0/gophish-v0.4-linux-64bit.zip
unzip gophish-v0.4-linux-64bit.zip
Для удобства переименуем папку с утилитой.
Код:
mv gophish-v0.4-linux-64bit gophish
Отлично. Перейдем к настройке:
Код:
cd gophish/
nano config.json
Все основные настройки содержит открытый нами файл.
Config_gophish.png

Все интуитивно понятно и ясно.
Я поменяю url для админки (если поднимаете на локальной машине, то адрес можно не менять, переходите сразу к запуску), пропишу сертификаты, поменяю порт для фишинг сервера на 443 и включу везде tls. Базу данных менять не буду. Кому интересно, вот ссылка на документацию
conf-go-my.png

Отлично. На этом настройка закончена. Запускаем:
Код:
./gophish
Перейдя по адресу, на котором расположили утилиту, нас встречает авторизация.
admin_panel.png
Код:
Username: admin
Password: gophish
Мы попадаем в стартовую панель. Здесь отображается общая статистика по компаниям.
dashboard.png

Перейдем в настройки и поменяем пароль для админа, а лучше создадим нового пользователя, рекомендую потом удалить админа из базы данных вручную.
Settings.png

Отлично. Перейдем к непосредственной работе с утилитой.
У нас имеются следующие рабочие разделы:
  • Dashboard

  • Campaigns — панель настройки и работы с фишинговыми компаниями.

  • Users & Groups — создание групп и добавление почтовых адресов.

  • Email Templates — добавления шаблонов писем.

  • Landing Pages — настройка и создание фишинговых страниц.

  • Sending Profiles — настройка рассылочных профилей (SMTP).
По мимо этого имеются ссылки на всю документацию: User Guide и API Documentation.
Вся подготовка осуществляется снизу вверх. Приступим.
Переходим в Sending Profiles и создаем новый профиль.
new-send-prof.png

Я добавлю свой профиль gmail.
Проверим отправив тестовое письмо. Я воспользовался временной почтой.
Test-mail.png


open-test-mail.png

Все работает. Идем выше.
Создадим нашу фишинговую страницу. Импортируем с сайта.
land_p.png


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

email-Temp.png



Я написал простое текстовое письмо и добавил три основных момента:
  • {{ .Email }} - в это место подставится почта цели.

  • {{ .URL }} - ссылка на фишинговую страницу.

  • {{ .Tracker }} - картинка на один пиксель, для отслеживания открытия.
Создадим группу целей. Я отправлю так же на временную почту.

new_group.png


И создаем нашу компанию.


new-comp.png

Здесь указываем все созданные нами шаблоны. И можно запускать нашу компанию.
Цель получает письмо, переходит по ссылке и мы получаем наши данные.

targ-mail.png

Statistic.png

Gophish фиксирует все четыре состояния: Отправку, Открытие, Переход по ссылке и Сбор данных.

Все гениально и просто.

Теперь мне хотелось бы добавить от себя несколько нюансов.
1. Для корректной работы и обхода спам фильтров, необходимо обзавестись доменным именем и получить на него легитимные сертификаты. Тогда все будет отлично работать и фиксация открытия и адекватный переход по ссылке.

2. Использовать для рассылки легитимные smtp сервера: gmail, mail, yandex и т. д. Либо поднимать свой smtp и научится использовать подмену отправителя.

3. Все шаблоны писать ручками. Скраперы везде работают по разному, один сайт скопируется идеально, второй не пойми как. Тем более, что при набитой руке верстка страницы и письма займет от силы часа 2. Сейчас у меня все скопировалось плохо, на странице отсутствовали поля ввода данных, поэтому я не смог продемонстрировать этот пункт.

4. Инструмент отлично рассылает вредоносные вложения. За одним минусом, он не отслеживает открытие документа, но это прекрасно видно при получении сессии.

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

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

Спасибо за внимание, всем добра!
 

Вложения

  • targ-mail.png
    targ-mail.png
    4,5 КБ · Просмотры: 614
Последнее редактирование:

dominikanec

Grey Team
31.01.2018
59
61
BIT
0
из-за чего может возникать ошибка "max connection attempts reached" при тестовой отправке письма?
 

erlan1749

Green Team
25.10.2017
121
26
BIT
0
а можно по подробнее как использовать подмену отправителя в GoPhish?
 
U

Underwood

а можно по подробнее как использовать подмену отправителя
Подменяются headers from в профиле отправителя, но это возможно только при использовании кастомного smtp на своем домене, а при использовании упомянутых в статье почтовых сервисов настройки DMARC (DKIM+SPF) не позволят это сделать
Выход из ситуации - найти публичный почтовый сервис без DMARC, либо поднять собственный smtp (рекомендую postfix довольно прост в установке и настройке базового функционала)
PS: Кстати, последняя актуальная релиз-версия gophish-v0.5, автор пофиксил ошибку с задержкой при старте компании и еще один критичный баг, теперь рассылка не прерывается, если при отправке какому-то адресату возникла ошибка.

---- Добавлено позже ----

В качестве дополнения к замечательной статье, хотел бы добавить, что в качестве альтернативы самоподписанному сертификату можно использовать полноценный ssl от LetsEncrypt
Код:
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
Сертбот сам установит необходимые зависимости, а способ подтверждения домена через dns валидацию, будет пожалуй самым удобным в этой ситуации
Код:
./certbot-auto certonly -d {your domain} --manual --preferred-challenges dns
Далее просто следуете указаниям бота и создаете DNS TXT запись в настройках домена вашего регистратора и вносите изменения в конфиг файл
Код:
"phish_server" : {
"listen_url" : "0.0.0.0:443",
"use_tls" : true,
"cert_path" : "[DOMAIN].crt",
"key_path": "[DOMAIN].key"},
 
Последнее редактирование модератором:

Apton

Green Team
17.04.2017
40
140
BIT
0
В качестве дополнения к замечательной статье, хотел бы добавить, что в качестве альтернативы самоподписанному сертификату можно использовать полноценный ssl от LetsEncrypt
Я не стал писать про LetsEncrypt и DNS, чтобы не усложнять статью, ведь основной задача была показать возможности тулзы.
а можно по подробнее как использовать подмену отправителя в GoPhish?
Как и упомянули выше, для подмены отправителя необходимо поднять свой SMTP, и полностью солидарен на счет Postfix. Но использование абсолютно не эффективно, потому что большинство спамфильтров сразу отсекают такие письма. Поэтому проще зарегистрировать временно бесплатный домен в зонах tk, ml, ga, cf или gq с похожим именем и настроить у себя все что нужно (SPF, DKIM, DMARK, TLS), сверстать красивое письмо и с таким раскладом будет намного больше шансов, что письмо дойдет до получателя.
 
  • Нравится
Реакции: erlan1749 и Underwood

dominikanec

Grey Team
31.01.2018
59
61
BIT
0
Все зависит от того, через что отправляешь. Свой SMTP или используешь стандартные почтовые?
Пробовал через разные стандартные. Причем первый раз типо отправлено, а потом вот такая херня. Меняю SMTP сервер и ошибка сразу вылетает. Походу эт сам goPhish глючит.
Кстати, а если я хочу фейковую страницу не на главной разместить, а скажем вот так
что и где прописывать
 
  • Нравится
Реакции: ReQ

Apton

Green Team
17.04.2017
40
140
BIT
0
Пробовал через разные стандартные. Причем первый раз типо отправлено, а потом вот такая херня. Меняю SMTP сервер и ошибка сразу вылетает. Походу эт сам goPhish глючит.
Нет Gophish не глючит. Если отправлять допустим с gmail, то там надо подтвердить, что это ты отсылаешь, и включить разрешение на использование сторонних приложений, возможно на других сервисах такая же история.
Кстати, а если я хочу фейковую страницу не на главной разместить, а скажем вот так
что и где прописывать
К сожалению на такое он не способен. Могу только предложить делать так: Готовишь страницу в Gophish и в ней делаешь скрипт на js с редиректом уже на основной. То есть допустим на том же сервере, где лежит Gophish, в Apache настраиваешь уже сам основной ресурс и все отрабатывает по нему, но тут надо либо с js работать либо с любым другим серверным языком.
 
  • Нравится
Реакции: Underwood

ReQ

Green Team
04.01.2018
19
2
BIT
1
"cert_path" : "[DOMAIN].crt",
"key_path": "[DOMAIN].key"},

Lets Encrypt не создаёт [DOMAIN].key и [DOMAIN].crt

То есть нужно из папки etc/letsencrypt/live перекопировать ключ и сертификат с расширением .pem в папку gophish?
 

ReQ

Green Team
04.01.2018
19
2
BIT
1
Скрипт gophish, не рандомизирует сообщения. От чего всё летит в спам.
 

kravtsov

Green Team
27.06.2017
47
83
BIT
0
Скрипт gophish, не рандомизирует сообщения. От чего всё летит в спам.

На форуме есть практики, делающие рассылки на GoPhish извне? Как использовать внутри контура понятно.

Насколько он вообще целесообразен для этого, учитывая что нельзя изменить настройки фильтрации почты?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!