【实验目的】
熟悉Snort基础环境的搭建和安装配置。
【知识点】
Snort,Snort部署。
【实验原理】
Snort是一个跨平台、轻量级的网络入侵检测工具,从入侵检测的分类上看,Snort应当属于基于网络的误用检测。针对每一种入侵行为,都提炼出它的特征并按照规范写成规则,从而形成一个规则库,将捕获的数据包对照规则库逐一匹配,若匹配成功,则认为该入侵行为成立。
直至今天,Snort已发展成为一个具有多平台(Multi-Platform)、实时(Real-Time)流量分析、网络IP数据包(Pocket)记录等特性的强大的网络入侵检测/防御系统(NetworkIntrusionDetection/PreventionSystem),即NIDS/NIPS。
Snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。
嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。
数据包记录器模式把数据包记录到硬盘上。
网络入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。后面的实验会对这三种模式进行详细介绍。
Snort能够对网络上的数据包进行抓包分析,但区别于其它嗅探器的是,它能根据所定义的规则进行响应及处理。Snort通过对获取的数据包,进行各规则的分析后,根据规则链,可采取Activation(报警并启动另外一个动态规则链)、Dynamic(由其它的规则包调用)、Alert(报警)、Pass(忽略)和Log(不报警但记录网络流量)五种响应的机制。
Snort有数据包嗅探,数据包分析,数据包检测,响应处理等多种功能,每个模块实现不同的功能,各模块都是用插件的方式和Snort相结合,功能扩展方便。例如,预处理插件的功能就是在规则匹配误用检测之前运行,完成TIP碎片重组,http解码,telnet解码等功能,处理插件完成检查协议各字段,关闭连接,攻击响应等功能,输出插件将得理后的各种情况以日志或警告的方式输出。
Snort的结构由4大软件模块组成,它们分别是:
数据包嗅探模块——负责监听网络数据包,对网络进行分析;
预处理模块——该模块用相应的插件来检查原始数据包,从中发现原始数据的“行为”,如端口扫描,IP碎片等,数据包经过预处理后才传到检测引擎;
检测模块——该模块是Snort的核心模块。当数据包从预处理器送过来后,检测引擎依据预先设置的规则检查数据包,一旦发现数据包中的内容和某条规则相匹配,就通知报警模块;
报警/日志模块——经检测引擎检查后的Snort数据需要以某种方式输出。如果检测引擎中的某条规则被匹配,则会触发一条报警,这条报警信息会通过网络、UNIXsocket、WindowsPopup(SMB)、SNMP协议的trap命令传送给日志文件,甚至可以将报警传送给第三方插件(如SnortSam),另外报警信息也可以记入SQL数据库。
【软件工具】
操作系统:Centos7
其他:Snort,Libdnet,Libpcap,Daq
【实验目标】
对Snort的基础环境进行搭建配置。
【实验步骤】
在本实验开始前,需要首先安装一些依赖,由于实验环境无法联网,下面的依赖都已经提前安装完成,无需进行操作:
yum install -y gcc gcc-c++ flex bison zlib-devel libxml2 pcre* tcpdump git libtool curl man make.
安装 php:
yum install
已在FreeBuf发表 0 篇文章
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)



