基于蜜罐技术的DDoS攻击防御研究

2017-09-23 21:57张宝全周枫黄祖源
软件 2017年6期
关键词:重定向蜜罐子网

张宝全+周枫+黄祖源

引言

随着网络信息技术的快速发展,信息安全问题也层出不穷。信息安全技术是整个信息技术的重中之重。信息安全就是一场攻击方(黑客等)和防御方(網络安全管理员等)之间的博弈。

在各种网络攻击中,以DDos攻击危害性最大也最难防御。DoS(Denial of Service,拒绝服务)攻击是一种攻击者通过发送大量伪造请求消耗服务器资源或网络带宽从而导致服务器或网络瘫痪的网络攻击手段Ⅲ。DoS一般是一对一的攻击,破坏程度低,如果是多对一的攻击,破坏程度就会很高,那么目标主机就很容易瘫痪,这就是所谓的DDoS攻击。DDoS是分布式拒绝服务(Distributed Denial of Ser.vice)攻击的英文缩写。顾名思义,黑客用网络上的已被攻破和控制的电脑作为“傀儡”,然后用为数众多的分布在不同地理位置的“傀儡”主机对目标服务器发动如同洪水猛兽般的大规模密集式攻击,使得目标服务器系统资源或网络带宽被占用耗尽甚至瘫痪以致不能为真正用户的正常请求提供服务。

近些年来大规模且破坏严重的DDoS攻击层出不穷,尽管它是网络空间中一种极其简单粗暴的攻击方式,但却是让世界各大网站管理员谈虎色变的话题。仅2016全年就发生了这7起严重的DDoS攻击事件:(1)暴雪DDoS攻击;(2)珠宝店遭遇25000个摄像头组成的僵尸网络攻击;(3)Anonymous组织发起的“Operation Oplcarus”攻击;(4)精准的NS1攻击;(5)五家俄罗斯银行遭遇DDoS攻击;(6)Mirai僵尸网络攻击KrebsonSecurity;(7)美国大半个互联网下线事件。

尽管DDoS攻击具备了分布式的特定,攻击强度也强大了很多,但是我们并非对此就束手无策和坐以待毙。目前应对DDoS攻击已有了很多方法,可以从不同的位置进行防御,如表1所示。

本文提出了一种基于蜜罐技术的DDoS攻击防御技术,有了如下改进:(1)本技术部署在受害服务器端,不需要ISP的支持与配合,不依赖资源优势和更多额外设备的支持。(2)本技术通过蜜罐技术采集异常网络流量来检测被保护的服务器系统是否受到DDoS攻击,不考虑源IP地址的真伪。(3)蜜罐系统对攻击行为进行记录,远程存储的日志记录对攻击行为的分析和防御措施的部署提供详细的参考信息,甚至还可以对攻击取证提供法律证据。(4)本技术采取判断重定向机制,能够识别、渗透和分析这种机制,并以一种自动的、受控制的方式处理访问请求,对访问行为进行重定向,攻击行为由蜜罐系统处理,正常用户的访问由真实服务器处理,保障了系统的可用性和可靠性。

1DDoS攻击特点分析

通过对近年来大规模的破坏严重的DDoS攻击细致的分析,可以得出DDoS攻击有以下主要特点:

(1)攻击规模强度大。由于黑客利用被攻陷的众多傀儡主机或“僵尸网络”同时对目标服务器进行攻击,将汇聚形成巨大的攻击洪流,短时间内即可达到目标服务器的处理容量上限,导致目标服务器无法为真正用户提供正常服务,即所谓的拒绝服务。“10·21美国网络瘫痪事件”就是由于黑客对Dyn公司运营的根域名服务器发动了DDoS攻击,使得根域名服务器无法对正常网站提供DNS域名解析服务,从而导致全美Twitter、纽约时报等主要网站几乎都中断了服务。Dyn公司表示针对物联网智能设备的被Mirai恶意程序感染的僵尸网络可能就是发起该DDoS估计的罪魁祸首,这是有组织有预谋的大规模网络攻击行为,来自千万数量级的IP地址(tens of millions of IP addresses at the same time)参与了攻击。图1是Twitter网站状态历史记录,大规模的DDoS攻击最终使得网站瘫痪、无法访问。

(2)攻击影响范围大。DDoS攻击的目标种类繁多,可以是各大门户网站、政府政务网站、企事业单位网站或域名解析服务器。“10·21美国网络瘫痪事件”几乎导致整个北美网络瘫痪,如图2红色部分区域用户表示他们无法访问网站。

(3)攻击源分布式。DDoS不同于DoS之处就是DoS是一对一的映射,而DDoS是多对一的映射,攻击源可能位于网络中的不同节点位置和不同的地理位置。特别是僵尸网络发起的DDoS攻击,其僵尸主机遍布全球各地。攻击者从多个攻击源对目标服务器发动攻击。

