Изучение инструментов безопасности Kali Linux

Kali LinuxKali LinuxBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этой лабораторной работе вы узнаете, как ориентироваться и использовать основные инструменты безопасности в Kali Linux для тестирования на проникновение и задач кибербезопасности. Эта практическая сессия проведет вас через просмотр предустановленных инструментов с помощью dpkg -l, запуск фреймворка Metasploit с использованием msfconsole, выполнение сетевого сканирования с помощью nmap, сканирование веб-серверов с помощью nikto, доступ к документации инструментов через man страницы и сохранение результатов команд в файлы. Эта лабораторная работа, разработанная для начинающих, представляет собой пошаговое введение в Kali Linux в контролируемой контейнерной среде на LabEx VM. Когда вы откроете терминал, вы будете автоматически подключены к оболочке контейнера Kali Linux и готовы начать практиковаться.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL kali(("Kali")) -.-> kali/KaliGroup(["Kali"]) kali/KaliGroup -.-> kali/term_ops("Kali Terminal") kali/KaliGroup -.-> kali/file_ctrl("File Management") kali/KaliGroup -.-> kali/pkg_ops("Package Management") kali/KaliGroup -.-> kali/nmap_ops("Nmap Tool") kali/KaliGroup -.-> kali/metasploit_ops("Metasploit Framework") kali/KaliGroup -.-> kali/vuln_scan("Vulnerability Scanning") kali/KaliGroup -.-> kali/nikto_ops("Nikto Scanner") subgraph Lab Skills kali/term_ops -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} kali/file_ctrl -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} kali/pkg_ops -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} kali/nmap_ops -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} kali/metasploit_ops -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} kali/vuln_scan -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} kali/nikto_ops -.-> lab-552192{{"Изучение инструментов безопасности Kali Linux"}} end

Просмотр предустановленных инструментов с помощью dpkg -l

На этом первом шаге вы узнаете, как просматривать предустановленные инструменты и пакеты в вашей системе Kali Linux с помощью команды dpkg -l. Это базовый, но важный навык для понимания того, какое программное обеспечение доступно для использования при тестировании на проникновение и управлении системой.

Когда вы открываете терминал в среде LabEx VM, вы автоматически подключаетесь к оболочке контейнера 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, введите следующую команду и нажмите Enter:

dpkg -l | grep apt

Ожидаемый вывод (пример, фактический вывод может отличаться):

ii  apt                            2.2.4                              amd64        commandline package manager

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

Установка и запуск Metasploit с помощью msfconsole

Теперь, когда вы увидели инструменты, доступные в Kali Linux, давайте перейдем к запуску одного из самых мощных фреймворков для тестирования на проникновение, Metasploit, с помощью команды msfconsole. Этот шаг основывается на вашем понимании инструментов системы и знакомит вас с ключевой платформой для тестирования безопасности.

Metasploit - это фреймворк (framework), используемый для разработки, тестирования и выполнения эксплойтов (exploits) против целевых систем. msfconsole - это его интерфейс командной строки, позволяющий вам взаимодействовать с фреймворком, настраивать параметры и запускать различные задачи безопасности.

Сначала убедитесь, что Metasploit установлен, обновив список пакетов и установив необходимый пакет. Введите следующие команды в терминале контейнера Kali Linux, нажимая Enter после каждой:

apt update
apt install -y metasploit-framework

Эти команды обновляют список пакетов и устанавливают Metasploit, если он еще не установлен. Подождите, пока установка завершится; это может занять несколько минут в зависимости от системы.

После установки запустите консоль Metasploit, введя следующую команду и нажав Enter:

msfconsole

При первом запуске этой команды может потребоваться некоторое время для инициализации, поскольку она настраивает базу данных и загружает модули. Будьте терпеливы в течение этого процесса.

Ожидаемый вывод (пример, фактический вывод может отличаться):

Metasploit Framework
...
msf6 >

Приглашение msf6 > указывает на то, что вы сейчас находитесь внутри консоли Metasploit и готовы взаимодействовать с фреймворком. Число (например, 6) представляет версию Metasploit.

20250411-14-17-22-4MAzqnbV.png

На данный момент вам не нужно выполнять какие-либо конкретные задачи в Metasploit. Выйдите из консоли, введя следующую команду в приглашении msf6 > и нажав Enter:

exit

Это вернет вас к стандартному приглашению терминала. Запуск и выход из msfconsole знакомит вас с доступом к этому инструменту, который имеет решающее значение для многих действий по тестированию на проникновение, которые вы изучите в будущем.

Установка и запуск базового сканирования Nmap

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

nmap (Network Mapper) используется для обнаружения хостов и служб в сети путем отправки пакетов и анализа ответов. Он помогает выявить потенциальные уязвимости, показывая, что доступно в целевой системе.

Сначала убедитесь, что nmap установлен в вашем контейнере Kali Linux. Введите следующую команду в терминале и нажмите Enter, чтобы обновить список пакетов и установить nmap:

apt install -y nmap

