我们以Linux环境为例,在检测口令猜测攻击中,系统的日志文件会产生以LOGIN_FAILED为标志的日志记录[9-10]。在IDS的事件产生器中,读取日志文件中含有LOGIN_FAILED的记录生成GIDO。
例:Jul 31 08:57:45 zd213 login[1344] LOGIN_FAILED 1 from 192.168.0.211 FOR John Authentication failure。相应的GIDO为:
{Login
{Outcome
{ReturnCode ACTION_FAILED}
)
(When
(BeginTime Jul 31 08:57:43)
)
(Initiator
(IPV4Address 192.168.0.211)
(Username John)
)
(Receiver
(Hostname zd213)
))
其编码过程除了遵循前面所描述的规则外,还使用了文献[2]所建议的各类API。它们分别用于生成存放GIDO的空树、向空树附加根结点、附加数据、附加子树及对整个树编码。
当一个GIDO由事件产生器完成编码后,便发送至事件分析器按一定的规则分析所接收的GIDOs以便确定是否有入侵发生,若有则将有关信息发至控制台。对口令猜测攻击的GIDO,一个可行的处理流程如图1所示。
假定系统检测到30秒内发生了三次或以上登录失败,认为系统受到入侵,便发出相应报警信息。则本例输出结果(从不同终端登录)如图2所示。
图1 对口令猜测攻击事件产生的GIDO的处理流程
图2 一个口令猜测攻击的模拟检测结果
本文在深入分析入侵检测基本原理及入侵检测说明语言CISL基础上,对入侵检测对象GIDO的编码进行了详细说明。在系统设计的实践过程中,分别使用了入侵检测标准化组织提出的草案中包含的有关接口。但在本文中也只是针对一类特定入侵的事件说明如何生成并编码GIDOs。事实上,入侵检测系统各构件之间的通信本身也需要安全保障,这一点参考文献[8],可利用GIDO的附加部分来实现,其中所用技术(诸如签名,加密等)可借鉴目前一些较成熟的安全通信技术。
[1] Dorothy E.Denning An Intrusion-Detection Model[J].IEEE Transactions on software Engineering,1987,13(2):222-232
[2] 蒋建春,马恒太等 网络入侵检测综述[J] . 软件学报 2000.11(11):1460-1466
[3] GB/T18336,信息技术安全技术安全性评估标准[S]。
[4] 蒋建春,冯登国。网络入侵检测原理与技术[M],国防工业出版社,北京,2001
[5] Kumar S,Spafford E H,An Application of Patter Matching in Intrusion Detection[R],Technical Report CSD-7r-94-013,Department of Computer Science,Purdue University,1994。
[6] Jstin Doak. Intrusion Detection:The Application of a Feature Selection-A Comparison of Algorithms and the Application of Wide Area Network Analyzer[R] .Department of Computer Science,University of colifornia,Davis 1992.
[7] Dusan Bulatovic,Dusan Velasevi. A distributed Intrusion Detection System[J],Journal of computer Security. 1999,1740:219-118
[8] http://gost.isi.edu/cidf
[9] 叶和平 . 基于LINUX环境的入侵检测系统研究[D] 广州 中山大学2002
[10] 周巍松 LINUX操作系统分析与高级教程[M],北京:机械工业出版社 2000.3