• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

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
1
Длинный проработанный мануал вызывает уважение!
Но было бы неплохо добавить хотя бы один пример использования софта.
 
  • Нравится
Реакции: Tihon49

Apton

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

woolf1514

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

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

Ondrik8

prodigy
Green Team
08.11.2016
1 129
3 187
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/


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

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