开发者

Can libnet be used to inject tcp packets/packet mangling?

开发者 https://www.devze.com 2022-12-31 22:24 出处:网络
I just took a glance at the introduction of libnet, seems it mentioned support开发者_开发问答 for udp,ip,but not tcp?

I just took a glance at the introduction of libnet,

seems it mentioned support开发者_开发问答 for udp,ip,but not tcp?

Does it support tcp at all?


Looking here, there seems to be a function related to tcp, so I guess yes, you can inject tcp segments with 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() builds a TCP (Transmission Control Protocol) packet. Supplied is the source port, destination port, the sequence and acknowledgement numbers, the control bits (which can be logically OR'd together to set multiple flags -- see the example below), the advertised window size, the urgent pointer, a pointer to an optional data payload, the payload size, and lastly, the pointer to a pre-allocated block of memory for the packet. To just build a TCP header with no data payload, only TCP_H bytes need be allocated.

0

精彩评论

暂无评论...
验证码 换一张
取 消