Может ли libnet использоваться для внедрения пакетов tcp / искажения пакетов? - PullRequest
0 голосов
/ 20 мая 2010

Я только что взглянул на введение libnet ,

, кажется, упоминается поддержка udp , ip , но не tcp ?

Поддерживает ли он tcp вообще?

1 Ответ

0 голосов
/ 20 мая 2010

Глядя здесь , похоже, есть функция, связанная с tcp, поэтому я думаю, что да, вы можете внедрить сегменты tcp с помощью libnet.

int libnet_build_tcp(u_short sport, u_short dport, u_long seq,
            u_long ack, u_char control, u_short win, u_short urg,
            const u_char *payload, int payload_s, u_char *buf);

libnet_build_tcp () создает TCP (Протокол управления передачей) пакет. Поставляется порт источника, порт назначения, последовательность и номера подтверждения, контроль биты (которые могут быть логически или вместе, чтобы установить несколько флагов - см. пример ниже), рекламируемый размер окна, срочный указатель, указатель на необязательную полезную нагрузку данных, размер полезной нагрузки, и, наконец, указатель на предварительно выделенный блок память для пакета. Чтобы просто построить Только заголовок TCP без данных Нужно выделить байты TCP_H.

...