Java Web 中的入侵检测及简单实现
查看数: 377
在 应用程中,特别是网站开发中,我们有时候需要为应用程序增加
一个入侵检测程序来防止恶意刷新的功能,防止非法用户不断的往 应用
中重复发送数据。当然,入侵检测可以用很多方法实现,包括软件、硬件防火
墙,入侵检测的策略也很多。在这里我们主要介绍的是 应用程序中
通过软件的方式实现简单的入侵检测及防御。
该方法的实现原理很简单,就是用户访问 系统时记录每个用户的信
息,然后进行对照,并根据设定的策略比如: 秒钟刷新页面 次判断用户
是否属于恶意刷新。
我们的入侵检测程序应该放到所有 程序的执行前,也即若发现
用户是恶意刷新就不再继续执行 中的其它部分内容,否则就会失去
了意义。这就需要以插件的方式把入侵检测的程序置入 应用中,使
得每次用户访问 ,都先要到这个入侵检测程序中报一次到,符合规
则才能放行。
应用大致分为两种,一种纯 方式,一种是基
于框架如 、 等的。第一种方式的 可以通过
中的 ! 接口实现,也即实现一个 ! 接口,在其 "# ! 方法
中插入入侵检测程序,然后再 $%&' 中作简单的配置即可。在基于框架的
应用中,由于所有应用都有一个入口,因此可以把入侵检测的程序直接插
入框架入口引擎中,使框架本身支持入侵检测功能。当然(也可以通过实现
! 接口来实现。
在 框架中,已经置入了简单入侵检测的程序,因此,这里我们
以 框架为例(介绍具体的实现方法及源码,完整的代码可以在
源码中找到。
在基于 的 应用中
如 )*++$$$%,-%.#'++,默认情况下你只要连续刷新页面次数过
多,即会弹出如下的错误:
框架友情提示/
您对页面的刷新太快(请等待 0 秒后再刷新页面!
详细请查询 )*++$$$%,-%.#'
二、用户访问信息记录 12#.%, 类
这个类是一个简单的 ,主要代表用户的信息,包括用户