分类: 网络与安全
2011-12-13 23:16:50
-------------------------------------------文件说明-------------------------------------------
snort.c(.h)是主程序所在的文件,实现了main函数和一系列辅助函数。
decode.c(.h)把数据包层层剥开,确定该包属于何种协议,有什么特征。并标记到全局结构变量pv中。
log.c(.h)实现日志和报警功能。
mstring.c(.h)实现字符串匹配算法。在snort中,采用的是Boyer-Moore算法。
plugbase.c(.h)实现了初始化检测以及登记检测规则的一组函数。
response.c(.h)进行响应,即向攻击方主动发送数据包。
rule.c(.h)实现了规则设置和入侵检测所需要的函数。
-------------------------------------------函数说明-------------------------------------------
snort.c中的main函数是入口函数。主要进行了运行系统,及模式的判断,并启动相应的工作方式。
snortMain是主函数,并调用snortInit函数。
snortInit是初始化函数,进行安装信号处理函数,初始化全局数据结构,分析命令行参数,并设置软件运行模式,
然后根据运行模式,注册输出插件,注册预处理插件,注册检测插件,注册规则插件。
snortInit调用完成后,进行PCAP的初始化工作,最后进入数据包捕获,处理流程。