Phishing Frenzy или как не повесится на проводе от мышки.

Apton

Green Team
17.04.2017
40
140
BIT
0
carasel1-840047ae03748ec6a8f596eb8e8a19bf.jpg
Доброго времени суток форумчане!

Сегодня я хочу вам рассказать про свой опыт установки мощного инструмента для фишинга Phishing Frenzy (далее PF).
Установка данного продукта непростой и трудоемкий процесс, особенно для неопытного пользователя, а отсутствие корректной информации по установке вообще выводит из себя на первых парах развертывания PF. Поэтому я, опираясь на опыт потраченного мною времени, написал наиболее корректный способ установки данного продукта. В общей сложности потратил на мануал несколько дней. Весь этот процесс сопровождался кучей эмоций, нецензурной лексики и желанием разломать свой комп. Но я справился и радость от завершения данного процесса так же неописуема.
Ну ладно, перейдем к делу.
Я буду разворачивать PF на Kali-Linux 2017.2.

Прежде всего убедимся что на машине стоит Ruby, Apache и MySql. На Kali обычно они идут в комплекте.
Код:
ruby -v
apache2 -v
mysql -V
lamp-v.png


Если данные компоненты не установлены, то обновите систему и установите все необходимое.
Далее скачаем PF в дирректорию /var/www/:
Код:
git clone https://github.com/pentestgeek/phishing-frenzy.git /var/www/phishing-frenzy
Установим Rails и модуль Passenger, который позволит Apache работать с Ruby.
Код:
gem install --no-rdoc --no-ri rails
gem install --no-rdoc --no-ri passenger
Запустим установку Passenger для Apache.
Код:
passenger-install-apache2-module
Мы получаем ошибку и сообщении об отсутствии некоторых компонентов.
passeng-err.png

Установим необходимые компоненты.
Код:
apt-get install libcurl4-openssl-dev zlib1g-dev libssl-dev libapr1-dev libaprutil1-dev apache2-dev
Повторим установку Passenger для Apache.
После завершения установки получаем следующее сообщение:
apacheconf.png

Не нажимая Enter копируем текст, который необходимо вставить в файл apache2.conf
После добавления и сохранения файла apache2.conf нажимаем Enter и завершаем установку Passenger.
good-pass.png

Теперь необходимо создать конфигурационный файл PF для apache в директории /etc/apache2/site-available/. Я назвал его pf.local.conf.
Вставляем в него следующее содержимое:
Код:
<IfModule mod_passenger.c>
    PassengerRoot %ROOT
    PassengerRuby %RUBY
</IfModule>
<VirtualHost *:80>
    ServerName pf.local
    # !!! Be sure to point DocumentRoot to 'public'!
    DocumentRoot /var/www/phishing-frenzy/public
    RailsEnv development
    <Directory /var/www/phishing-frenzy/public>
      # This relaxes Apache security settings.
      AllowOverride all
      # MultiViews must be turned off.
      Options -MultiViews
    </Directory>
</VirtualHost>
ServerName должно соответствовать названию файла до расширения .conf.
Перейдем к настройке db.
Установим дополнительный пакет для bd.
Если у вас Mariadb, то ставим:
Код:
apt-get install libmariadbclient-dev
Если просто MySql, то:
Код:
apt-get install libmysqlclient-dev
Отлично. Подготовительные работы закончены, переходим к установке. Это именно тот момент, в котором могут начаться проблемы, которые будут выводить из себя...
Прежде настроим MySql.
Код:
mysql -u root -p
create database pf_dev;
grant all privileges on pf_dev.* to 'pf_dev'@'localhost' identified by 'password';
Мы создали базу данных для PF и дали приложению доступ к ней.
Установим Redis-server:
Код:
wget http://download.redis.io/releases/redis-stable.tar.gz
tar xzf redis-stable.tar.gz
cd redis-stable/
make
make install
cd utils/
./install_server.sh
Перейдем в директорию приложения.
Код:
cd /var/www/phishing-frenzy/
Запустим установку Bundle.
Код:
bundle install
Ошибок не должно возникнуть.
При возникновении ошибок необходимо попробовать выполнить следующую команду:
Код:
bundle install --deployment
Если снова возникает ошибка, то скорее всего библиотека, которая вызывает ошибку, уже стоит и необходимо ее удалить и повторить предыдущую команду.
Далее необходим подгрузить все таблицы в базу данных PF, созданную ранее.
Код:
rake db:migrate
rake db:seed
При выполнении команды migrate может возникнуть ошибка.
rake-abort.png

