如您所知,TCP 有 9 个标志。但正如您所见, snort的TCP 标志是文件中定义的 8 位sf_snort_packet.h
:
typedef struct _TCPHeader
{
...
uint8_t flags;
...
} TCPHeader;
预定义的标志也必须是 9 位:
#define TCPHEADER_FIN 0x01
#define TCPHEADER_SYN 0x02
...
现在我很困惑是否要检查TCP_SYN
标志;怎么做。我已经使用了它,但它没有返回正确的答案:
if (packet->tcp_header->flags & TCPHEADER_SYN){
...
}
有人可以指导我解决这个问题吗?谢谢你。