Настройка виртуальной машины Kali Linux с помощью инструментов для взлома сети
Обычной виртуальной машине Kali Linux потребуется до 50 ГБ дискового пространства, чтобы правильно предоставить машине оставшееся пространство для дополнительных данных после установки графического интерфейса и сотен предустановленных инструментов. В этой статье я расскажу, как подготовить и подключиться к лёгкой и недорогой виртуальной машине Kali Linux Machine, размещённой в AWS.
Сначала войдите в свою учетную запись AWS и перейдите на домашнюю страницу EC2, затем выберите Launch Instances в правом верхнем углу.
Выберите Browse more AMIs
Найдите Kali Linux в AWS AMI Marketplace.
Если у вас не ограниченный бюджет и вам нужна машина с большей вычислительной мощностью, поставщик рекомендует выбрать t2.medium с 2 виртуальными ЦП и 4 ГБ оперативной памяти, в противном случае будет достаточно t2.micro только с 1 виртуальным ЦП и 1 ГБ оперативной памяти.
Добавьте IP-адрес вашего локального компьютера в правило группы безопасности Allow SSH traffic . Это делается для обеспечения входящего сетевого подключения SSH только с определённого локального компьютера, а не с остального мира.
Ключ проверки подлинности добавляет ещё один уровень безопасности при подключении к размещённому компьютеру. Механизм пары ключей будет аутентифицировать вашу личность на сервере и имеет сложный алгоритм, который труднее взломать, чем традиционный пароль.
Измените хранилище на желаемую ёмкость (от 15 до 30).
Выберите Launch instance в разделе «summary».
Нажмите на Instance ID, выделенный синим цветом.
Status check должен измениться с «Initializing» на «2/2 checks passed».
Перейдя в терминал с вашего локального или клиентского компьютера, можно установить SSH-соединение, используя загруженный файл .pem, содержащий информацию о закрытом ключе.
Первый шаг — убедиться, что демон SSH действительно работает.
sudo service ssh status
Если он запущен, мы можем двигаться дальше, иначе запустить sudo service ssh start
Далее рекомендуется переместить пару ключей в известный файл hosts. Это ещё одна мера безопасности, которая предотвращает атаку «человек посередине», когда злоумышленник может изменить, внедрить или перехватить передаваемые данные.
mv
перемещает файл в указанное место,
ls -lah
показывает права доступа к файлам в указанном удобочитаемом формате.
chmod 400
используется для предоставления владельцу файла разрешений только на чтение, что требуется для запуска соединения. Невозможно изменить права доступа к файлу в зависимости от конкретного каталога, в котором он находится, что является ещё одной причиной для его размещения в каталоге известных хостов или ~./ssh.
Синтаксис для SSH следующий:
sudo ssh -i <key-pair> <server_username>@<public_ipv4_address>
Если действие происходит в рабочем каталоге, оставьте имя файла .pem как есть, в противном случае, находясь не в рабочем каталоге, просто добавьте путь к файлу.
sudo ssh -i <path_to_key-pair>/<key-pair> <username>@<public_ip>
После входа в систему следуйте протоколу обновления и модернизации системы; обеспечение доступности самых последних пакетов в процессе установки инструментов.
sudo apt update && sudo apt install -y
df
может проверить объём доступного места на системном запоминающем устройстве, в нашем случае на EBS (эластичное блочное хранилище).
which
используется для поиска исполняемого файла, связанного с данной командой.
Я написал этот сценарий bash для установки всех необходимых сетевых инструментов, хотя с тех пор я расширил сценарий, включив в него отсутствующие инструменты DNS и не требуя ручного ввода нескольких подтверждений «yes».
#!/bin/bash
sudo apt update
sudo apt install -y metasploit-framework
sudo apt install -y nmap
sudo apt install -y tshark
sudo apt install -y gobuster
sudo apt install -y sqlmap
sudo apt install -y net-tools
sudo apt install -y whatweb
sudo apt install -y dnsutils
Этот сценарий можно скопировать и поместить в свой собственный сценарий bash. Используйте sudo nano <name-of-your-script>
для создания нового файла, cntrl o
для сохранения и cntrl x
для выхода.
Дайте разрешение на выполнение скрипта с помощью sudo chmod +x
, затем введите ./
перед именем файла, чтобы запустить автоматическую установку.
Чтобы подтвердить установку наших инструментов, я предоставил другой сценарий, который проверяет доступность и расположение этих различных инструментов командной строки с помощью знакомой команды which
.
#!/bin/bash
which msfconsole
which nmap
which tshark
which gobuster
which sqlmap
which ifconfig
which whatweb
which arp
which netstat
which route
which nslookup
which ping
which hostname
which whois
which dig
which host
which nslookup
which nsupdate
Вставьте текст в свой редактор.
Дайте скрипту те же права на исполняемый файл, что и раньше: sudo chmod +400
При использовании этого сценария я обнаружил, что такие инструменты, как dig и nslookup, не включены в пакет «net-tools», а перечислены в отдельном пакете с именем «dnsutils», и я добавил этот новый пакет в сценарий tool_installation, как уже упоминалось ранее.
Я использовал apt install dnsutils
сам по себе, а затем снова запустил свой сценарий проверки, подтвердив дополнительные инструменты, которые теперь доступны на моей клиентской машине.
Помимо моего сценария tool_verification, ещё один способ просмотреть, какие инструменты были установлены, — это команда apt list — installed
, которая затем передаётся в команду pr
, которая разбивает результаты на страницы, чтобы просмотреть текст более сжато.
apt list --installed | pr -4 -t
будет распространять текст на 4 столбца следующим образом:
И это всё на данный момент. Следите за предстоящим руководством по взлому сети с использованием этой настройки.