[发明专利]一种针对混淆KCP协议加密流量的检测方法在审
申请号: | 202011218367.2 | 申请日: | 2020-11-04 |
公开(公告)号: | CN114531381A | 公开(公告)日: | 2022-05-24 |
发明(设计)人: | 钱友文;刘光杰;刘伟伟 | 申请(专利权)人: | 南京理工大学 |
主分类号: | H04L43/18 | 分类号: | H04L43/18;H04L69/164 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 王玮 |
地址: | 210094 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 混淆 kcp 协议 加密 流量 检测 方法 | ||
1.一种针对混淆KCP协议加密流量的检测方法,其特征在于,包括以下步骤:
步骤1:捕获UDP混合流量,基于libpcap网络库对UDP混合流量进行分流处理,并逐条发送UDP数据流量信息至缓存队列;
步骤2:逐条读取缓存队列UDP流量信息,基于DPI技术对负载数据包信息做伪装与混淆协议检测,得到疑似混淆KCP流量信息;
步骤3:提取可疑上行流量负载长度信息,检验疑似混淆KCP流量的通讯行为;
步骤4:提取可疑上行流量负载数据信息,检验疑似混淆KCP流量心跳行为,得到最终判定为混淆KCP协议流量。
步骤5:收集KCP协议流量四元组、协议和时间信息,收集为一条命中记录。
2.根据权利要求1所述的针对混淆KCP协议加密流量的检测方法,其特征在于:步骤1中,基于libpcap网络库,根据源地址、目的地址、源端口、目的端口、协议五元组以及时间信息对混合UDP流量进行分流处理,得到分流后UDP数据流信息,并逐流发送至缓存队列。
3.根据权利要求1所述的针对混淆KCP协议加密流量的检测方法,其特征在于,步骤2具体步骤包括:
步骤2-1:提取数据包负载信息中应用协议字段,识别UDP流量伪装应用类型;
步骤2-2:提取数据包负载信息中KCP协议字段,检测KCP协议字段规范性,判断是否是混淆KCP协议填充信息;
步骤2-3:提取数据负载信息中数据内容,对负载值进行随机性检测,判断数据包负载是否被加密随机化。
4.根据权利要求3所述的针对混淆KCP协议加密流量的检测方法,其特征在于,步骤2-1所述具体伪装的应用类型包括:基于UDP传输的应用类型BT下载utp协议、视频通话srtp协议、微信视频wechat-video协议、DTLS 1.2数据包dtls协议和WireGuard VPN数据包wireguard协议。
5.根据权利要求3或4所述的针对混淆KCP协议加密流量的检测方法,识别伪装应用类型,其特征在于,所述伪装应用类型的识别方法具体包括:
若伪装成utp应用类型,伪装字段为应用层负载第1-4个字节,上行应用层负载第1-4字节序列用16进制表示为[x1,y1,0x01,0x00],其中x1、y1为同一条流上行的固定字段;下行应用层负载第1-4字节序列用16进制表示为[x2,y2,0x01,0x00],其中x2、y2为同一条流上行的固定字段;
若伪装成srtp应用类型,伪装字段为应用层负载第1-4个字节,表示数据包的顺序,按上行和下行区分,逐包递增1;
若伪装成wechat-video即微信视频应用类型,伪装字段为应用层负载第1-13个字节,上行应用层负载第1-13字节序列用16进制表示为[0xa1,0x08,0x00,0x00,x1,y1,0x00,0x10,0x11,0x18,0x30,0x22,0x30],其中x1、y1两字节组成的字段值为自增序列表示上行数据包顺序,每次增加值为1;下行应用层负载第1-13字节序列用16进制表示为[0xa1,0x08,0x00,0x00,x2,y2,0x00,0x10,0x11,0x18,0x30,0x22,0x30],其中x2、y2两字节组成的字段值为自增序列表示下行数据包顺序,每次增加值为1;
若伪装成dtls即DTLS 1.2数据包应用类型,伪装字段为应用层负载第1-13个字节,上行应用层负载第1-13字节序列用16进制表示为[0x17,0xfe,0xfd,m1,n1,0x00,0x00,0x00,0x00,x1,y1,0x00,z1],其中m1、n1为同一条流上行的固定字段,x1、y1两字节组成的字段值表示上行数据包顺序,每次增值为1,z1字节未知;下行应用层负载第1-13字节序列用16进制表示为[0x17,0xfe,0xfd,m2,n2,0x00,0x00,0x00,0x00,x2,y2,0x00,z2],其中m2、n2为同一条流下行的固定字段,x2、y2两字节组成的字段值表示下行数据包顺序,每次增值为1,z2字节未知;
若伪装成wireguard即WireGuard数据包,伪装字段为应用层负载第1-4个字节,用16进制表示为[0x04,0x00,0x00,0x00]。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011218367.2/1.html,转载请声明来源钻瓜专利网。