Статья Создаём виртуальную машину для прохождения курса «SQLiM» и не только…

image_2022-04-10_13-40-03.png


Привет, друзья!
Своим появлением на свет данный пост обязан процессом обучения в Codeby.School вообще, и курсов «SQL-Injection Master» и «Python для Пентестера» в частности…

Фигура первая. Лирическая.​

При старте потока на втором приобретенном курсе, сразу бросились в глаза вопросы в чате потока, на предмет «какую же всё-таки лучше всего операционку использовать/установить при создании лаборатории для прохождения курса?». Где-то это я уже видел, подумалось мне, и решил перечитать чат потока от предыдущего курса. Ну-да! Вот же оно! Те же вопросы и проблемы, что и сейчас! Причём это самые большие по времени и объёму «войны» в чате…​

Я вот лично, поражаюсь выдержке «кураторов», которые вынуждены отвечать на эти вопросы каждые три-четыре-пять месяцев (при старте потока). Причём это то, что видно в открытом доступе, а, что творится у них в личке и представить страшно! При этом подозреваю, что кроме общения с нами, они ещё и другую работу выполняют… Наши «кураторы» вынуждены, соблюдать субординацию с нами, но я то нет!!! Поэтому читая сообщения «продвинутых» пользователей (они-же «свидетели Kali Linux), хочется сделать рука-лицо! Друзья! Зачем Вам при прохождении курса Kali? Нет, ну серьёзно??? Аргумент, из серии «там всё есть», это детский лепет. Никто и никогда не использует в Kali все её возможности на 100%! Ну и нам для прохождения курсов этих возможностей не требуется. Гораздо проще, создать свою машину, без «свистелок и перделок», возможностей которой на 200% хватит для прохождения любого курса (но это не точно – за wapt не отвечаю)! Просто впоследствии читая сообщения тех кто «воткнул» Kali, из серии «а у меня не работает, то, что вы пишете в методичке!, Что мне делать???», и старания «кураторов» поправить «продвинутому» ситуацию, я испытываю некоторое «жжение в филейной части» с немым вопросом на устах «какого…!». Всё же было расписано в начале методички, в чате и плюс ко всему показано на видео. «О чём ты думал?». Хотел показать свою продвинутость? И как оно? Сработало?

На этой оптимистической ноте и предлагаю своё драгоценное мнение (которое никому не интересно, и я могу засунуть его себе «глубоко в карман, и никому не показывать…))), по выбору ОС и практику по созданию лаборатории для прохождения курсов «SQL-Injection Master», «Python для Пентестера», ну и не только!

Фигура вторая. Практическая.​

Нам с Вами для всего «вот этого» достаточно, будет «Linux Mint». Причём практика показала, что версии «Mate» вполне достаточно, и даже за глаза достаточно! Немного телодвижений по навешиванию того, что отсутствуете и «вот оно счастье»!!!

Для пытливых умов, задающихся вопросом почему именно Mate? Рекомендую ознакомиться с существующими редакциями и их отличиями. Может Вы выберите и другую версию, но Mate хватает «за глаза»!

Создавать всё будем в VMware Workstation (кто умеет создавать виртуалки в VMware Workstation, переходит сразу ко второй части)

На сайте куча инструкций как всё сделать в VirtualBox (халява сэр!), но эти инструкции написаны нашими наставниками, и они не могут официально «рекомендовать» нам приобрести продукцию VMware. А я могу)). И даже на «магазин приложений» намекаю, который РКН недавно разблокировал)). Хотя ничто не запрещает развернуть стенд в любой среде виртуализации (ProxMox, Брест и иже с ними).

Приступим’c!
Запускаем нашу VMware Workstation (в дальнейшем в мануале все описанное касается версии 15) и выбираем «Создать новую виртуальную машину»

1649572973070.png


В окне мастера создания новой виртуальной машины, отмечаем тип конфигурации «Выборочный (дополнительно) и кликаем «Далее».

1649573026378.png


При выборе совместимого оборудования ничего не меняя, кликаем «Далее»

1649573048546.png


В следующем окне с помощью кнопки «Обзор» выбираем файл установочного образа операционной системы (в моём случае Linux Mint Mate)

1649573069298.png


Тип гостевой операционной системы указываем «Linux» и версию в выпадающем списке выбираем «Debian 10.x 64-bit»

