Добро пожаловать обратно, мои начинающие кибервоины!
Netcat — один из немногих инструментов, наряду с nmap, Metasploit, Wireshark и некоторыми другими, с которыми должен быть знаком каждый хакер. Он прост, элегантен и имеет множество применений.
Например, netcat можно использовать для:
Как и многие приложения в мире Linux, netcat работает в режиме клиента и сервера. Это означает, что при использовании netcat необходимо назначить одну сторону сервером, а другую — клиентом.
Шаг №1: Основы Netcat
Давайте начнём с просмотра экрана справки по netcat. При использовании netcat команда просто «nc». Чтобы открыть экран справки, введите:
кали > нк -х
Обратите внимание на несколько переключателей;
-e выполнить
-l режим прослушивания
-n числовой режим IP-адреса (без DNS. Это быстрее)
-p обозначает порт
-u режим UDP
-v подробный вывод
Шаг №2: Создайте простое TCP-соединение
Netcat можно использовать для создания простого TCP- или UDP-подключения к системе, чтобы проверить доступность порта и сервиса. Например, если я хочу подключиться к SSH в другой системе Linux, я могу ввести:
кали > nc -vn 192.168.1.103 22
Как вы видите, netcat смог подключиться к OpenSSH на удаленном сервере, и сервер разместил объявление о сервисе с помощью своего баннера.
(SSH-2.0-OpenSSH_5.3p1 Debian-3Ubuntu4).
Шаг №3: Захват баннера
Мы также можем использовать netcat для «захвата» баннера на веб-серверах, подключившись к порту 80 и отправив затем запрос HTTP/HEAD/1.0.
кали > nc -vn 192.168.42.26 80
ГОЛОВЫ / HTTP/1.0
Обязательно нажмите «Enter» несколько раз после ввода запроса HEAD, чтобы вытащить баннер.
Как видите, мы взяли баннер веб-сервера Apache 2.2.14, работающего в Ubuntu. Кроме того, на баннере указаны версии PHP, Python, OpenSSL и Perl, работающие в этой системе.
Шаг №4. Сканирование портов с помощью netcat
Netcat способен на множество задач. Среди них — сканирование портов. Вы уже знакомы с nmap, самым распространённым сканером портов. Netcat может делать то же самое, но без всех этих излишеств nmap.
Чтобы запустить сканирование портов с помощью netcat, введите:
кали > нк -в -н -з -в1 192.168.42.26 22-150
Где:
nc — это команда netcat
-v означает выдавать подробный (многословный) вывод
-n означает только числовые IP-адреса (без DNS)
-z означает ноль. Это режим без ввода/вывода.
-w1 означает ожидание одной секунды для подключений
Как вы можете видеть выше, netcat смог найти каждый из открытых портов на удаленной системе и сообщить нам службу по умолчанию, работающую на этом порту.
Шаг №5: Открытие TCP-соединения между двумя машинами для «чата»
Netcat способен создать простое TCP- или UDP-соединение между двумя компьютерами, а затем открыть между ними канал связи. Сначала откроем прослушиватель на удалённой системе. Для этого достаточно ввести команду netcat (nc), затем -l (listen) и указать номер порта, на котором вы хотите прослушивать соединения (в данном случае попробуйте порт 4294, но вы можете использовать любой другой).
кали > нк -л -п4294
Затем подключитесь к этому прослушивателю с удаленной машины.
Кали > NC 192.168.100.111 4294
После подключения я смогу начать вводить свое сообщение, например: «Где лучше всего изучать кибербезопасность?»
Это сообщение затем появится на удалённой системе, где находится прослушивающая машина. Затем прослушивающая машина может ответить: «Несомненно, это Hackers-Arise.com!»
…и затем удаленная машина получает ответ!
Таким образом, мы можем создать приватный «чат-рум» между любыми двумя машинами!
Шаг №5: Передача файлов с помощью Netcat
Одно из простых чудес Netcat — это его способность передавать файлы между компьютерами. Создав это простое соединение, мы можем затем использовать его для передачи файлов между двумя компьютерами. Это может быть чрезвычайно полезно для сетевого администратора и ещё более полезно для хакера. Netcat можно использовать для загрузки и выгрузки файлов с целевой системы и на неё.
Давайте создадим файл под названием «hackers-arise».
kali > echo «Hackers-Arise — лучшее и самое доступное место для изучения кибербезопасности» > hackers-arise
Затем давайте просмотрим содержимое этого файла с помощью команды Linux «cat».
kali > cat hackers-arise
Теперь давайте откроем прослушиватель на удаленной системе.
кали > нк -л -п4294
Далее отправим файл на удаленную систему.
kali > nc 192.168.100.111 4294 <hackers-arise
Обратите внимание, что мы используем < для направления файла в netcat.
Наконец, вернемся к нашей системе прослушивания, и мы должны обнаружить, что файл был передан и появился на экране!
Шаг №6: Удаленное администрирование с помощью netcat
Вероятно, самое вредоносное применение netcat – и самое эффективное для хакера – это возможность использовать netcat для удалённого администрирования. Мы можем использовать возможность netcat выполнять команды через удалённое подключение к оболочке (/bin/sh) на прослушивающей системе. На машине Linux/Unix это можно сделать, предоставив /bin/sh доступ к удалённому подключению с помощью опции -e (выполнить), как показано ниже. Если бы мы подключались к машине Windows, мы могли бы использовать cmd.exe ( -e cmd.exe ) вместо /bin/sh.
Кали > nc -l -p4294 -e /bin/sh
Теперь при подключении к удалённой машине я должен получить доступ к оболочке на удалённой системе. Обратите внимание, что при подключении к удалённой системе отображается только пустая строка, без командной строки, вообще ничего (хотя при подключении к системе Windows мы увидим традиционное приглашение C:>). Это может сбить с толку новичка.
Если затем мы наберем «ls -l», мы получим список каталогов из каталога, в котором мы запустили прослушиватель netcat на удаленной системе.
Затем мы можем ввести pwd , чтобы получить текущий рабочий каталог, и whoami , чтобы найти пользователя, разрешения которого мы используем (в данном случае kali).
Шаг №7: Криптокат
Cryptcat — это зашифрованный аналог Netcat. Это означает, что мы можем подключиться к удалённой машине, где весь наш трафик будет зашифрован одним из самых стойких алгоритмов шифрования, доступных на рынке, Two-fish (шифрование Two-fish почти так же стойко, как AES). Вы можете скачать его с сайта www.cryptcat.sourceforge.net, но если вы используете Kali, он уже установлен. Хотя ключи в основном те же, что и у Netcat, команда — «cryptcat», а не «nc».
Краткое содержание
Netcat, как и Metasploit, nmap и Wireshark, — ключевой инструмент как для хакеров, так и для сетевых администраторов. Его универсальность делает его незаменимым инструментом для решения самых разных задач.
Netcat — один из немногих инструментов, наряду с nmap, Metasploit, Wireshark и некоторыми другими, с которыми должен быть знаком каждый хакер. Он прост, элегантен и имеет множество применений.
Например, netcat можно использовать для:
- сканировать, чтобы увидеть, открыт ли порт на удаленной системе
- вытащить баннер из удаленной системы
- подключиться к сетевой службе вручную
- удаленное администрирование
Как и многие приложения в мире Linux, netcat работает в режиме клиента и сервера. Это означает, что при использовании netcat необходимо назначить одну сторону сервером, а другую — клиентом.
Шаг №1: Основы Netcat
Давайте начнём с просмотра экрана справки по netcat. При использовании netcat команда просто «nc». Чтобы открыть экран справки, введите:
кали > нк -х
Обратите внимание на несколько переключателей;
-e выполнить
-l режим прослушивания
-n числовой режим IP-адреса (без DNS. Это быстрее)
-p обозначает порт
-u режим UDP
-v подробный вывод
Шаг №2: Создайте простое TCP-соединение
Netcat можно использовать для создания простого TCP- или UDP-подключения к системе, чтобы проверить доступность порта и сервиса. Например, если я хочу подключиться к SSH в другой системе Linux, я могу ввести:
кали > nc -vn 192.168.1.103 22
Как вы видите, netcat смог подключиться к OpenSSH на удаленном сервере, и сервер разместил объявление о сервисе с помощью своего баннера.
(SSH-2.0-OpenSSH_5.3p1 Debian-3Ubuntu4).
Шаг №3: Захват баннера
Мы также можем использовать netcat для «захвата» баннера на веб-серверах, подключившись к порту 80 и отправив затем запрос HTTP/HEAD/1.0.
кали > nc -vn 192.168.42.26 80
ГОЛОВЫ / HTTP/1.0
Обязательно нажмите «Enter» несколько раз после ввода запроса HEAD, чтобы вытащить баннер.
Как видите, мы взяли баннер веб-сервера Apache 2.2.14, работающего в Ubuntu. Кроме того, на баннере указаны версии PHP, Python, OpenSSL и Perl, работающие в этой системе.
Шаг №4. Сканирование портов с помощью netcat
Netcat способен на множество задач. Среди них — сканирование портов. Вы уже знакомы с nmap, самым распространённым сканером портов. Netcat может делать то же самое, но без всех этих излишеств nmap.
Чтобы запустить сканирование портов с помощью netcat, введите:
кали > нк -в -н -з -в1 192.168.42.26 22-150
Где:
nc — это команда netcat
-v означает выдавать подробный (многословный) вывод
-n означает только числовые IP-адреса (без DNS)
-z означает ноль. Это режим без ввода/вывода.
-w1 означает ожидание одной секунды для подключений
Шаг №5: Открытие TCP-соединения между двумя машинами для «чата»
Netcat способен создать простое TCP- или UDP-соединение между двумя компьютерами, а затем открыть между ними канал связи. Сначала откроем прослушиватель на удалённой системе. Для этого достаточно ввести команду netcat (nc), затем -l (listen) и указать номер порта, на котором вы хотите прослушивать соединения (в данном случае попробуйте порт 4294, но вы можете использовать любой другой).
кали > нк -л -п4294
Затем подключитесь к этому прослушивателю с удаленной машины.
Кали > NC 192.168.100.111 4294
После подключения я смогу начать вводить свое сообщение, например: «Где лучше всего изучать кибербезопасность?»
Это сообщение затем появится на удалённой системе, где находится прослушивающая машина. Затем прослушивающая машина может ответить: «Несомненно, это Hackers-Arise.com!»
…и затем удаленная машина получает ответ!
Таким образом, мы можем создать приватный «чат-рум» между любыми двумя машинами!
Шаг №5: Передача файлов с помощью Netcat
Одно из простых чудес Netcat — это его способность передавать файлы между компьютерами. Создав это простое соединение, мы можем затем использовать его для передачи файлов между двумя компьютерами. Это может быть чрезвычайно полезно для сетевого администратора и ещё более полезно для хакера. Netcat можно использовать для загрузки и выгрузки файлов с целевой системы и на неё.
Давайте создадим файл под названием «hackers-arise».
kali > echo «Hackers-Arise — лучшее и самое доступное место для изучения кибербезопасности» > hackers-arise
Затем давайте просмотрим содержимое этого файла с помощью команды Linux «cat».
kali > cat hackers-arise
Теперь давайте откроем прослушиватель на удаленной системе.
кали > нк -л -п4294
Далее отправим файл на удаленную систему.
kali > nc 192.168.100.111 4294 <hackers-arise
Обратите внимание, что мы используем < для направления файла в netcat.
Наконец, вернемся к нашей системе прослушивания, и мы должны обнаружить, что файл был передан и появился на экране!
Шаг №6: Удаленное администрирование с помощью netcat
Вероятно, самое вредоносное применение netcat – и самое эффективное для хакера – это возможность использовать netcat для удалённого администрирования. Мы можем использовать возможность netcat выполнять команды через удалённое подключение к оболочке (/bin/sh) на прослушивающей системе. На машине Linux/Unix это можно сделать, предоставив /bin/sh доступ к удалённому подключению с помощью опции -e (выполнить), как показано ниже. Если бы мы подключались к машине Windows, мы могли бы использовать cmd.exe ( -e cmd.exe ) вместо /bin/sh.
Кали > nc -l -p4294 -e /bin/sh
Теперь при подключении к удалённой машине я должен получить доступ к оболочке на удалённой системе. Обратите внимание, что при подключении к удалённой системе отображается только пустая строка, без командной строки, вообще ничего (хотя при подключении к системе Windows мы увидим традиционное приглашение C:>). Это может сбить с толку новичка.
Если затем мы наберем «ls -l», мы получим список каталогов из каталога, в котором мы запустили прослушиватель netcat на удаленной системе.
Шаг №7: Криптокат
Cryptcat — это зашифрованный аналог Netcat. Это означает, что мы можем подключиться к удалённой машине, где весь наш трафик будет зашифрован одним из самых стойких алгоритмов шифрования, доступных на рынке, Two-fish (шифрование Two-fish почти так же стойко, как AES). Вы можете скачать его с сайта www.cryptcat.sourceforge.net, но если вы используете Kali, он уже установлен. Хотя ключи в основном те же, что и у Netcat, команда — «cryptcat», а не «nc».
Краткое содержание
Netcat, как и Metasploit, nmap и Wireshark, — ключевой инструмент как для хакеров, так и для сетевых администраторов. Его универсальность делает его незаменимым инструментом для решения самых разных задач.