3.2 针对定向Web攻击的蜜罐技术
在定向Web攻击中,攻击多由攻击者亲身参与。这种攻击有明确的目标对象,比如官网首页或者某个子部门的二级域名网站。这种攻击模式往往呈现的是定向、高交互的特征,所以应对这种攻击模式的蜜罐技术在空间部署后会像图2所示,其诱导装置检测攻击并将攻击诱导至一个与真实业务系统高度仿真的蜜罐,诱导装置和蜜罐共同保护着真实业务系统。这种应用场景下的蜜罐具有高交互、高隐蔽性的特点,高交互是为了能够和攻击者进行更多的交互行为,一方面可以捕获更多攻击数据,另一方面也是为了提高自身的隐蔽性。隐蔽性除了高交互特征提供之外,也包含了监测机制的隐蔽性,以保证攻击者无法察觉。在此场景下,蜜罐技术除了具备Web攻击预警、Payload捕获效能之外,还能延缓攻击进程,给予安全防护人员更多的应急响应时间。

介绍完两种攻击模式下的Web蜜罐技术,接下来将主要就单蜜罐技术进行讨论,提出面向Web安全防护的蜜罐技术分层模型。
4 面向Web安全防护的蜜罐技术分层模型
在Web应用开发领域有一种著名的架构模式叫做MVC,它将Web应用系统分为模型层(Model)、控制器层(Controller)和视图层(View)。在分析研究当前主流的Web蜜罐后发现,应用于Web安全领域的蜜罐技术也可按照这三层为界限进行划分。蜜罐技术本质是诱骗和监测,根据诱骗和监测发生在MVC的不同阶段,可将Web安全防护中的蜜罐技术分为视图层蜜罐技术、控制层蜜罐技术和数据层蜜罐技术,其模型示意图如图3。

接下来将从这三层逐一展开,说明每一层蜜罐技术的表现形式和特点,并介绍相应的主流Web蜜罐技术。
4.1 视图层蜜罐技术
视图层蜜罐技术指的是诱骗或监测发生在视图层及以上的技术形态,主要表现为各类具有模拟功能的低交互Web蜜罐、记录HTTP流量类型的纯蜜罐、Web中间件类型蜜罐、反向代理类型蜜罐等。Glastopf是一款优秀的低交互Web蜜罐,它通过各种Web漏洞类型模拟器模拟各类Web漏洞。纯蜜罐通过将真实的业务系统脱敏,在其上层添加记录流量的组件使其成为一个蜜罐系统。2015年,Araujo等人在USENIX上提出的基于LLVM的DataFlowSanitizer实现的是一种基于信息流的Apache Web中间件蜜罐,在检测到攻击时自动将攻击者的网络连接引导至具备监测能力进程上。HFish蜜罐平台是基于Nginx中间件开发的插件,可以实现将任意站点转化为蜜罐。2017年,Izagirre等人提出反向代理等手段在应用层操纵HTTP请求注入诱骗数据以检测攻击和阻断攻击,属于反向代理类蜜罐技术。
这类蜜罐技术的监测层次处于视图层及以上的位置,捕获和记录攻击者对于Web蜜罐的输入数据,相对来说比较简便易行。但由于监测的层面较高,往往捕获到的攻击行为数据所携带的语义信息更低,当数据量较大时可能需要结合其他数据分析方式如数据挖掘等进行辅助分析。这个层面的Web蜜罐技术的监测工作已经做得相对比较完善,未来的研究主要集中在诱骗策略的设计以及对大量语义数据的分析工作上。
4.2 控制器层蜜罐技术
控制器层蜜罐技术的诱骗或监测发生在视图层之下、数据层之上,主要包括各类高交互Web蜜罐、网站影子系统等。比如HIHAT可以将现有的PHP应用转化为一个高交互蜜罐,虽然部分PHP应用没有明显划分MVC3个层级,但转换后的蜜罐监测功能实际上是发生在控制器层,所以可以划分到控制器层的蜜罐技术。2017年,ArkTeam在FreeBuf互联网安全创新大会(FIT2017)上发表的“网络欺骗:防御者的诡计”主题演讲中提到的影子服务,即在真实业务系统旁边安插的高度仿真的蜜罐系统,其本质上也是一个高交互的蜜罐,所以也可将其划分到控制器层蜜罐技术范畴。2020年,Niakanlahiji等人提出一种根据攻击者交互数据推测攻击者水平,从而为攻击者提供定制化的Web蜜罐来最大化地迷惑攻击者的思路,这种交互数据的捕获需要在控制器层面,进而才能获取更多的语义信息输入到推测模型,所以这种也可以归类到控制器层的蜜罐技术。
控制器层蜜罐技术捕获到的攻击行为数据相较于视图层来说语义更加丰富,但相对来说监测也更加困难。HIHAT虽然做到了自动化地将现有应用转化为高交互蜜罐,但是其实现的机制不是很隐蔽,与蜜罐技术本身的诱骗功能存在冲突,在监测隐蔽性上仍有待提升。此外,还可基于高交互特性获取到的高语义数据来进行进一步的分析以提高蜜罐整体的诱骗性。
4.3 数据层蜜罐技术
数据层蜜罐技术偏向于数据层面的诱骗和监测,主要包括数据库蜜罐、数据蜜饵等,目前的研究工作数量相对前两种层面的蜜罐技术较少。NoSQLpot是一个NoSQL蜜罐框架,可以模拟各类NoSQL数据库,记录数据库操作行为,属于数据层蜜罐技术。2013年,Juels等人提出的“honeywords”的诱骗手法,通过给正常的用户设置除了正确密码以外的密码,当攻击者以honeywords登录时就会触发警报,本质上是一种数据库蜜饵。