1649573085433.png


Задаём имя нашей машины и место для её хранения.

1649573100868.png


Указываем кол-во процессоров и используемых ядер для ВМ (выбирайте два ядра).

1649573116562.png


На следующем шаге задаём кол-во оперативной памяти, которым Вы готовы пожертвовать для вашего стенда (не надо жадничать…)

1649573130442.png


Теперь необходимо настроить - как ваша виртуалка будет подключаться к сети. По умолчанию Workstation предлагает вариант NAT. Но! Если вы планируете делать лабораторки во время работы конечно нет!, что ты несёшь!, как ты мог подумать такое!, то после создания машины, можно в настройках изменить тип подключения на «прямое подключение к физической сети». Тогда машина будет получать свой выделенный IP от DHCP сервера вашего домашнего роутера, и настроив на роутере проброс портов, можно будет подключаться к ней напрямую, минуя подключение к хост системе.

1649573149454.png


Следующие два окна, «Выбор контроллеров…» и «Выбор типа диска» пролетаем ничего не трогая)
В окне выбора диска, благосклонно принимаем предложение Workstation «создать новый виртуальный диск»

1649573185916.png


Задаём его размер (20 Гб как правило достаточно), подтверждаем, что хотим сохранить его в виде одного файла и указываем путь где он будет храниться.

1649573205159.png


1649573219834.png


После всех этих манипуляций, нас поджидает окно, где сообщается, что всё готово для создания виртуальной машины. Но если мы вдруг, что-то вспомнили, то можем поменять что-либо в настройках до её создания. Для это необходимо кликнуть по кнопке «Настройка оборудования». Что мы и сделаем, чтобы удалить лишнее оборудования, которое нам Workstation насовала в конфигурацию. Такое как принтер и звуковая карта.

1649573239422.png


Выбираем лишнее устройство и кликаем по «Удалить».

1649573254542.png


И после всех этих манипуляций, вернувшись по нажатию кнопки «Закрыть» в окно создания виртуальной машины, кликаем «Готово».

1649573270298.png


И попадаем в окно созданной машины, где будут её описание и самая главная кнопка в виде зелёного треугольника « Включить виртуальную машину» («Фух! Полдела сделано! Можно отметить!)). Что мы незамедлительно и сделаем. (т.е. включим, а не отметим)

1649573286147.png


И сразу после включения увидим стартовый экран Linux Mint. Где можно в принципе ничего не делать, а просто подождать, и загрузка операционки стартует автоматически. Либо если не терпится нажать Enter.

1649573522953.png


Ahtung! Это не установка операционки, а просто её загрузка (достаточно быстрая) в режиме LiveBoot. А вот после её загрузки, как раз и появляется возможность именно установить ось на диск. Для чего на рабочий стол создатели оси вывели специальный ярлык «Install Linux Mint». Который мы с вами и запустим на исполнение двойным кликом мыши.

1649573542382.png


И попадём в стартовые окна выбора языка системы, раскладки клавиатуры и установки кодеков.

1649573560385.png


1649573566750.png


1649573574354.png


Добравшись до диалога разметки диска, остановим свой выбор на «Стереть…», ведь нам не за что переживать! Диск то виртуальный!

1649573590331.png


Согласимся с записью изменений на диск и выберем часовой пояс.

1649573604119.png


1649573611381.png


После всех этих манипуляций начнётся установка ОС. (пропущен экран создания учётной записи - но тут уж сами!).

1649573663644.png


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

1649573679851.png


На такое заманчивое предложение нельзя не согласиться и при появлении ниже изображенного окна, просто давим Enter, т.к. извлекать нам нечего.

1649573694167.png


И вот оно счастье!

1649573712222.png


Прежде чем обвешивать ОCь всем необходимым, сперва всё таки надо пойти путём best practice, набраться немного терпения и сделать update и upgrade.

apt update

1649573798128.png


apt upgrade

1649573830483.png


Ну вот мы и подошли к основной части. Установим web-server apache.

sudo apt install apache2

1649573861343.png


На папку где будут наши веб страницы и скрипты, навесим права и сменим владельца (при создании машины был создан пользователь student c паролем 111111).

sudo shmod -R 775 /var/www/html
sudo chown -R
student:student /var/www/html
(вместо student пишете своё имя пользователя, которое было создано при установке)

1649573903164.png


1649573910101.png


