主权项 |
一种防御tcp全链接攻击的方法, 其特征在于配合使用netfilter提供的防DDOS攻击系统,实现对真实IP发起的全链接攻击<b>进行丢弃</b>并将攻击源加入黑名单以阻断攻击源已建立的链接,或将确定发起正常链接的源IP加入白名单以加速正常链接的访问速度,防DDOS攻击系统,包含动态黑白名单控制模块(1)、最大并发链接数检测模块(2)、新建链接速率检测模块(3)和源IP信任检测模块(4),其中:(1)动态黑白名单控制模块,通过<b>检测</b>最大并发链接数检测模块(2)和新建链接速率检测模块(3)<b>的发包速率</b>来判断一个IP是否需要加入黑名单;通过源IP信任检测模块(4)判断一个IP是否需要加入白名单,具体步骤如下; 黑名单的检查在协议栈的处理中应该尽量早的提前,这样在检查到源IP为非法IP后就直接丢弃,避免数据包继续往后处理以浪费资源; 白名单的检查应在最大并发链接数检测模块和新建链接速率检测模块这两个模块之前进行,检查到源IP在白名单将跳过最大并发链接数检测模块和新建链接速率检测模块这两个模块的检查,以避免这两个模块对合法的IP做错误的控制;(2)最大并发链接数检测模块,对单个IP的最大并发链接数进行检测,需要设置一个阀值,当检测的结果大于这个阀值,则认为这个源IP是一个攻击源,此时需要将此报文阻断并将此IP加入黑名单,同时根据配置决定是否需要进行日志报警;(3)新建链接速率检测模块,对单个IP的新建链接速率进行检测,需要设置一个阀值,当检测的结果大于这个阀值,则认为这个源IP是一个攻击源,此时需要将此报文阻断并将此IP加入黑名单,同时根据配置决定是否需要进行日志报警;(4)源IP信任检测模块,对单个IP的网络行为进行分析,如果在一段时间内该IP都是发送的正常流量则允许将该IP加入白名单一段时间,在加入白名单的这段时间内该IP的流量是直接放过的;防御DDOS攻击的步骤包括:(1)最大并发链接数检测模块:对netfilter中的connlimit模块进行修改,在检测到单个IP的并发链接数超过设置的阀值时将数据包丢弃并将源IP添加黑名单;(2)新建链接速率检测模块:对netfilter中的hashlimit模块进行修改,在检测到单个IP的新建链接速率超过设置的阀值时将数据包丢弃并将源IP添加黑名单;(3)源IP信任检测模块:基于netfilter实现一个单独的hook处理模块,对单个IP的网络行为进行分析,如果没有发现异常流量,则将该IP加入白名单;(4)黑名单检查:基于netfilter实现一个单独的hook处理模块,其优先级靠前,获取报文的源IP与黑名单中的IP地址进行匹配,如果匹配成功则将报文直接丢弃;(5)白名单检查:基于netfilter实现一个单独的hook处理模块,其优先级在最大并发链接数检测模块和新建链接速率检测模块前面,获取报文的源IP与白名单中的IP地址进行匹配,如果匹配成功则将报文直接放过不需要再经过最大并发链接数检测模块和新建链接速率检测模块。 |