Не удается отправить TCP-пакет через hping3 на слушатель Netcat без ответа RST.

Вопрос или проблема

Я работаю над проектом, в рамках которого мне нужно отправить TCP-пакет, содержащий мою фамилию, с клиента (Kali Linux) на сервер (Ubuntu), где запущен слушатель netcat. Цель состоит в том, чтобы отправить свою фамилию и отобразить её в терминале netcat на сервере.

Настройка:
Клиент: Kali Linux (использующий hping3 для отправки пакета).
Сервер: Ubuntu (работает nc -l -p 55555, чтобы слушать подключения на порту 55555).

Проблема:
Каждый раз, когда я пытаюсь отправить свою фамилию через hping3, я всегда получаю ответ RST (сброс) от сервера. Вот краткий обзор моих шагов:

Я настроил слушатель netcat на сервере:

nc -l -p 55555

На клиенте я использую следующую команду hping3 для отправки пакета, содержащего мою фамилию:

sudo hping3 -c 1 -d 7 -E surname.txt -A -M <номер_последовательности> -L <номер_подтверждения> <ip_сервера> -p 55555
<номер_последовательности>: Следующий ожидаемый номер последовательности на основе захвата tcpdump.
<номер_подтверждения>: Номер подтверждения, полученный от сервера.
Данные: Текстовый файл, содержащий мою фамилию "Surname".

Ответ или решение

Вам нужно правильно настроить передачу TCP-пакетов с использованием hping3, чтобы отправить ваше имя через netcat. Давайте разберем все шаги и выявим возможные источники проблем, из-за которых вы получаете RST (reset) ответ от сервера.

Шаги по настройке:

  1. Запуск слушателя на сервере:
    Убедитесь, что вы правильно запускаете netcat на сервере для прослушивания порта. Используйте следующую команду:

    nc -l -p 55555

    Проверьте, что эта команда выполняется корректно и не возвращает ошибок. Netcat должен быть в состоянии слушать входящие TCP-соединения.

  2. Подготовка файла с данными:
    Убедитесь, что ваш файл surname.txt действительно содержит ваше имя. Чтобы проверить это, выполните команду:

    cat surname.txt

    Убедитесь, что в файле правильно записано ваше имя.

  3. Определение значений номера последовательности и номера подтверждения:
    Вам нужно правильно задать значения для -M (номер последовательности) и -L (номер подтверждения). Чтобы узнать текущие значения, вы можете использовать tcpdump или Wireshark для захвата трафика. Запустите tcpdump на сервере:

    sudo tcpdump -i any -A port 55555

    Затем установите соединение с сервером, например, с помощью telnet или другого клиента, чтобы увидеть, какие номера последовательностей и подтверждений используются.

  4. Отправка пакета с hping3:
    После того как у вас есть необходимые номера, используйте hping3 следующим образом:

    sudo hping3 -c 1 -d 7 -E surname.txt -A -M <seq_number> -L <ack_number> <server_ip> -p 55555

    Подставьте полученные значения seq_number и ack_number, а <server_ip> замените на IP-адрес вашего сервера.

Возможные причины получения RST:

  • Неправильные номера последовательности и подтверждения: Если вы используете значения, которые не соответствуют открытому соединению, сервер не сможет подтвердить пакет и вернет RST.

  • Состояние TCP соединения: Если на сервере нет активного соединения с клиентом, даже при правильных номерах вы можете получить RST. Убедитесь, что соединение активно перед отправкой пакета.

  • Firewall или настройки сети: Проверьте, нет ли ограничений на уровне брандмауэра, которые блокируют соединение или пакеты, отправленные от hping3. Вы можете временно отключить брандмауэр на сервере для проверки:

    sudo ufw disable

    Не забудьте включить его снова после тестирования.

  • Тип соединения: Убедитесь, что вы действительно пытаетесь установить TCP соединение, как это ожидается. Hping3 может также использовать UDP или другие протоколы, в зависимости от параметров.

Проверка результата:

После выполнения всех шагов снова посмотрите на вывод netcat на сервере. Если всё сделано правильно, имя должно отображаться на экране без RST.

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

Оцените материал
Добавить комментарий

Капча загружается...