И добавим apache в автозагрузку: sudo systemctl enable apache2

1649573955362.png


Проверим версию установленного php: php -v

1649573984663.png


Хм. Пусто… Незамедлительно исправим: sudo apt-get install php 7.4

1649574012285.png


И перепроверим: php -v

1649574047830.png


Установим дополнительные пакеты для связки php, mysqli и apache

sudo apt-get install php7.4-mysqli
sudo apt-get install libapache2-mod-php7.4
sudo apt install mariadb-server php-mysql


1649574070427.png


1649574088540.png


1649574095652.png


Добавим в автозагрузку mysql: sudo systemctl enable mysql.service

1649574114087.png


Установим git. Он нам понадобится для sqlmap: sudo apt-get install git

1649574145227.png


Следом клонируем sqlmap: git clone –depth 1 sqlmap-dev

1649574204860.png


Добавляем alias для sqlmap: sudo xed ~/.bashrc

и в конец файла добавляем: alias sqlmap=’python3 /home/student/sqlmap-dev/sqlmap.py’
(вместо student пишете своё имя пользователя, которое было создано при установке)

1649574422025.png


Проверяем…

1649574436795.png


Устанавливаем Burp.
Устанавливаем openjdk.

curl -O https://download.java.net/java/GA/j...6cc26a/36/GPL/openjdk-14_linux-x64_bin.tar.gz

1649574502918.png


Распаковываем: tar xvf openjdk-14_linux-x64_bin.tar.gz

1649574518753.png


Перемещаем папку /opt/: sudo mv jdk-14 /opt/

И выполним эти команды:

sudo update-alternatives --install /usr/bin/java java /opt/jdk-14/bin/java 1
sudo update-alternatives --install /usr/bin/javac javac /opt/jdk-14/bin/javac 1


1649574565676.png


Дальше в браузере переходим на страничку PortSwigger и в меню Products выбираем «Burp Suite Community Edition»

1649574591800.png


Чтобы скачать Burp без регистрации (и СМС) переходим сразу по ссылке Go straight to download

1649574608298.png


И жмакаем Download (подразумевается, что всё это Вы проделываете в системе, куда устанавливается Burp, т.е. Mint. Иначе версия ОС в поле для скачивания может быть другая).

1649574671202.png


После скачивания, переходим в папку загрузки и кликнув правой кнопкой мыши по скачанному файлу, выберем пункт «Свойства»

1649574687584.png


И в открывшемся окне отметим пункт «Позволять выполнение файла как программы»

1649574703307.png


После чего, исполняем двойной клик по скачанному файлу и выбираем пункт «Запустить»

1649574723261.png


Немного подождав (секунд 10-15) увидим классическое окно инсталляции программы, где отщёлкаем все Next-ы, ничего не меняя (ну или меняя если очень хочется).

1649574738308.png


И после этого можем наблюдать его в меню, и там же вывести на рабочий стол.

1649574753346.png


И насладиться хорошо проделанной работой…)))

1649574767308.png


Для прочитавших это «истинных» линуксоидов и сказавших «Фиии…! Не кошерно! Only shell должен использоваться!», отвечу так: вы не одни, а люди сюда пришли учиться! И не все до сегодняшнего дня видели Linux. Кому то привычнее графический режим. Shell им на курсе ещё хватит)

Ну и на сладкое поставим Filezilla. Ближе к концу курса пригодится)

sudo apt install filezilla

1649574788199.png


Ну вот и всё!

Этого достаточно для прохождения курса «SQL-Injection Master». А если надо установить более того, что здесь описано, то отошлю вас к статье одного из преподавателей и создателей курсов explorer (теперь и одного из руководителей Codeby). Руководствуясь которой вы сможете из Mint склепать Kali (ну почти) )

P.S.
Для тех, кто дочитал до конца, bonus-track.
Здесь можно скачать уже готовую машину, на которой уже установлено всё, что описано в этом посте.

Удачи, в прохождении курса (будет нелегко)!!

P.P.S.
Кто-то спросит, а причём здесь курс «Python для Пентестера»?
А притом, что лабораторию всё равно создавать придётся. Правда там для прохождения ДЗ нужно установить IDE самостоятельно, но вооружившись описанным выше, и внимательно читая методички, проблем не возникнет!
 
Последнее редактирование модератором:
Мы в соцсетях: