基于连接状态和SDN的混合蜜网TCP连接转移方案

第54卷 第2期2021年2月
通信技术
Communications Technology
Vol.54 No.2
Feb. 2021
文献引用格式:刘加慧,王轶骏,薛质.基于连接状态和SDN的混合蜜网TCP连接转移方案[J].通信技术,2021,54(2):444-450.
LIU Jiahui,WANG Yijun,XUE Zhi.TCP Connection Handover Mechanism for Hybrid Honeynet
based on Connection State and SDN[J].Communications Technology,2021,54(2):444-450.
doi:10.3969/j.issn.1002-0802.2021.02.027
基于连接状态和SDN的混合蜜网TCP连接转移方案*
刘加慧,王轶骏,薛 质
(上海交通大学,上海 200240)
哈特曼光阑摘 要:蜜罐作为一种主动性防御手段,在对攻击手段的研究和业务网络的保护上都具有非常重要的作用。业界中结合高、低交互蜜罐优点而提出的混合蜜网系统,存在流量过滤和连接转移等方面的问题。因此,利用软件定义网络灵活的流量控制能力,通过连接状态跟踪和对TCP握手包的反向构造,提出了一种混合蜜网中高、低交互蜜罐之间的连接转移方案,具有良好的稳定性,使得蜜网的部署更加灵活。
关键词:蜜罐;SDN;连接跟踪;连接转移
中图分类号:TP393.08 文献标识码:A 文章编号:1002-0802(2021)-02-0444-07
TCP Connection Handover Mechanism for Hybrid Honeynet based on
Connection State and SDN
LIU Jiahui, WANG Yijun, XUE Zhi
(Shanghai Jiao Tong University, Shanghai 200240, China)
Abstract: Honeypot, as an active defense system, plays an important role in analysis of attacks and protection of production networks. The traditional hybrid honeynet proposed by combining the advantages of both high and low interaction honeypots are suffering from traffic filtering and connection redirection. This paper proposes a SDN based TCP connection handover mechanism, combining connection tracking module and construction of TCP handshake packet to complete the redirection. The experiments indicate that the mechanism is effective and stable.
Keywords: honeypot; SDN; connection tracking; connection handover
0 引 言
蜜罐作为一种主动性防御手段,在对攻击手段的研究和业务网络的保护上都具有非常重要的作用。蜜罐按照与攻击方的交互程度,可分为高交互蜜罐和低交互蜜罐。高交互蜜罐采用真实系统搭建,能够比较容易地构建出一个具有良好诱骗性的蜜罐欺骗环境。低交互蜜罐通过编制软件的模拟仿真方式实现,为攻击方提供受限的交互[1]。混合蜜罐的基本思想是在网络的前端利用较少的资源部署大量低交互蜜罐,通过与后端少量高交互蜜罐之间的流量迁移,实现攻击捕获和分析。但是,传统蜜网粗粒度的数据控制能力使得传统混合蜜网存在连接控
* 收稿日期:2020-10-21;修回日期:2021-01-10 Received date:2020-10-21;Revised date:2021-01-
10基金项目:国家重点研发计划项目“网络空间安全”重点专项(No.2017YFB0803203)
Foundation Item: National Key Research and Development Program Project “Cyberspace Security” Key Special Project (No.2017YFB0803203)
SYN,Seq=X SYN+ACK,Seq=Y,
平面涡卷弹簧
ACKnum=X+1 ACK,Seq=X+1,
ACKnum=Y+1 PSH+ACK,Seq=X+1, ACKnum=Y+1 ACK,Seq=Y+1,
ACKnum=X+N PSH+ACK,Seq=Y+1, ACKnum=X+N
图2 高、低交互蜜罐之间的连接转移过程
第54卷第2期刘加慧,王轶骏,薛 质:基于连接状态和SDN的混合蜜网TCP连接转移方案
步骤2:控制器收到第一个PSH包后,首先提取数据包中的序列号、应答号以及标识号等关键字段,保存连接信息,并保存此报文。其次,控制器利用序列号和标识号反向构造SYN握手包,发送给高交互蜜罐。最后,控制器下发流表,通知交换机将此连接的后续报文全部提交至控制器处理。
当控制器收到高交互蜜罐的SYN/ACK包时,提取并保存该报文中的序列号后构造ACK包,将其发送至高交互蜜罐,完成TCP三次握手。控制器对保存的PSH包进行应答号修改,发送至高交互蜜罐,完成连接转移。
步骤3:后续报文都将由交换机提交给控制器,控制器对报文进行修改后,交由交换机完成报文转发,从而实现攻击者与高交互蜜罐的通信。
自动供水控制器对于FTP数据连接,TCP三次握手的第一个SYN包被CT模块判断为FTP数据连接。交换机直接将该报文提交给控制器,控制器下发流表,将报文直接转发至高交互蜜罐。
3 TCP握手包反向构造
连接转移过程中,控制器仅需构造TCP三次握手中攻击者发送的SYN包和ACK包。下面给出TCP握手包不同字段的构造方法。
3.1 序列号和应答号
从图1给出的连接建立过程可知,第一个PSH 包与SYN握手包之间的序列号差值为1,与ACK 握手包的序列号相同。
omap4460
连接切换时,使用攻击者的序列号与高交互蜜罐建立新的TCP连接,高交互蜜罐将生成一个新的序列号,其中以Seq LIH表示低交互蜜罐的初始序列号,以Seq HIH表示高交互蜜罐的初始序列号。连接转移后,后续所有来自攻击者的报文都需要对应答号按照式(1)修改,而来自高交互蜜罐的报文都需要对序列号按照式(2)修改。
ACKnum=ACKnum-Seq
LIH
+Seq HIH(1)Seq=Seq-Seq挤压爆破
HIH
+Seq LIH(2)3.2 窗口大小
该字段为接收端通知发送端自己当前能够接收的字节数。在TCP握手阶段,双方报文不携带载荷,因此该值在握手阶段所起作用不大,常见值为 64 240。在反向构造时,它可以使用PSH包的窗口值。3.3 TCP可选项
TCP可选项位于TCP头部的最后,此处仅分析会出现在SYN和SYN/ACK报文中的可选项。
(1)最大报文长度(Maximum Segment Size,MSS)。TCP连接双方会在各自的SYN包中声明MSS值,并在握手结束后选择两个值中的较小值作为协商值。MSS是可选项中最重要的一个选项,默认大小为1 460。由于该值受链路上其他转发设备的影响,因此需要综合考虑实际情况进行设置。为避免丢包,可启用高交互蜜罐的路径MTU发现机制,并设置防火墙允许ICMP报文分段消息通过。或者可以采取更简单的方式,将MSS设置为一个较小值1 380,以适应大部分链路状况。
(2)时间戳。时间戳用于计算往返时延。发送方发送报文时将当前时间戳放入TSval,接收方确认该报文时会把该值放入TSecr。如果TCP通信双方协商使用时间戳,则每个数据包中都会带有该可选项,因此控制器可通过PSH报文进行判断。该值的修改方式类似序列号和应答号。
(3)其他选项,如SACK、窗口扩大因子等。通常,由于客户端与服务器的SYN包中很少使用这些选项,也无法通过PSH包推理得到,因此本文所提方案不会使用这些可选项。
3.4 其他字段
源和目的端口可根据高、低交互蜜罐之间的映射关系,交由SDN交换机进行修改。校验值、标志位以及紧急指针等字段进行相应的设置即可。3.5 IP包头中的标识符
该字段主要在报文分段时起作用,初始值随机生成,在客户端的SYN包、ACK包和第一个PSH 包中加
1递增,而在服务器端的SYN/ACK包中值为0。因此,在反向构造SYN包和ACK包时,可依据PSH包的标识值做减法处理,连接转移之后则不需要修改该字段。
4 设计实现
4.1 系统搭建
本文选择OpenFlow协议1.3版本,控制器框架采用基于Python的Ryu,以实现更好的扩展性。交换机采用Open vSwitch,部署于Ubuntu系统之上。系统搭
图3 系统搭建结构
图4 OVS交换机1关键流表项
图5为低交互蜜罐捕获的握手包,在收到攻击者的ACK包后,连接从低交互蜜罐向高交互蜜罐转移。图6展示高交互蜜罐中FTP控制连接建立时的握手包,其中SYN握手包(编号29)由控制器反向构造,ACK握手包(编号31)由控制器修改原始包(图5编号73)的应答号后重放。三次握手结束后,高交互蜜罐发送PSH包(编号32),连接转移成功。图7展示高交互蜜罐中FTP数据连接建立时的握手包。通过CT模块的跟踪功能,FTP 的数据连接在第一个SYN握手包到达时被识别,连接直接转移至高交互蜜罐。4.3 数据包对比
图8和图9展示了SSH连接转移过程中,攻击者发送的SYN握手包和SDN控制器构造的SYN握手包。两者仅在可选项上存在差异。
4.4 性能测试穿孔塞焊
性能测试同样使用SSH建立连接,计算攻击者发送第一个PSH包和收到的服务器ACK回复之间的时间差。选取攻击者与低交互蜜罐直接连接方案、本文连接转移方案以及攻击者与高交互蜜罐直接连接方案3种情况进行对比。实验计算10次SSH连接的平均值,50次SSH并发连接平均值,统计结果见表1。

本文发布于:2024-09-21 03:14:58,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/239238.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:连接   蜜罐   交互   握手   控制器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议