Подождите, пока установка завершится; это должно занять всего несколько секунд. После установки вы готовы выполнить базовое сканирование. Поскольку сканирование внешних систем без разрешения неэтично, мы будем сканировать localhost (ваш собственный контейнер) в качестве безопасной цели.

Давайте запустим базовый веб-сервер на контейнере.

apt install -y apache2
service apache2 start

Введите следующую команду и нажмите Enter:

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 на наличие веб-уязвимостей

Основываясь на ваших навыках сканирования сети с помощью nmap, этот шаг познакомит вас с nikto, инструментом для сканирования веб-серверов с целью выявления уязвимостей и неправильных конфигураций. Это важная часть тестирования веб-безопасности.

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

Сначала убедитесь, что nikto установлен в вашем контейнере Kali Linux. Введите следующую команду в терминале и нажмите Enter, чтобы установить его:

apt install -y nikto

Подождите, пока установка завершится; это должно занять всего несколько секунд. После установки вы будете сканировать localhost в качестве безопасной цели, чтобы продемонстрировать функциональность nikto. Если на localhost не запущен веб-сервер, инструмент все равно покажет, как он пытается подключиться, что ценно для обучения. Введите следующую команду и нажмите Enter:

nikto -h localhost

Опция -h указывает хост для сканирования, в данном случае localhost, нацеливаясь на порт веб-сервера по умолчанию (обычно 80).

Ожидаемый вывод (пример, фактический вывод может отличаться):

- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP:          127.0.0.1
+ Target Hostname:    localhost
+ Target Port:        80
---------------------------------------------------------------------------
+ End Time:           ...
---------------------------------------------------------------------------

Этот вывод показывает, что nikto пытается подключиться к веб-серверу на localhost. Если сервер не запущен, он сообщает о невозможности подключения, как показано выше. Если бы сервер был активен, он бы перечислил потенциальные уязвимости или неправильные конфигурации. Этот шаг помогает вам понять, как использовать nikto для сканирования веб-уязвимостей, что является ключевым навыком для выявления слабых мест безопасности в веб-приложениях.

Доступ к документации инструментов с помощью man-страниц

Теперь, когда вы использовали такие инструменты, как nmap и nikto, важно знать, как получить доступ к их документации для дальнейшего обучения. В этом шаге вы научитесь использовать man-страницы для изучения подробной информации о командах и инструментах в Kali Linux.

man-страницы (manual pages) - это исчерпывающие руководства для большинства инструментов и команд Linux. Они содержат подробные описания, параметры, примеры и инструкции по использованию, что делает их бесценными для понимания того, как эффективно использовать инструмент.

Установите man, если он еще не установлен.

apt install -y man

Давайте получим доступ к man-странице для nmap в качестве примера. Введите следующую команду в терминале и нажмите Enter:

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.
...

Используйте клавиши со стрелками вверх и вниз для навигации по документации. Вы увидите разделы об использовании, параметрах и примерах. Чтобы выйти из man-страницы, нажмите q, чтобы вернуться в командную строку терминала.

Обучение использованию man-страниц дает вам возможность самостоятельно изучать функции любого инструмента. Это особенно полезно в Kali Linux, где инструменты имеют множество параметров, к которым вам может потребоваться обращаться во время выполнения задач безопасности.

Перенаправление вывода Nmap в файл

В этом заключительном шаге вы узнаете, как сохранить вывод команды в файл для дальнейшего использования. Это основано на вашем предыдущем использовании nmap и представляет перенаправление вывода (output redirection), фундаментальный навык Linux для документирования результатов.

Перенаправление вывода в Linux позволяет сохранять результаты команды в файл вместо отображения их в терминале. Это делается с помощью символа >, который записывает вывод в указанный файл, перезаписывая его, если он уже существует.

Давайте выполним еще одно сканирование nmap на localhost и сохраним результаты в файл с именем nmap_scan.txt. Введите следующую команду в терминале и нажмите Enter:

nmap localhost > /root/nmap_scan.txt

Символ > перенаправляет вывод команды nmap localhost в файл /root/nmap_scan.txt. Вы не увидите результаты сканирования в терминале, потому что они сохраняются в файл.

Чтобы убедиться, что вывод был сохранен, просмотрите содержимое файла, введя следующую команду и нажав Enter:

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. Сохранение вывода в файлы - это практичный способ документирования результатов во время тестирования на проникновение (penetration testing), позволяющий вам просматривать или делиться результатами позже без необходимости повторного запуска команд.

Итог

В этой лабораторной работе вы узнали, как исследовать и использовать основные инструменты безопасности в Kali Linux для тестирования на проникновение (penetration testing). Вы начали с просмотра предустановленных инструментов с помощью dpkg -l, установили и запустили Metasploit с помощью msfconsole, выполнили сетевое сканирование с помощью nmap, сканировали веб-уязвимости с помощью nikto, получили доступ к документации инструментов через man-страницы и сохранили вывод команд в файлы. Эти фундаментальные навыки обеспечивают прочную основу для дальнейшего обучения в области кибербезопасности и анализа сетей в контролируемой среде.