(4)攻击行为匿名。一般来说,攻击者为了隐藏身份,通常会随机伪造源地址,通常会控制一个大型的僵尸网络向目标服务器发动攻击。

(5)反侦探技术强。攻击者进行攻击行为后,一般会篡改或者删除服务器日志记录,让防御者防不胜防。

2蜜罐技术分析

2.1蜜罐技术

网络信息安全如此糟糕,究其根源就是攻击者与防御者之间在进行着一场不对称的攻防博弈,攻击者肆意而为,而防御者必须确保系统整体的安全性能,最为可怕的是防御者即使在被攻陷后还很难了解攻击者的来源、攻击方法和攻击目标。而蜜罐技术可以捕获黑客的攻击行为,并对深入分析和研究黑客攻击行为提供了资料和证据。

蜜罐是英文Honeypot的意译,蜜罐类似‘锈饵”或“陷阱”,好比一个情报收集系统,故意引诱攻击者来攻击。并对黑客攻击行为进行详细的记录,可以得知系统的漏洞和黑客的攻击过程,窃听黑客之间的联系,收集黑客所用的攻击工具和手段,以便进行下一步对真实服务器的防御部署。蜜罐就是网络管理员经过精心设计的“黑匣子”,看似漏洞百出却尽在掌握之中,主要目的就是收集攻击者的入侵数据,提取有价值的数据然后通过分析工具对这些数据解读和分析最后得出结论用于下一步的安全防御。设计蜜罐的初衷就是让黑客入侵,其价值就在于被探测、被攻击和被威胁。网络安全管理员可以对蜜罐采集的信息分析处理,然后打入黑客控制的僵尸网络内部,获取重要的攻击防御信息,切断黑客的远程控制机制,最终把攻击行为消灭于无形。endprint

蜜罐系统有这些功能:阻止、推测和记录、响应。

(1)阻止。蜜罐系统能够有效的阻止多种攻击。例如,能够创建tarpit系统降低诸如蠕虫发动的TcP/IP自动工具。蜜罐系统也可以设置欺骗系统给黑客造成假象,迷惑和阻止黑客的攻击行为。

(2)探测和记录。当目标服务器被攻击时,蜜罐系统必须要探测出入侵行为,并尽可能详尽的如实记录攻击行为,可以附带报警机制。

(3)响应。倘若攻击行为发生,关键的一步就是收据证据——攻击者何时何地干了何事。这是至关重要的,涉及到防御措施部署和法律取证问题,没有证据,一切只是纸上谈兵。蜜罐系统还需要判定攻击者是否留下了后门或者修改了关键信息以及有没有以蜜罐服务器为跳板渗透到网络中。必要的时候可以将蜜罐服务器迅速关闭做分析,而不会影响正常的用户访问行为。

2.2蜜罐工作模块和Honeyd软件包

蜜罐要迷惑黑客并完成相应任务绝非易事,必须要解决伪装逼真、适度控制、信息采集记录三大难题,这样才不易被黑客识破并能完成任务。总而言之,蜜罐系统包含这4个模块:伪装模块、信息采集模块、风险控制模块、数据分析模块。

伪装模块:要使蜜罐以假乱真,黑客才会对其进行攻击,所以蜜罐要逼真的伪装,尽可能的像真实服务器。最好的伪装方法是将修改过敏感信息的工作系统的数据直接拷贝到蜜罐服务器上,对关键的信息如用户口令等用虚假信息替换。

信息采集模块:蜜罐系统的关键作用就是信息采集记录和分析,所以要尽可能详尽的采集黑客人侵攻击行为,完整的记录黑客攻击的整个过程。特别是蜜罐服务器与攻击源主机进行信息交互时,可以用Sniffer抓包软件把进出蜜罐系统的每一个数据包记录下来,这些信息对后续的分析非常有用。

风险控制模块:蜜罐的价值就在于引诱黑客攻击,只有被探测、攻击、利用的时候才能收集到攻击信息,从而实现蜜罐的价值。但是在引入蜜罐系统的时候如果风险控制不当,可能会对真实服务器产生潜在的危险,这是我们必须加以控制的。比如将蜜罐系统与真实工作系统做相应的隔离,放置于不同的DMZ区(Demilitarized Zone,非军事区),达到信息过滤的作用,以保障真实工作系统的信息安全。

数据分析模块:对采集记录下来的信息进行分析,区分开入侵到系统的黑客和正常访问的用户。对黑客的扫描、入侵、攻击行为进行分析,确定黑客的所作所为,包含攻击用的手段和工具等,然后将分析得出的结论用于下一步的防御部署之中。