Для ее устранения необходимо выполнить:
Код:
rake db:drop
rake db:create
rake db:migrate
rake db:seed
Так же при выполнении migrate может возникать предупреждение, оно возможно не критично, но лучше исправить.
Warning-migrate.png

Данная ошибка возникает из-за устаревших версий библиотек, прописанных в Gemfile.
В данной ситуации нас интересуют три библиотеки: sass-rails, sprockets и less-rails.
Сначала необходимо проверить последние версии данных библиотек. Это можно посмотреть здесь:
Далее следует отредактировать Gemfile. Он лежит здесь:
/var/www/phishing-frenzy/Gemfile
И вписываем необходимые версии. Если библиотека уже есть в списке, то просто дописываем версию, если нет, то добавляем в конец файла.
Код:
gem 'sass-rails', '~> 5.0.6'
gem 'less-rails', '~> 3.0.0'
gem 'sprockets', '~> 3.7.1'
Далее необходимо выполнить следующие команды:
Код:
bundle install --no-deployment
bundle install
bundle install --deployment
Повторим:
Код:
rake db:drop
rake db:create
rake db:migrate
rake db:seed
Ошибок не должно быть.
Теперь создадим директорию pids для запуска sidekiq,
Код:
mkdir -p /var/www/phishing-frenzy/tmp/pids
и запустим sidekiq.
Код:
bundle exec sidekiq -C config/sidekiq.yml
Если все хорошо, то получим логотипчик без ошибок. Оставляем его запущенным и откроем еще одно окно терминала.
sidekiq.png

Далее отредактируем файл /etc/sudories, чтобы убедиться, что учетная запись www-data может перезагрузить apache.
Добавим в конец файла:
Код:
www-data ALL=(ALL) NOPASSWD: /etc/init.d/apache2 reload
Перейдем в директорию к PF и загрузим шаблоны Efax и Intel по умолчанию, используя rake.
Код:
rake templates:load
Изменим владельца папки PF на www-data, для корректного доступа apache.
Код:
chown -R www-data:www-data /var/www/phishing-frenzy/
Изменим привилегии доступа к папке uploads.
Код:
chmod -R 755 /var/www/phishing-frenzy/public/uploads/
Меняем владельца и привилегии доступа на папке site-enabled.
Код:
chown -R www-data:www-data /etc/apache2/sites-enabled/
chmod -R 755 /etc/apache2/sites-enabled/
Отредактируем файл hosts.
Код:
nano /etc/hosts
Изменим первую строчку в файле, добавив ServerName указанное ранее в файле pf.local.conf.
Код:
127.0.0.1 localhost pf.local
Добавим сервер PF во включенные и запускаем apach.
Код:
a2ensite pf.local
service apache2 start
Отрываем браузер, заходим на и вас должна поприветствовать авторизация.
sign-in.png

Авторизуемся:
Код:
username: admin
password: Funt1me!
И можем захватывать мир))))

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

Пишите если будут вопросы.
Весм добра!
 

woolf1514

Green Team
06.03.2017
181
191
BIT
2
Длинный проработанный мануал вызывает уважение!
Но было бы неплохо добавить хотя бы один пример использования софта.
 
  • Нравится
Реакции: Tihon49

Apton

Green Team
17.04.2017
40
140
BIT
0
Длинный проработанный мануал вызывает уважение!
Но было бы неплохо добавить хотя бы один пример использования софта.
Для примера использования данного софта нужно писать отдельную, такую же длинную тему. Я сделаю это немного позже, когда полностью отработаю весь функционал.
 

woolf1514

Green Team
06.03.2017
181
191
BIT
2
Для примера использования данного софта нужно писать отдельную, такую же длинную тему. Я сделаю это немного позже, когда полностью отработаю весь функционал.

Тогда вообще замечательно! Пока сам установлю и жду твою следующую статью!
 

Ondrik8

prodigy
Green Team
08.11.2016
1 129
3 188
BIT
0
шикарно...Браво! требую продолжения))) требую!

Автор.. крассава!) Исполнил как надо)
 

adm2

Green Team
05.07.2017
50
120
BIT
0
Если при выполнении
Код:
rake db:migrate
и ей подобных, выползет ошибка
1.png

То её необходимо выполнять так:
Код:
bundle exec rake db:migrate
И конфиги сайтов в кали хранятся в, если кто-то будет ставить на этой системе
Код:
/etc/apache2/sites-available/


Спасибо за вторую часть)
 
Мы в соцсетях:

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