Kali Linux

#32 Kali Linux для начинающих. Управляем процессами.

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

Что же делать в данной ситуации?

Нужно запустить команду в фоновом режиме. Т.е. выполнить команду и отправить процесс, который запустился в фоновый режим. И таким образом у Вас останется доступ к шеллу. Вы сможете с ним взаимодействовать, вводить другие команды, и делать все, что Вам нужно, пока программа работает в фоне. Это один сценарий. Другой, более распространенный. Вы работаете в компании, которая занимается информационной безопасностью, то как у пентестера, у Вас будет инструмент хакера. Хакерский сервер в интернете, на котором Вы можете авторизироваться как консультант по информационной безопасности, и использовать его для пентеста. Однако есть проблема. Допустим Вы авторизировались на этом сервере через SSH, и запустили какой-либо сканер уязвимостей. Понадобится несколько часов, чтобы сканер закончил работу, а сейчас уже время уходить с работы. Если закрыть окно терминала, то сессия будет остановлена. Однако, если Вы отправите этот процесс в фон, то сканер nmap (для примера) будет работать в фоновом режиме. Вы сможете закрыть сессию и спокойно пойти домой. Затем, вернуться на следующий день на работу, снова подключиться к этому серверу и продолжить выполнение сессии nmap. Сканирование успешно завершилось, пока Вы были дома. Как это сделать? Как отправить процесс в фон? Давайте рассмотрим несколько примеров. Я авторизирован сейчас под тремя разными пользователями:

авторизация под тремя разными пользователями

Все эти пользователи подключены к одной машине на Kali.

Давайте начнем с боба. Я выполню команду «nmap –v –T0 timcore.ru &». Обратите внимание, что в конце записи я добавляю амперсант. Если Вы не знаете опции, которые я ввел, прочитайте справку.

nmap –v –T0 timcore.ru &

После старта сканирования я нажимаю «Enter», и я все еще могу пользоваться терминалом. Если я просто введу команду «nmap», без амперсанта, то я не смогу дальше работать в терминале, и Вам придется ждать, когда все запущенные процессы завершат свою работу. Но сейчас я могу пользоваться терминалом, могу его очистить с помощью команды «clear». Чтобы узнать, какие команды запущены в фоне, можно использовать команду «jobs»:

команда jobs

Допустим я хочу вывести процесс на передний план или убить процесс. Для того, чтобы вывести процесс, нам понадобится команда «fg» с номером процесса соответственно:

команда fg

И, чтобы его убить, нажимаю Ctrl+C:

CTRL+C

Таким образом, мы завершаем работу программы.

Еще один способ отправить программу в фон – это использовать инструмент или программу «tmux»:

tmux

Теперь я нахожусь в другом шелле. Давайте снова пропишем команду nmap:

«nmap –v –T0 timcore.ru»:

nmap –v –T0 timcore.ru

Чтобы отключиться от tmux и вернуться в изначальный шелл, то нам нужно ввести комбинацию клавиш «Ctrl+C и потом exit»:

tmux exit

Существует альтернатива команды tmux, которая прописывается как nohup. Нам понадобится следующая команда: «nohup nmap –v –T0 timcore.ru &»:

nohup nmap –v –T0 timcore.ru &

Обратите внимание на то, что сразу выводится id запущенного процесса. Выйдем из сессии nohup и вернемся в рут-пользователя:

ps -u mat

Как видим, процесс nmap все еще запущен и продолжает работать. Далее убьем этот процесс, с помощью команды kill 1901:

 kill 1901

В итоге у пользователя mat нет активных процессов.

Домашнее задание

Подключитесь на Вашу машину на Kali с Windows 10 через Putty.

Запустите nmap и укажите сайт timcore.ru.

Завершите сессию Putty.

Через несколько минут перейдите на машину на Kali, и проверьте, запущен ли nmap.

Если он не работает, попробуйте другие варианты, и сделайте так, чтобы nmap продолжил работу в фоновом режиме, несмотря на то, что Вы отключились от Putty.

#1 Kali Linux для начинающих. Урок 1 — Основы сетей.

#2 Kali Linux для начинающих. Урок 2 — Горячие клавиши. Часть 1

#3 Kali Linux для начинающих. Урок 2 — Горячие клавиши. Часть 2

#4 Kali Linux для начинающих. Терминал Kali Linux. Часть 1

#5 Kali Linux для начинающих. Терминал Kali Linux. Часть 2

#6 Kali Linux для начинающих. Урок 4 — Root Kali Linux. Часть 1

#7 Kali Linux для начинающих. Root Kali Linux — Часть 2

#8 Kali Linux для начинающих. Основные команды. Часть 1.

#9 Kali Linux для начинающих. Основные команды. Перемещение по директориям. Часть 2.

#10 Kali Linux для начинающих. Основные команды. Создание директорий. Часть 3

#11 Kali Linux для начинающих. Основные команды. Часть 4 — Просмотр содержимого директорий.

#12 Kali Linux для начинающих. Основные команды. Часть 5 — Просмотр содержимого файлов.

#13 Kali Linux для начинающих. Основные команды. Часть 6 — Копируем файлы и директории.

#14 Kali Linux для начинающих. Основные команды. Часть 7 — Перемещаем файлы и директории.

#15 Kali Linux для начинающих. Основные команды. Часть 8 — Удаляем файлы и директории.

#16 Kali Linux для начинающих. Управление пакетами.

#17 Kali Linux для начинающих. Откуда Kali скачивает софт.

#18 Kali Linux для начинающих. Изменения в Kali 2019 относительно APT.

#19 Kali Linux для начинающих. Архивация и сжатие. Часть 1.

#20 Kali Linux для начинающих. Архивация и сжатие. Часть 2.

#21 Kali Linux для начинающих. Архивация и сжатие. Часть 3.

#22 Kali Linux для начинающих. Специальные символы. Часть 1.

#23 Kali Linux для начинающих. Специальные символы. Часть 2

#24 Kali Linux для начинающих. Основы сетей.

#25 Kali Linux для начинающих. Администрирование. Редактирование файлов с помощью Nano.

#26 Kali Linux для начинающих. Превращаем Kali Linux в веб-сервер.

#27 Kali Linux для начинающих. Изменения в файлах конфигурации Kali Linux.

#28 Kali Linux для начинающих. Превращаем Kali Linux в SSH-сервер.

#29 Kali Linux для начинающих. Управление пользователями и группами.

#30 Kali Linux для начинающих. Работаем с правами пользователей.

#31 Kali Linux для начинающих. Разбираемся с процессами.