方案
2.1 Web应用安全的问题所在
随着Web应用安全问题越来越严重的,开始出现Web蜜罐。Web蜜罐分为两类:客户端蜜罐和服务端蜜罐。客户端蜜罐通过主动访问网站来检测恶意活动,服务端蜜罐通过暴露有漏洞的服务来吸引攻击者[2]。该文主要讲如何在服务端部署面向Web应用安全的联动蜜罐形成蜜场。
互联网上Web攻击一般分为两种:一种是针对某个特定目标的恶意攻击,一种是大范围撒网的无特定目标的恶意攻击。对于前者,攻击者会主动分析特定目标的IP地址、域名等信息,分析特定目标可能存在的漏洞,然后采用相应的攻击手段。这种情况下在互联网上部署的蜜罐系统意义不是很大。因此该文中设计的面向web应用安全的蜜场系统并不是针对特定目标的攻击,而是針对无特定目标的恶意攻击。无特定目标的攻击会在互联网上采用撒网式的方法寻找有漏洞的应用。为了节省成本,这一类恶意攻击通常会使用集成搜索引擎和扫描软件的工具进行,但是,到达蜜罐的攻击并不可能全部是针对蜜场中蜜罐上已经部署的应用,在这种情况下某些攻击就会失败,蜜罐就不会捕获到某次攻击的信息。
针对这种情况,该文要解决两个问题:一个就是怎样从针对不同应用的众多攻击流量进行选择,再转发给相对应蜜罐;另一个就是能从蜜场中部署的蜜罐发出的众多响应中选择最优响应作为攻击者响应。这些都取决于蜜罐选择算法,该文设计了一个动态联合算法来进行目标Web应用蜜罐的选择。
2.2 面向Web应用安全的蜜场的具体部署
该文将以一个具有多个分公司的企业网络为例,设计一个综合各种防护的安全网络,它既包括防火墙、入侵检测等传统被动保护技术,又包含主动的蜜场技术。其体系结构如图1所示。
企业的总体网络被划分为为两部分:一个是受保护子网即多个分公司内网,另一个是Web应用模拟子网,在每个分公司的受保护子网中都部署了一个像诱饵一样的服务,这些服务动态地模拟自己所在的分公司内网环境,利用多台虚拟主机,最大程度地吸引攻击者。而在Web应用模拟子网内,则配置了具有高交互性的物理蜜罐,它模拟了各种可能的应用,应对各种转发请求。此外在企业内网和外网之间设立了防火墙、位于Web应用模拟子网前端的蜜墙[4]、IDS和路由器等常规控制安全设备。这些设备既完成了网络连接任务,又能起到保护企业子网、采集入侵者信息和控制部署蜜罐带来的风险等功能。
3 面向Web应用安全的蜜场系统的关键功能设计
在图1中所设计的安全防护系统中,蜜场系统中的蜜罐模型是一种由多个具有高交互性的不同Web应用蜜罐群。这些蜜罐上被部署了多种不同的真实的Web应用或服务,由一个动态联动管理器进行管理,按照攻击特征进行动态选择相应的应用蜜罐与攻击者交互。
该模型可以用图2来表示,由两个部分组成:受保护子网和Web应用模拟子网。
受保护子网中部署了诱饵,它们能够虚拟所在子网的不存在的IP地址主机,这是个动态过程,为入侵者提供透明的转发服务,把未授权的或恶意的活动转发到Web应用模拟子网中的其中一个蜜罐中;同时又控制对外连接,对不符合转发条件的入侵行为根据控制规则制定策略;并且对与它相关的网络活动实时记录,获取入侵数据;Web应用模拟子网是由多个个中、高交互的蜜罐组成的蜜场,它接收受保护子网中的诱饵转发的网络数据包,给入侵者提供服务,收集应用程序和操作系统的事件日志,对进程和端口调用、系统调用以及安全审计作记录。
3.1 受保护子网中诱饵的设计
各个企业子网中都部署了一个诱饵,它会根据自己所在的企业子网的情况来模拟一些漏洞或服务,吸引入侵者的入侵注意点,诱饵一旦被攻击就会把入侵请求转发到动态联动控制器,由它选择转发到蜜场中相对应的蜜罐中,并且要对该入侵行为进行监控,以免入侵者利用被攻陷的主机去入侵网络中其他主机。在此,诱饵实现了如下功能。
(1)应对无目的扫描。网络中最常见的入侵前奏方式就是扫描,一旦发现对系统中并不存在的IP地址的探测,诱饵就会伪装成该地址,启动一次连接,把入侵者的请求进行转发,由动态联动管理器进行判断按照一定的选择算法转发到蜜场中运行相应的操作系统、开放对应服务或端口的蜜罐中。
(2)建立蜜罐配置数据库。它会提供接口,提取企业子网中主机的操作系统类型、提供的服务及开放的端口等信息,然后把这些信息写入一个数据库,配置蜜罐时可以以该数据库作为依据,当蜜罐日志中的流量信息有变化时需要修改数据库。
3.2 Web应用模拟子网的设计
Web应用模拟子网是一个部署了多个蜜罐的蜜场系统,它能对入侵行为进行互动,对入侵者形成很好的诱骗效果。该子网具有以下功能。
(1)对常见端口的模拟。一般入侵者攻击前都会扫描目。
标主机的服务端口,当发现系统打开的可以利用的服务端口时,就会向这些端口发起连接,并试图利用该漏洞来发送入侵代码,达到入侵目的。模拟服务端口的方法是欺骗入侵者的常用方法。
(2)对网络服务和系统漏洞的模拟。假设有一种蠕虫病毒扫描特定的IIS漏洞,可以在蜜场中构建模拟Microsoft IIS Web服务器的应用蜜罐,在监控过程中只要发现有与该蜜罐有http连接的交互,它都作为IIS Web服务器与攻击者响应。
(3)流量仿真和信息欺骗。攻击者一般会使用一些工具分析系统的网络流量,为避免其识别蜜罐避开蜜网系统,需要进行流量仿真。此外,很多服务器包含拥有者及其位置的详细信息,那么欺骗也必须以某种方式反映出这些信息,才能达到伪装目的。
部署蜜场时,需要给蜜场中的主机分配真实的IP地址,以便接受从动态联动管理器转发过来的经过选择的连接并记录入侵者的攻击信息。
3.3 动态联动管理器中的选择算法设计
动态联动管理器是整个模型中的指挥控制单元,主要功能是按照蜜罐选择算法进行选择蜜罐群中的一个应用蜜罐与攻击者进行交互,该算法的形式化描述如下。
HoneyGroup={DLM,HG},
HG={pot1,pot2,…,potn}。
其中,DLM是动态联动管理器(Dynamic Link Manager);HG是蜜罐群(Honeypot Group);poti是蜜场中部署的具有各种不同web应用的蜜罐。
在此,假设攻击者的请求为q,每个应用蜜罐的响应函数为Re=f(q),则应用软件对于一次请求的响应权值为Z。设A为蜜罐的响应域,应用软件对于一次攻击者请求的响应权值为Z,如果f(qi)∈A,则Zi=1,否则Zi=0,对于蜜场中蜜罐群的响应可以定义为:
f(q)=
蜜场中的蜜罐选择算法具体算法如下。
Input: the request q by attacker
Output: the reply Re by honeypot
INITIALIZE i=0 and Re=NULL
IF Re=NULL THEN
qi=q0;
END IF
WHILE i<=n
Send qi to poti and get the reply Rei
IF f(qi)€A THEN
Zi=1;
ELSE
Zi=0;
END IF
i=i+1;
END WHILE.
在该算法中pot0蜜罐是比较特殊的一个蜜罐,对于不能判断由哪个应用进行响应的请求,默认由该蜜罐进行响应,以免中断攻击过程。
4 结语
该文设计的系统是一个在具有多个分公司的企业中部署的综合防护系统,它通过动态选择最优攻击响应,可以减轻特征标识攻击带来的影响;另外它综合了具有主动防御性能的蜜罐技术和传统的具有被动防御性能的防火墙、入侵检测技术,通过蜜罐诱骗入侵者继而采集到少又精的入侵信息,这些入侵信息对于发现未知的攻击、研究入侵者攻击手段都是非常有价值的。为企业的网络安全构建提供了一个新的思路,但也存在一些尚未解决的问题,其后续得工作可以从以下两方面展开:第一,继续研究怎么能根据不同的网络状况,确定蜜场中蜜罐数量和受监控的IP地址数量的关系,并且要保证系统功能;第二,研究采用怎样的自适应算法,可以减少实验中的低交互蜜罐和中高交互蜜罐的互动过程中的手动操作,提高智能化水平。
参考文献
[1] Lance Spitzner.Honeyots:tracking the hackers[EB/OL].http:///2002.
[2] 贾召鹏,方滨兴,崔翔,等.ArkHoney:基于協同机制的Web蜜罐[J].计算机学报,2018,41(2):413-425.
[3] 吴智发,张芳芳.第三代蜜网网关ROO介绍[DB/OL].http:///honeynetweb/honeynetcn/TechnicalReports.htm,2008.
[4] 周莲英,曹登元,年轶.虚拟蜜罐系统框Honeyd的分析与研究[J].计算机工程与应用,2005(27):137-140.
相关热词搜索: 技术研究 面向 Web