CN109756389A - 一种万兆网络隐蔽通信检测系统 - Google Patents
一种万兆网络隐蔽通信检测系统 Download PDFInfo
- Publication number
- CN109756389A CN109756389A CN201811469513.1A CN201811469513A CN109756389A CN 109756389 A CN109756389 A CN 109756389A CN 201811469513 A CN201811469513 A CN 201811469513A CN 109756389 A CN109756389 A CN 109756389A
- Authority
- CN
- China
- Prior art keywords
- data
- covert communications
- network
- module
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
本发明公开一种隐蔽通信检测系统,包括网卡驱动模块、包捕获及链路管理模块、检测模块、告警及链路跟踪模块、数据库存储模块及WEB管理模块。其中,网卡驱动模块使用的是Intel DPDK驱动,包捕获及链路管理基于五元组进行同源同宿哈希分流,检测模块使用20余种常见隐蔽通信的检测模型对链路进行检测,告警及链路跟踪模块对检测到的隐蔽通信事件进行告警及跟踪,数据库存储模块使用mysql存储,WEB管理模块基于ElasticSearch进行界面展示和事件搜索。本系统能够在万兆网络流量中对网络隐蔽通信隐蔽通信进行有效的检测。
Description
技术领域
本发明属于通信与信息安全技术领域,设计一种面向计算机网络的隐蔽通信检测系统。
背景技术
网络隐蔽通信技术是指以正常的网络通信数据为载体,嵌入秘密消息进行通信,从而躲避网络审查的网络通信技术。目前的网络隐蔽通信可分为存储式隐蔽信道和时间式隐蔽信道。存储式网络隐蔽通信主要利用通信协议中的部分字段进行消息嵌入,包括IP协议头中的冗余位如IPID,TCP协议中的冗余位TCP紧急指针位等等。目前已知的各种类型的存储式隐蔽通信已经涉及了大部分常见的网络通信协议,包括IP、TCP、ICMP、DNS、FTP等等。时间式隐蔽通信是指不改变网络数据通信内容,而是从网络数据包的传输时间间隔入手,通过调节数据包的传输时间来传递隐蔽消息。目前常见的时间式隐蔽通信类型有ONOFF和delay两种,ONOFF类型是指在指定的时间窗口内是否发送数据包来代表0或1,delay是通过调节两个数据包时间间隔的长短来代表0或1。
近年来,网络隐蔽通信技术已在越来越多的网络攻击行为中得到应用,许多APT攻击中都使用了DNS隐蔽通信和ICMP隐蔽通信。检测网络通信中的隐蔽通信行为对于发现网络攻击有着重要的意义。目前大多数的网络隐蔽通信检测还处于实验室以及论文研究阶段,往往都是针对某一种网络隐蔽通信设计检测算法,大多数算法没有考虑实际网络环境中的数据收集和快速分流的要求,更加没有考虑到在万兆网络中的数据处理和快速检测问题,也没有系统能够开发和集成多种常见类型的网络隐蔽通信检测算法。开发一套成熟可用的网络隐蔽通信检测系统需要解决以下问题:
1)高速网络数据抓取和分流解析能力,能够实时处理万兆网络数据;
2)类型丰富、高速准确的网络隐蔽通信检测算法,对已有的大多数网络隐蔽通信均能实现有效检测,同时响应速度够快;
3)高速数据存储能力,对于实时的检测结果和数据进行高速的存储,用于回溯分析。
发明内容
本发明所要解决的技术问题:针对目前尚没有的万兆网络环境下的针对多种类型网络隐蔽通信的检测系统,发明一种能够适用于万兆网络的网络隐蔽通信检测系统,系统能够对十余种常见的网络隐蔽通信进行有效检测,数据处理能力可达万兆每秒。
本发明解决上述问题的技术方案:一种万兆网络隐蔽通信检测系统,系统架构如图1所示,包括隐蔽通信检测软件、基于cobar的分布式数据库软件、基于PHP的web前端管理软件。
其中,隐蔽通信检测软件包含网络数据捕获、数据哈希链表缓存、网络隐蔽通信检测、事件追踪告警模块、数据存储等软件模块。其逻辑关系为:网络数据采集模块对网络数据进行采集,然后通过数据哈希链表缓存模块根据五元组(源IP、目的IP、源端口、目的端口、协议类型)将每一条数据流进行单独缓存,当缓存的数据包数量达到预设的窗口值时,将窗口取出并进入网络隐蔽通信检测模块,当检测结果为隐蔽通信时,将数据窗口存入缓存队列,由数据存储模块存入数据库。主要包含以下步骤:
步骤1:网络数据捕获
网络数据捕获模块使用智能网卡或DPDK驱动进行开发,同时使用多核多队列,使数据处理能力达到万兆。具体方法为:
步骤1-1:安装或加载网卡驱动;
步骤1-2:利用捕包接口获取数据包,根据网卡队列数n启动n个线程,将捕包线程绑定到cpu核上。
步骤2:将捕获的数据包缓存到哈希表中,将满足检测条件的数据取出存入缓存队列;
步骤3:对数据进行隐蔽通信检测,主要步骤为:
步骤3-1:检测线程轮询缓存队列,当队列不为空时,取出其中的元素CDetectElement;
步骤3-2:根据五元组,使用循环位移异或算法计算哈希值;
步骤3-3:将CDetectelent加入哈希链表中,并对满足检测窗口的数据进行检测;
步骤3-4:如果检测结果为false,重复步骤3-1,如果检测结果为true,将检测结果存入数据库中。
步骤4:对告警事件进行持续跟踪,以固定的时间间隔对告警链表进行轮询,对超时的告警信息,更新事件表中的事件结束时间,同时删除该条告警信息。
步骤5:轮询步骤3-2中的隐蔽通信数据缓存队列,将数据存入数据库中的异常数据表packetContent中。
基于cobar的分布式数据库软件需要在web服务器上部署cobar,主要步骤为:
步骤1:部署cobar,通过节点配置使得检测器的数据库成为cobar分布式数据库的一个数据节点;
步骤2:通过cobar对数据库进行查询;
Web管理软件是基于php和elasticsearch开发,主要实现了隐蔽通信事件和数据查询、隐蔽通信事件统计信息展示、检测器流量和资源查看、检测器配置文件修改等功能。隐蔽通信事件和数据查询可根据时间、源IP、目的IP、源端口、目的端口、协议类型、隐蔽通信类型进行检索,支持对事件的打分和评论;隐蔽通信事件统计信息展示包括当日告警数量、当日告警事件(滚动条)、昨日告警事件统计图(扇形图)、一周告警事件统计图(柱形图)、一月告警事件统计图(折线图);检测器流量和资源查看包含检测器24小时流量趋势图、检测器实时CPU和内存占用图;检测器配置文件修改包括对隐蔽通信检测软件的配置文件的修改和下发。
步骤1:安装xampp,安装配置elasticsearch;
步骤2:通过elasticsearch对数据进行检索和展示。
有益效果:本发明实现了在万兆网络流量中对网络隐蔽通信行为进行实时监测和结果展示。
附图说明
图1为本发明的系统框图;
图2为本发明中设计的哈希链表结构图;
图3为本发明中链路管理使用的数据结构;
图4为本发明中的隐蔽通信检测流程图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
图1为本发明系统框图,包含隐蔽通信检测软件、数据库、web管理软件。其中,软件部署方式见图4,隐蔽通信检测软件部署在单台服务器中,支持扩展,可适应不同层次的流量检测需求,web管理软件部署在单独的服务器上,支持对所有检测器数据库的分布式查询。
步骤1:网络数据捕获
步骤1-1:安装或加载网卡驱动,对dpdk解决方案,需要编译安装dpdk的uio驱动;对于智能网卡,修改智能网卡的配置文件,对队列数和队列缓存大小进行配置,安装智能网卡驱动;
步骤1-2:利用捕包接口获取数据包,将网卡队列设为4,同时启动4个捕包线程,将捕包线程绑定到cpu的0-3核上。
步骤2:将捕获的数据包按照五元组信息,缓存到哈希链表中。具体方法为:
步骤2-1:对数据包进行解析,提取源IP、目的IP、源端口、目的端口、协议类型等信息,封装成一个待检测的类CDetectElement;
步骤2-2:将CDetectElement放入缓冲队列中,队列使用的是intel TBB中的concurrent_queue无锁队列;
步骤3:对数据进行隐蔽通信检测,主要步骤为:
步骤3-1:检测线程轮询concurrent_queue无锁缓存队列,当队列不为空时,取出其中的元素CDetectElement;
步骤3-2:根据五元组,使用循环位移异或算法计算哈希值;
步骤3-3:将CDetectelent加入哈希链表中,主要步骤为:(1)检查对应哈希位中是否有链表信息,如果没有,则添加相应的链表头CDetectLinkM,并将CDetectelement添加到链表中;(2)如果对应哈希位中已有链表信息,比较五元组,如果是同一条链路,检查时间信息,如果超时,将更新CDetectLinkM中的时间信息,同时删除原有链路下的CDetectElement,将新的CDetectelement加入到链表中,如果未超时,则将CDetectelement加入链表中;如果对应哈希位中没有链表信息,新建链表头CDetectLinkM,增加一条链路方法同(1);(3)检查链表中CDetectElement数量,如果超过预设的窗口值,调用隐蔽通信检测算法进行检测,返回检测结果,哈希链表结构如图2所示,CDetectLinkM及CDetectElement链表设计如图3所示;;
步骤3-4:如果检测结果为false,重复步骤3-1,如果检测结果为true,将链表头存入缓存队列中,同时查询告警链路,如果告警链路中没有相同的告警信息,则在告警链路中新增节点,并且新建事件信息,存入数据库的事件表alarmContent中,如果告警链路中有相同的告警信息,则更新事件的结束时间。
步骤4:对告警事件进行持续跟踪,以固定的时间间隔对告警链表进行轮询,对超时的告警信息,更新事件表中的事件结束时间,同时删除该条告警信息。
步骤5:轮询步骤3-2中的隐蔽通信数据缓存队列,将数据存入数据库中的异常数据表packetContent中。
步骤6:安装部署cobar,修改配置文件使得检测器的数据库成为cobar分布式数据库的一个数据节点;
步骤7:通过cobar对数据库进行查询;
步骤8:安装xampp和elasticsearch,对elasticsearch进行配置,将mysql数据同步至elasticsearch;
步骤9:使用elasticsearch对数据进行搜索和展示,展示内容包括事件信息、事件GEOIP信息、统计分析图表等。
Claims (4)
1.一种万兆网络隐蔽通信检测系统,其特征在于:包括以下模块和流程:
包括隐蔽通信检测软件、基于cobar的分布式数据库软件、基于PHP的web前端管理软件;
其中,隐蔽通信检测软件包含网络数据捕获、数据哈希链表缓存、网络隐蔽通信检测、事件追踪告警模块、数据存储等软件模块,其逻辑关系为:网络数据采集模块对网络数据进行采集,然后通过数据哈希链表缓存模块根据五元组(源IP、目的IP、源端口、目的端口、协议类型)将每一条数据流进行单独缓存,当缓存的数据包数量达到预设的窗口值时,将窗口取出并进入网络隐蔽通信检测模块,当检测结果为隐蔽通信时,将数据窗口存入缓存队列,由数据存储模块存入数据库;
主要包含以下步骤:
步骤1:网络数据捕获:
网络数据捕获模块使用智能网卡或DPDK驱动进行开发,同时使用多核多队列,使数据处理能力达到万兆。具体方法为:
步骤1-1:安装或加载网卡驱动;
步骤1-2:利用捕包接口获取数据包,根据网卡队列数n启动n个线程,将捕包线程绑定到cpu核上;
步骤2:将捕获的数据包缓存到哈希表中,将满足检测条件的数据取出存入缓存队列;
步骤3:对数据进行隐蔽通信检测,主要步骤为:
步骤3-1:检测线程轮询缓存队列,当队列不为空时,取出其中的元素CDetectElement;
步骤3-2:根据五元组,使用循环位移异或算法计算哈希值;
步骤3-3:将CDetectelent加入哈希链表中,并对满足检测窗口的数据进行检测;
步骤3-4:如果检测结果为false,重复步骤3-1,如果检测结果为true,将检测结果存入数据库中;
步骤4:对告警事件进行持续跟踪,以固定的时间间隔对告警链表进行轮询,对超时的告警信息,更新事件表中的事件结束时间,同时删除该条告警信息;
步骤5:轮询步骤3-2中的隐蔽通信数据缓存队列,将数据存入数据库中的异常数据表packetContent中;
基于cobar的分布式数据库软件需要在web服务器上部署cobar,主要步骤为:
步骤1:部署cobar,通过节点配置使得检测器的数据库成为cobar分布式数据库的一个数据节点;
步骤2:通过cobar对数据库进行查询;
Web管理软件是基于PHP和elasticsearch开发,主要实现了隐蔽通信事件和数据查询、隐蔽通信事件统计信息展示、检测器流量和资源查看、检测器配置文件修改等功能。隐蔽通信事件和数据查询可根据时间、源IP、目的IP、源端口、目的端口、协议类型、隐蔽通信类型进行检索,支持对事件的打分和评论;隐蔽通信事件统计信息展示包括当日告警数量、当日告警事件(滚动条)、昨日告警事件统计图(扇形图)、一周告警事件统计图(柱形图)、一月告警事件统计图(折线图);检测器流量和资源查看包含检测器24小时流量趋势图、检测器实时CPU和内存占用图;检测器配置文件修改包括对隐蔽通信检测软件的配置文件的修改和下发;
步骤1:安装xampp,安装配置elasticsearch;
步骤2:通过elasticsearch对数据进行检索和展示。
2.根据权利要求1所述的万兆网络隐蔽通信检测系统,其特征在于:所述隐蔽通信检测软件步骤1中的数据捕获模块采用DPDK或智能网卡。
3.根据权利要求1所述的万兆网络隐蔽通信检测系统,其特征在于:所述隐蔽通信检测软件步骤2中的哈希表采用特定的哈希链表结构。
4.根据权利要求1所述的万兆网络隐蔽通信检测系统,其特征在于:所述Web管理软件采用PHP和elasticsearch。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811469513.1A CN109756389A (zh) | 2018-11-28 | 2018-11-28 | 一种万兆网络隐蔽通信检测系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811469513.1A CN109756389A (zh) | 2018-11-28 | 2018-11-28 | 一种万兆网络隐蔽通信检测系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109756389A true CN109756389A (zh) | 2019-05-14 |
Family
ID=66403646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811469513.1A Pending CN109756389A (zh) | 2018-11-28 | 2018-11-28 | 一种万兆网络隐蔽通信检测系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109756389A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110336806A (zh) * | 2019-06-27 | 2019-10-15 | 四川大学 | 一种结合会话行为和通信关系的隐蔽通信检测方法 |
CN111464497A (zh) * | 2020-03-05 | 2020-07-28 | 北京安码科技有限公司 | 基于icmp的靶场隐蔽通道建立方法、系统、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495764A (zh) * | 2011-12-06 | 2012-06-13 | 曙光信息产业股份有限公司 | 数据分流的实现方法和装置 |
CN102497323A (zh) * | 2011-12-19 | 2012-06-13 | 曙光信息产业(北京)有限公司 | 一种基于intel万兆网卡实现同源同宿报文分流的系统和方法 |
CN102541803A (zh) * | 2011-12-31 | 2012-07-04 | 曙光信息产业股份有限公司 | 数据发送方法和计算机 |
CN102916905A (zh) * | 2012-10-18 | 2013-02-06 | 曙光信息产业(北京)有限公司 | 一种基于hash算法的万兆网卡多路分流方法及其系统 |
CN106371925A (zh) * | 2016-08-31 | 2017-02-01 | 北京中测安华科技有限公司 | 一种高速大数据的检测方法及装置 |
CN106789728A (zh) * | 2017-01-25 | 2017-05-31 | 甘肃农业大学 | 一种基于NetFPGA的VoIP流量实时识别方法 |
CN107483237A (zh) * | 2017-08-02 | 2017-12-15 | 赛尔网络有限公司 | 基于dpdk转发的性能优化系统及方法 |
CN107733851A (zh) * | 2017-08-23 | 2018-02-23 | 刘胜利 | 基于通信行为分析的dns隧道木马检测方法 |
-
2018
- 2018-11-28 CN CN201811469513.1A patent/CN109756389A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495764A (zh) * | 2011-12-06 | 2012-06-13 | 曙光信息产业股份有限公司 | 数据分流的实现方法和装置 |
CN102497323A (zh) * | 2011-12-19 | 2012-06-13 | 曙光信息产业(北京)有限公司 | 一种基于intel万兆网卡实现同源同宿报文分流的系统和方法 |
CN102541803A (zh) * | 2011-12-31 | 2012-07-04 | 曙光信息产业股份有限公司 | 数据发送方法和计算机 |
CN102916905A (zh) * | 2012-10-18 | 2013-02-06 | 曙光信息产业(北京)有限公司 | 一种基于hash算法的万兆网卡多路分流方法及其系统 |
CN106371925A (zh) * | 2016-08-31 | 2017-02-01 | 北京中测安华科技有限公司 | 一种高速大数据的检测方法及装置 |
CN106789728A (zh) * | 2017-01-25 | 2017-05-31 | 甘肃农业大学 | 一种基于NetFPGA的VoIP流量实时识别方法 |
CN107483237A (zh) * | 2017-08-02 | 2017-12-15 | 赛尔网络有限公司 | 基于dpdk转发的性能优化系统及方法 |
CN107733851A (zh) * | 2017-08-23 | 2018-02-23 | 刘胜利 | 基于通信行为分析的dns隧道木马检测方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110336806A (zh) * | 2019-06-27 | 2019-10-15 | 四川大学 | 一种结合会话行为和通信关系的隐蔽通信检测方法 |
CN111464497A (zh) * | 2020-03-05 | 2020-07-28 | 北京安码科技有限公司 | 基于icmp的靶场隐蔽通道建立方法、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9848004B2 (en) | Methods and systems for internet protocol (IP) packet header collection and storage | |
US7903566B2 (en) | Methods and systems for anomaly detection using internet protocol (IP) traffic conversation data | |
CN106656991B (zh) | 一种网络威胁检测系统及检测方法 | |
US7995496B2 (en) | Methods and systems for internet protocol (IP) traffic conversation detection and storage | |
CN109586947B (zh) | 分布式设备信息采集系统和方法 | |
US9578046B2 (en) | Analysis of time series data | |
EP2011013B1 (en) | Merging multi-line log entries | |
CN109922315A (zh) | 一种基于Spark与OpenCV的实时视频行为分析方法 | |
CN106878092A (zh) | 一种多源异构数据融合的网络运维实时监控与分析呈现平台 | |
CN107391280A (zh) | 一种小文件的接收和存储方法及装置 | |
US20050234920A1 (en) | System, computer-usable medium and method for monitoring network activity | |
CN107733851A (zh) | 基于通信行为分析的dns隧道木马检测方法 | |
US8762515B2 (en) | Methods and systems for collection, tracking, and display of near real time multicast data | |
Santiago del Rio et al. | Wire-speed statistical classification of network traffic on commodity hardware | |
Zhou et al. | Exploiting the vulnerability of flow table overflow in software-defined network: Attack model, evaluation, and defense | |
US10616101B1 (en) | Forwarding element with flow learning circuit in its data plane | |
US20100050262A1 (en) | Methods and systems for automated detection and tracking of network attacks | |
CN103414608B (zh) | 快速的web流量采集统计系统和方法 | |
CN106506266B (zh) | 基于GPU、Hadoop/Spark混合计算框架的网络流量分析方法 | |
CN115776449B (zh) | 列车以太网通信状态监测方法及系统 | |
CN109756389A (zh) | 一种万兆网络隐蔽通信检测系统 | |
AU2010322819A1 (en) | Processing network traffic | |
CN108667898A (zh) | 使用外出镜像提供网元中的缓冲器内容的快照 | |
CN107302534A (zh) | 一种基于大数据平台的DDoS网络攻击检测方法及装置 | |
CN113810229B (zh) | 一种基于时序调度的ioam质量性能数据分析方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190514 |
|
WD01 | Invention patent application deemed withdrawn after publication |