Kali Linux

#33 Kali Linux для начинающих. Перенаправление и контроль вывода.

Мы постепенно приближаемся к концу второй части, где я расскажу о реальном случае тестирования на проникновение. Мы объединим несколько инструментов, которые Вы уже изучили, и познакомимся с новыми инструментами. Мы также узнаем, почему Linux считается очень мощной и удобной системой для пентеста.

Наша цель: рассмотреть перенаправление ввода и вывода команд. Мы все проделаем на практических примерах.

Когда мы делаем перенаправление, мы выводим результат одного инструмента в файл, а не на экран. Или наоборот, мы можем перенаправить содержимое файла на вход определенному инструменту. Как правило, это необходимо, когда Вы можете выполнить команду на атакуемой машине, но не видите вывод этой команды. Например, Вы можете взломать удаленный Linux-сервер через сайт. Однако Вы не увидите вывод запущенных нами команд. В этом случае самое верное решение – это перенаправление команд в текстовый файл, к которому у Вас будет доступ через браузер. Сейчас это может показаться непонятным, но не волнуйтесь, тут нет ничего страшного, Вы вспомните эти примеры во время тестирования на проникновение.

Существуют различные типы перенаправления. Знак больше «>» используется для перенаправления вывода команды в файл. Например, nmap – это одна из программ, у которой есть опции вывода. Когда я запускаю nmap, я могу хранить его вывод в файл.

Допустим, мне нужно запустить команду «ping», и у нее нет опции сохранения вывода. С помощью знака больше «>», можно сохранить результаты работы программы в текстовый файл.

Два знака больше «>>», добавляют в файл вывод команды. Например, если я один раз выполню команду ping, и сохраню ее вывод в файле, используя один знак больше «>», а затем снова выполню эту команду, то второй вывод перезапишет первый. Если мне нужно добавить первый вывод ко второму, то я использую два знака больше «>>». Знак меньше «<», перенаправляет содержимое файла в команду, т.е. делает все наоборот. Давайте посмотрим, как это выглядит на практике. Допустим, во время тестирования на проникновение я имею доступ к трем разным системам. Я скачиваю список пользователей системы, и называю его «users1». Скачиваю список из второй и третьей системы, и называю их как «users2» и «users3»:

создание трех файлов: users1, users2, users3

Мне нужно создать объединенный список всех пользователей, чтобы совершить атаку на почтовый сервер. Мне нужно обнаружить все почтовые серверы компании, и скормить этот список программе, которая попытается автоматически авторизироваться, используя пароли каждого пользователя. Давайте рассмотрим все, шаг за шагом. Для начала отобразим содержимое первого файла:

просмотр содержимого первого файла users1

Видим небольшой список пользователей. Тоже самое видим о во втором файле, только текст будет отличаться:

просмотр содержимого users2

И, наконец, последний вывод файла будет идентичным, только текст будет другим. Это файл «users3»:

содержимое файла users3

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

Как мы уже знаем, команда «cat» отображает содержимое файла, однако у этой команды нет опций, чтобы сохранить вывод. Попробуем ввести команду «cat users*», где символ «*», является объединением всех файлов, которые начинаются буквами «users»:

cat users*

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

Для этого нам понадобится команда «cat users1 users2 > all-users». Далее, чтобы вывести новый файл, просто выполняем команду «cat all-users»:

cat users1 users2 > all-users

Объединение файлов прошло успешно.

Теперь давайте продолжим экспериментировать, а именно введем команду «cat users3 > all-users», и выводим результат команды:

cat users3 > all-users

Как видим, предыдущий результат был перезаписан. Дело в том, что мы использовали символ больше «>». Теперь продолжим экспериментировать. Выполняем вновь команду «cat users1 users2 > all-users», и дополнительно «cat users3 >> all-users». Второй командой мы добавляем содержимое в файл all-users.

cat users3 >> all-users

После вывода, при помощи команды «cat», мы видим, что все файлы лежат в одном текстовом файле.

 Когда у нас десятки или сотни разгруппированных данных, то мы сможем их сформировать с помощью одной команды. Это удобно и практично. С помощью символа «*» — это сделать намного быстрее. Иными словами, мы можем написать команду «cat users* > all-users», и в итоге получим хороший результат. Вот еще одна команда для того, чтобы пронумеровать строки. Она выглядит как «cat –n all-users»:

cat –n all-users

Видим список пользователей, который нужен мне для атаки на почтовый сервер.

#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 для начинающих. Разбираемся с процессами.

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