В этой лабораторной работе вы научитесь ориентироваться в системе и использовать основные инструменты безопасности Kali Linux для задач тестирования на проникновение и обеспечения кибербезопасности. Это практическое занятие проведет вас через процесс просмотра предустановленных инструментов с помощью dpkg -l, запуск платформы Metasploit через msfconsole, выполнение сетевого сканирования с помощью nmap, поиск уязвимостей веб-серверов с помощью nikto, работу с документацией через страницы man и сохранение результатов команд в файлы. Данная работа разработана для новичков и представляет собой пошаговое введение в Kali Linux внутри изолированной контейнерной среды на виртуальной машине LabEx. При открытии терминала вы будете автоматически подключены к оболочке контейнера Kali Linux и сможете сразу приступить к практике.
Просмотр предустановленных инструментов с помощью dpkg -l
На первом этапе вы научитесь просматривать список предустановленных инструментов и пакетов в вашей системе Kali Linux, используя команду dpkg -l. Это базовый, но важный навык, позволяющий понять, какое программное обеспечение доступно для тестирования на проникновение и системного администрирования.
Когда вы открываете терминал в среде LabEx, вы автоматически подключаетесь к оболочке контейнера Kali Linux. Вам не нужно запускать контейнер вручную или входить в него — среда уже полностью готова к работе.
Давайте начнем с выполнения команды для вывода списка всех установленных пакетов. Введите следующую команду в терминале и нажмите Enter:
dpkg -l
Эта команда выводит подробный список всех установленных пакетов, включая их названия, версии, архитектуру и краткое описание.
Пример ожидаемого вывода (содержимое может отличаться):
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============================-====================-============-========================================================
ii adduser 3.118 all add and remove users and groups
ii apt 2.2.4 amd64 commandline package manager
ii base-files 11.1+deb11u7 amd64 Debian base system miscellaneous files
...
В этом выводе отображается статус каждого пакета (ii означает «установлен») и другие детали. Поскольку список очень длинный, он будет прокручиваться в терминале. Для навигации по списку используйте клавиши со стрелками вверх и вниз или колесико мыши.
Чтобы сделать вывод более удобным, вы можете отфильтровать его для поиска конкретных инструментов. Например, чтобы найти пакеты, связанные с apt, введите следующую команду:
dpkg -l | grep apt
Пример ожидаемого вывода:
ii apt 2.2.4 amd64 commandline package manager
Это отфильтрует список и покажет только те пакеты, в названии или описании которых встречается apt. Такая техника помогает быстро находить нужные инструменты. Понимание того, какие средства доступны в системе — это фундамент, необходимый перед переходом к специфическим задачам безопасности.
Установка и запуск Metasploit через msfconsole
Теперь, когда вы ознакомились с доступными инструментами, давайте перейдем к запуску одной из самых мощных платформ для тестирования на проникновение — Metasploit — с помощью команды msfconsole. Этот шаг расширяет ваши знания о системных инструментах и знакомит с ключевой платформой для проверки безопасности.
Metasploit — это фреймворк, используемый для разработки, тестирования и выполнения эксплойтов на целевых системах. msfconsole — это его интерфейс командной строки, позволяющий взаимодействовать с фреймворком, настраивать параметры и запускать различные задачи по безопасности.
Сначала убедитесь, что Metasploit установлен, обновив список пакетов и установив необходимый пакет. Введите следующие команды в терминале контейнера Kali Linux, нажимая Enter после каждой:
apt update
apt install -y metasploit-framework
Эти команды обновляют базу данных пакетов и устанавливают Metasploit, если он еще не установлен. Дождитесь завершения процесса; это может занять несколько минут в зависимости от системы.
После установки запустите консоль Metasploit, введя следующую команду:
msfconsole
При первом запуске инициализация может занять некоторое время, так как происходит настройка базы данных и загрузка модулей. Пожалуйста, проявите терпение.
Пример ожидаемого вывода:
Metasploit Framework
...
msf6 >
Приглашение msf6 > означает, что вы находитесь внутри консоли Metasploit и готовы к работе. Число (например, 6) указывает на версию Metasploit.
На данный момент выполнять какие-либо действия в Metasploit не требуется. Выйдите из консоли, введя следующую команду в строке msf6 >:
exit
Вы вернетесь к обычному приглашению терминала. Запуск и выход из msfconsole помогает привыкнуть к доступу к этому инструменту, который является критически важным для многих аспектов тестирования на проникновение.
Установка и выполнение базового сканирования Nmap
После знакомства с Metasploit сосредоточимся на сетевом сканировании с помощью nmap — универсального инструмента для исследования сети и аудита безопасности. Этот этап научит вас определять открытые порты и службы в системе, что является критически важным навыком.
nmap (сокращение от Network Mapper) используется для обнаружения хостов и служб в сети путем отправки пакетов и анализа ответов. Он помогает выявить потенциальные уязвимости, показывая, какие ресурсы доступны на целевой системе.
Сначала убедитесь, что nmap установлен в вашем контейнере Kali Linux. Введите команду для обновления списка пакетов и установки nmap:
apt install -y nmap
Дождитесь завершения установки; обычно это занимает всего несколько секунд. Теперь вы готовы к базовому сканированию. Поскольку сканирование внешних систем без разрешения неэтично и незаконно, мы будем сканировать localhost (ваш собственный контейнер) в качестве безопасной цели.
Для начала запустим простой веб-сервер в контейнере:
apt install -y apache2
service apache2 start
Затем введите следующую команду:
nmap localhost
Эта команда выполняет сканирование по умолчанию для обнаружения открытых портов и активных служб в вашей локальной системе.
Пример ожидаемого вывода:
Starting Nmap 7.91 ( https://nmap.org ) at ...
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
80/tcp open http
...
Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds
В этом выводе фраза Host is up подтверждает, что цель доступна. В таблице перечислены открытые порты (например, 80/tcp для HTTP), их состояние (open означает «доступен») и связанная с ними служба. Эта информация жизненно важна для понимания того, какие сервисы запущены в системе. Сканируя localhost, вы безопасно попрактиковались в использовании nmap, подготовившись к более сложным задачам сетевой разведки.
Установка и сканирование уязвимостей веб-сервера с помощью Nikto
Развивая навыки сетевого сканирования, на этом этапе мы познакомимся с nikto — инструментом для сканирования веб-серверов на предмет уязвимостей и ошибок конфигурации. Это неотъемлемая часть тестирования безопасности веб-приложений.
nikto — это инструмент с открытым исходным кодом, который проверяет веб-серверы на наличие известных проблем, таких как устаревшее ПО, небезопасные файлы и другие потенциальные бреши в защите. Он широко используется специалистами по безопасности для оценки защищенности веб-ресурсов.
Сначала установите nikto в контейнер Kali Linux:
apt install -y nikto
Дождитесь завершения установки. После этого мы просканируем localhost в качестве безопасной цели, чтобы продемонстрировать работу инструмента. Даже если на localhost не запущен сложный веб-сервер, инструмент покажет процесс попытки подключения, что полезно для обучения. Введите команду:
nikto -h localhost
Параметр -h указывает хост для сканирования (в данном случае localhost), по умолчанию проверяется стандартный порт веб-сервера (обычно 80).
Этот вывод показывает, как nikto пытается подключиться к веб-серверу на localhost. Если сервер не запущен, программа сообщит о невозможности подключения. Если бы сервер был активен, вы бы увидели список потенциальных уязвимостей. Этот шаг помогает понять, как использовать nikto для поиска слабых мест в веб-приложениях.
Доступ к документации инструментов через страницы man
Теперь, когда вы поработали с такими инструментами, как nmap и nikto, важно научиться самостоятельно находить информацию о них. На этом этапе вы научитесь использовать страницы man (руководства) для изучения подробных сведений о командах и инструментах в Kali Linux.
Страницы man (сокращение от manual) — это исчерпывающие справочные руководства для большинства инструментов и команд Linux. Они содержат подробные описания, доступные опции, примеры и инструкции по использованию, что делает их бесценным ресурсом.
Установите пакет man, если он отсутствует:
apt install -y man
Для примера откроем справочную страницу для nmap. Введите в терминале:
man nmap
Это откроет руководство по nmap в интерфейсе просмотра (пейджере), похожем на less, где вы сможете прочитать подробную документацию.
Пример ожидаемого вывода:
NMAP(1) Nmap Reference Guide NMAP(1)
NAME
nmap - Network exploration tool and security / port scanner
SYNOPSIS
nmap [Scan Type...] [Options] {target specification}
DESCRIPTION
Nmap ("Network Mapper") is an open source tool for network exploration and
security auditing. It was designed to rapidly scan large networks, although
it works fine against single hosts. Nmap uses raw IP packets in novel ways
to determine what hosts are available on the network, what services (application name and version) those hosts are offering, what operating systems (and
OS versions) they are running, what type of packet filters/firewalls are in
use, and dozens of other characteristics.
...
Используйте стрелки вверх и вниз для навигации по тексту. Вы увидите разделы с описанием синтаксиса, флагов и примеров. Чтобы выйти из справочной страницы, нажмите клавишу q.
Умение пользоваться страницами man дает вам возможность самостоятельно изучать функции любого инструмента. Это особенно полезно в Kali Linux, где инструменты имеют множество параметров, которые могут понадобиться в процессе работы.
Перенаправление вывода Nmap в файл
На заключительном этапе вы научитесь сохранять результаты работы команд в файл. Это логическое продолжение работы с nmap, которое знакомит вас с перенаправлением вывода — фундаментальным навыком Linux для документирования результатов.
Перенаправление вывода в Linux позволяет сохранять результаты выполнения команды в файл вместо того, чтобы просто выводить их на экран. Для этого используется символ >, который записывает данные в указанный файл (перезаписывая его, если он уже существует).
Давайте выполним еще одно сканирование localhost с помощью nmap и сохраним результаты в файл nmap_scan.txt. Введите команду:
nmap localhost > /root/nmap_scan.txt
Символ > перенаправляет вывод команды nmap localhost в файл /root/nmap_scan.txt. Вы не увидите результатов сканирования в терминале, так как они записываются в файл.
Чтобы убедиться, что данные сохранены, просмотрите содержимое файла с помощью команды cat:
cat /root/nmap_scan.txt
Пример ожидаемого вывода:
Starting Nmap 7.91 ( https://nmap.org ) at ...
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
80/tcp open http
...
Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds
Это подтверждает, что результаты сканирования успешно сохранены в /root/nmap_scan.txt. Сохранение вывода в файлы — это стандартная практика при тестировании на проникновение, позволяющая анализировать или передавать отчеты без необходимости повторного запуска команд.
Резюме
В ходе этой лабораторной работы вы научились исследовать и использовать основные инструменты безопасности в Kali Linux. Вы начали с просмотра установленных пакетов через dpkg -l, установили и запустили Metasploit через msfconsole, провели сетевое сканирование с помощью nmap, проверили веб-уязвимости через nikto, научились работать со справочными страницами man и сохранять результаты работы в файлы. Эти базовые навыки закладывают прочный фундамент для дальнейшего изучения кибербезопасности и сетевого анализа в контролируемой среде.