扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
来源: 2008年04月14日
关键字:
IDS(Instrusion Detection System),也就是大家平时所说的入侵检测系统,广泛的被运用于各种操作系统的安全检测和安全防御,以及探测网络受攻击的程度和次数。为以后的网络安全管理提供详实的资料和证据。
由于条件的限制,我们只能够采取SNORT做为本次实验的IDS使用。
Snort的一些功能:
1.实时通讯分析和信息包记录
2.包装有效载荷检查
3.协议分析和内容查询匹配
4.探测缓冲溢出、秘密端口扫描、CGI攻击、SMB探测、操作系统侵入尝试
5.对系统日志、指定文件、Unix socket或通过Samba的WinPopus 进行实时报警
下面,我将以REDHAT 7.3为例,讲述一个完整的入侵检测系统的调试和测试报告
一.本机环境
OS:REDHAT 7.3
HardWare:CPU:P3 800 .256MB--SDRAM .20G/7200 --HARDDISC
IDS:SNORT-1.9+Libpcap
二.调试方法
首先将在本机环境中安装SNORT。SNORT是一个免费的IDS软件,我们这次将利用他来做系统检测
本机已经获得了SNORT-1.9这个版本。
首先,为了更方便的定制后面的探测规则和调试需要,我们将采取手工编译源文件(scorcus)的方法安装。(版本说明:SNORT-1.9.0.tar.gz )
本地安装的权限必须是:ROOT。如果不是ROOT。则必须采取SU指令,切换成本地系统管理员|:ROOT
#su
#passwd:
当确定从ROOT登陆以后,我们必须将源文件释放出来,因为在使用snort的时候,我们需要Libpcap这个包文件,所以在本机测试前,我们必须保证系统中有Libpcap。如果不清楚localhost是否已经有Libacap的话,可以用下面的指令查询:
$ locate Libacap
如果出现:
/usr/lib/Libacap.1.9.0
/usr/lib/Libpcap.a
等提示信息的话,证明本机已经有了Libpcap.如果没有任何提示的话,则说明还没有Libpcap库文件,需要安装。那么进行下列操作:(我获取的Libpcap0.6.2.tar.gz)
cd /usr/src/ids
[root@kykin-L-linux ids]# tar –zxvf libpcap-0.6.2.tar.gz
[root@kykin-L-linux ids]# ls
libpcap-0.6.2 libpcap-0.6.2.tar.gz snort-1.9.0 snort-1.9.0.tar.gz
这样的操作,将libpcap完全的释放到了本地文件夹中
继续:
[root@kykin-L-linux ids]# cd libpcap-0.6.2
[root@kykin-L-linux libpcap-0.6.2]# ls
aclocal.m4 configure.in lbl pcap-enet.c README.linux
bpf CREDITS libpcap.a pcap.h savefile.c
bpf_dump.c CVS LICENSE pcap-int.h savefile.o
bpf_dump.o etherent.c llc.h pcap-linux.c scanner.c
bpf_filter.c etherent.o Makefile pcap-linux.o scanner.l
bpf_filter.o ethertype.h Makefile.in pcap-namedb.h scanner.o
bpf_image.c FILES mkdep pcap-nit.c sll.h
bpf_image.o gencode.c nametoaddr.c pcap-nit.h SUNOS4
CHANGES gencode.h nametoaddr.o pcap-null.c TODO
config.cache gencode.o net pcap.o tokdefs.h
config.guess grammar.c nlpid.h pcap-pf.c VERSION
config.h grammar.o optimize.c pcap-pf.h version.c
config.h.in grammar.y optimize.o pcap-snit.c version.o
config.log inet.c pcap.3 pcap-snoop.c
config.status inet.o pcap-bpf.c ppp.h
config.sub INSTALL pcap.c README
configure install-sh pcap-dlpi.c README.aix
这些源文件也就是我们即将进行编译的Libpcap文件,继续:
[root@kykin-L-linuxlibpcap-0.6.2]# ./configure --prefix=/usr/local/libpcap-0.6.2
这句话的意思是:编译Libpcap文件到/usr/local/libpcap-0.6.2 目录)
[root@kykin-L-linuxlibpcap-0.6.2]# make
[root@kykin-L-linuxlibpcap-0.6.2]# makeinstall
执行完上面的,我们已经完整的将Libpcap安装到了本系统中
下面,我们将完成SNORT的安装和调试
(为了测试的需要,我们不需要把SNORT的日志文件写入本地MYSQL数据库,那么对MYSQL数据库的操作步骤暂时省略)
这几个操作的含义和Libpcap相同)[root@kykin-L-linux snort-1.9.0]# cp etc /usr/local/snort19 –r (复制当前文件夹下的ETC目录到SNORT19下面) [root@kykin-L-linux snort-1.9.0]# cp rules /usr/local/snort19 –r (复制全部规则文件) [root@kykin-L-linux snort-1.9.0]# cp etc/classification.config /root/ [root@kykin-L-linux snort-1.9.0]# cp etc/snort.conf /root/.snortrc (将调用的文件属性修改) |
[root@kykin-L-linux snort-1.9.0]#vi /root/.snortrc # This file contains a sample snort configuration. # You can take the following steps to create your # own custom configuration: # # 1) Set the network variables for your network # 2) Configure preprocessors # 3) Configure output plugins # 4) Customize your rule set # |
# Step #1: Set the network variables: # # You must change the following variables to reflect # your local network. The variable is currently # setup for an RFC 1918 address space. # # You can specify it explicitly as: # # var HOME_NET 10.1.1.0/24 |
var RULE_PATH ../rules |
var RULE_PATH /usr/local/snort19/rules |
include $RULE_PATH/bad-traffic.rules |
include $RULE_PATH/bad-traffic.rules include $RULE_PATH/exploit.rules include $RULE_PATH/scan.rules include $RULE_PATH/finger.rules include $RULE_PATH/ftp.rules include $RULE_PATH/telnet.rules include $RULE_PATH/rpc.rules include $RULE_PATH/rservices.rules include $RULE_PATH/dos.rules |
[root@kykin-L-linuxsnort-1.9.0]#ln –s /usr/local/snort19/bin/snort /usr/sbin/snort |
[root@kykin-L-linux snort-1.9.0]#cd /var/log [root@kykin-L-linux snort-1.9.0]#mkdir snort |
[root@kykin-L-linux snort-1.9.0]#snort Initializing Output Plugins! Log directory = /var/log/snort Initializing Network Interface eth0 using config file /root/.snortrc Initializing Preprocessors! Initializing Plug-ins! Parsing Rules file /root/.snortrc |
Initializing rule chains... No arguments to frag2 directive, setting defaults to: Fragment timeout: 60 seconds Fragment memory cap: 4194304 bytes< |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。