Honeyd是—款优秀的虚拟蜜罐(virtual honeypot)软件。虚拟蜜罐就是指一种快速的方式在一个物理服务器上配置若干个蜜罐。虚拟蜜罐软件可以模仿IP堆栈、操作系统以及真实系统的应用程序,使得在网络上看起来就像运行着某种操作系统的真实系统。虚拟蜜罐系统建立好后,在它被攻陷之后很容易重新建立和再次使用。Honeyd可以用一台主机在局域网中模拟出多个不同的地址满足实验环境的要求,并且所有的虚拟主机皆可ping通,通过设置和修改配置文件可以虚拟运行各种服务。Honeyd可被用来模仿成千上万的系统,每个系统使用不同的端口和不同的IP地址,可以组建成蜜网(Honeynet)系统,大大减少了费用开支。

Honeyd是一种轻量级的守护程序,它能够产生为数众多的虚拟主机,可以对虚拟主机进行配置以提供个性化的服务,系统特征也是与配置参数相适应的,以至于看起来就像真实的系统在运行。在一个局域网的网络仿真中,Honeyd能够使单个主机拥有多达65536个IP地址。Honeyd通过把真实的系统隐藏在虚拟的系统中,达到了阻止黑客攻击的目的,确保了真实系统的安全性。

3基于蜜罐技术的DDoS攻击的防御模型

3.1本模型框架设计

本文提出了一个适用于Web网站服务器防御DDoS攻击的模型。我们假设该Web网站原始拓扑结构如图3所示。

为了保护Web服务器免受黑客DDoS攻击,我们对该网络拓扑结构做一些改动。添加关键设备蜜罐子网,然后增加辅助设备网关重定向器,如图4所示。重定向器中安装好入侵检测系统(intrusiondetection system,IDS)。下面详细说明该模型主要模块的作用和整体工作原理。

重定向器:主要功能是监测和鉴定正常访问行为和恶意攻击行为。它对任何访问者都是不可见的,其中安装好IDS。检测方法主要有基于异常流量的检测和基于特征匹配的检测,在异常入侵检测系统中常常采用以下几种检测方法:

(1)基于贝叶斯推理检测法;

(2)基于特征选择检测法;

(3)基于模式预测的检测法;

(4)基于统计的异常检测法;

(5)基于机器学习检测法;

(6)数据挖掘检测法;

(7)基于应用模式的异常检测法;

(8)基于文本分类的异常检测法;

(9)基于黑名单/白名单的异常检测法。

如果鉴定为正常访问行为,则不用重定向,由真实服务器响应请求,其网络拓扑结构同原始网络结构一样,对正常的网络通信没有明显的影响,从而保障重要客户的访问行为。但是,如果鉴定为恶意攻击行为,重定向器则激活重定向机制,网络拓扑结构就变成图4所示,将访问行为重定向至蜜罐子网中。重定向器只是在重定向的时候消耗少量的系统资源,故不会对Web网站产生较大的负载影响。

蜜罐:模型中的蜜罐起着至关重要的作用,是一個陷阱诱捕机制。引诱黑客攻击蜜罐,从而稀释攻击真实服务器的流量,同时记录黑客的攻击过程。在该模型中,将蜜罐服务器的连接超时时间、同时允许打开的半连接数的值设置为0。这样,很多请求会在短时间内丢弃,蜜罐服务器资源就不容易被占用消耗殆尽,可以承受大量的攻击流。对于重定向器鉴定的恶意攻击行为被重定向至蜜罐子网中后,日志详尽的记录下这些攻击信息。有了这些攻击信息,我们可以对症下药,部署防御措施。本模型选用的蜜罐系统是Honeyd。Honeyd是一款用于搭建虚拟蜜罐的开源软件,其在一台物理主机虚拟出多个操作系统并配置不同地址的虚拟技术使他们看起来就像是运行在某个特定操纵系统上一样,在掩护真实服务器的同时又设置了一个引诱黑客的陷阱,是比较流行的蜜罐,蜜网程序。Honeyd不仅为我们的方案节省了开支,也可以让我们根据需要添加功能。endprint

3.2技术要点

整个模型还要保证能够实现以下几个技术要点:

(1)攻击流必须主动地被引入蜜罐子网中。主要靠重定向器完成,其中安装好入侵检测系统snort。

(2)不能中断对主要客户的服务,还是靠重定向器实现。

(3)蜜罐系统的日志记录必须做到安全可信。可以通过日志远程安全存储保障。

(4)必须要严格控制攻击者利用蜜罐子网发起对第三方的攻击,可以把蜜罐子网和服务器子网隔离,服务器放置在单独的DMZ区。

4防御模型的实施

4.1攻击重定向技术实现

攻击重定向技术是实现该防御模型的关键技术之一。我们需要安装和配置好snort开源软件包。为了安全性,我们只需要打开Web服务器的wvcw服务的80端口即可。然后在snort规则语句中加入该语句:

alert tcp any any->222.197.198.143/24 80(itype:10000;msg“DDoS attack”;)

这条语句的意思是对来自于任何源IP地址和任何端口传送到主机地址为222.197.198.143的80端口的服務器的TCP连接,如果每秒的连接请求次数大于一万次,则鉴定其为DDoS攻击。语句从左到右逐次解释如下,语句头部分的“alert”生成一个警报并记录下来;“tcp”是协议类型;两个连续的“any”,前一个表示任意IP地址,后一个表示任意端口号;“>”表示请求方向;“222.197.198.143”表示目的主机IP地址;“24”表示子网掩码为24位长,即子网掩码为255.255.255.0;“80”表示端口号;“itype:1000”表示测试ICMP的type字段的值;“msg”定义了要包含在警告信息中的文本。

然后我们在snort转发规则中加入下列转发判断语句。

变量message由alert语句中msg赋值,IP1、IP2……是重定向白名单中的IP地址,如果源地址不在白名单里,则重定向到蜜罐子网,由蜜罐子网处理攻击行为。

4.2蜜罐服务器配置

我们把真实Web服务器内容拷贝到蜜罐中,然后修改和替换其中敏感和重要的信息,最终达到迷惑攻击者的目的。

实验中需要用到Honeyd软件包,Honeyd不能独立运行,需要三个函数库作为配套,libenvent,libdnet,libdcap。Honeyd的库有很多,所以编译和安装Honeyd比较难。大略步骤是先安装libpcap包、libdnet包、libevent包,最后再安装Honeyd包。这样就完成Honeyd的安装。

然后对虚拟蜜罐配置,通过合理的使用create,set,add,bind指令创建一个虚拟的操作系统,并绑定IP地址。然后对路由拓扑配置,有了这些配置,我们就可以通过“#./Honeyd-f Honeyd.conf”指令启动Honeyd程序。

在蜜罐子网中,我们要防止蜜罐子网被黑客攻陷沦为“跳板”进行下一步攻击,必须做好访问控制。访问控制可以通过编写好的脚本将蜜罐子网内的全部外出访问请求都过滤掉,从而防止蜜罐子网被攻陷沦为“跳板”攻击第三方。

4.3远程日志存储功能的实现

通过把日志记录远程存储,确保日志记录不会被黑客篡改和删除。由于远程日志只能由网络安全管理员访问,普通用户和攻击者无法访问,安全性是可以保证的。当黑客攻击行为被引诱到蜜罐服务器中时,日志详细的记录了黑客的所作所为。由于蜜罐服务器端是Unix域套接字,而远程日志存储需要TCP套接字通信,两者速度并不一致,需要缓冲技术,如图5所示,日志记录通过缓冲区安全的传送到远程日志存储服务器中存储。

4.4模块主流程

整个模块以守护进程(Daemon)的方式脱离终端控制始终在后台运行,不会被终端中断。主流程分5步:

(1)Init daemon

初始化,使程序以守护进程方式运行;

(2)IntAgrogram

初始化程序全局变量;

(3)Cterat send thread

创建新的线程并与远程数据中心建立连接;

(4)Int unix socket

创建Unix的数据包套接字;

(5)Recv Drocess_log

接收和保存Honeyd发送的日志记录。

5结束语

本文分析了信息安全领域中最常见且破坏严重的DDoS攻击,然后提出了一种基于蜜罐诱捕技术的应对DDoS攻击的防御模型,该模型只需要部署在目标服务器端,简单易行。本模型采取蜜罐技术记录了攻击行为特征并远程存储日志记录,对DDoS攻击的分析及防御部署非常有用。本模型采取重定向技术,使正常访问请求转发到真实服务器中处理,异常攻击则重定向到蜜罐子网处理,保证了真实服务器的可用性和可靠性。本模型还采用了访问控制技术,蜜罐系统流出请求被过滤,远程日志服务器只能由安全管理员访问,确保了在引入蜜罐技术的同时不会带来新的潜在威胁。最后通过Honeyd软件包搭建了该模型的虚拟蜜罐,并实施了该模型的防御功能。

但是,本模型也存在一些不足之处。一是没有考虑到源IP地址的真伪;二是重定向器可能对正常访问行为和恶意攻击行为会存在误判,这是我们后续研究的重点。endprint

猜你喜欢
重定向蜜罐子网
被自己撑死的蜜罐蚁
子网划分问题研究及应用
解决安卓文件夹乱象
基于博弈的蜜罐和入侵检测系统最优配置策略
重复压裂裂缝重定向的措施研究
哈密瓜:乡间蜜罐
子网划分的简易方法
基于安全协议的虚拟专用子网研究
基于马氏体重定向的铁磁形状记忆合金本构理论分析