CN214042311U - 基于x86卡进行网络数据包重要素材的还原平台 - Google Patents
基于x86卡进行网络数据包重要素材的还原平台 Download PDFInfo
- Publication number
- CN214042311U CN214042311U CN202022846508.7U CN202022846508U CN214042311U CN 214042311 U CN214042311 U CN 214042311U CN 202022846508 U CN202022846508 U CN 202022846508U CN 214042311 U CN214042311 U CN 214042311U
- Authority
- CN
- China
- Prior art keywords
- card
- password
- user name
- data
- protocol
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本实用新型涉及一种基于X86卡进行网络数据包重要素材的还原平台,它是包括一张主控板、两张线路卡、一张交换卡、一张x86卡组成的机箱式结构,通过X86板卡对ftp、telnet协议中的用户名密码、SSL协议中CA证书以及SIP协议的短信内容等的还原方法,在应用中接入PTN网络信号作为专门网络数据源,还原出的数据结果存入数据库或者直接还原为文件。提供了TCP/IP数据流IP五元组相同流的分离功能,省去自己考虑数据IP五元组组包的麻烦,对于种类繁多的协议大大提高了还原效率,解决了ftp、telnet这些协议还原出的用户名和密码对应错位不匹配的问题,对于CA证书的拼包也大大减轻了工作量,还实现了对sip协议中短信内容的提取。
Description
技术领域
本实用新型涉及一种网络数据包重要素材的还原设备,特别涉及一种基于X86卡进行网络数据包重要素材的还原平台。
背景技术
随着日益增加的网络应用数量,在网络上的流量种类越来越多,像CA等安全性方面的挑战,传统的方法已经开始吃力,过去单单基于IP、端口的工具很难识别这类应用的流量,因此有必要对网络数据的数据包报文进行深度解析,对于协议内容的重要素材进行还原,目前对于网络数据包进行协议解析素材还原的技术上,有DPI深度包检测技术,包括Libnids、Snort、OpenDPI等开源的协议解析项目。Libnids是一个用于网络入侵检测开发的专业编程接口;Snort能够对网络上的数据包进行抓包分析,它能根据所定义的规则进行响应及处理;OpenDPI作为一个开源的深度报文检测系统,实现了很多协议的识别,它源自PCIE,运行第三方开发者在不同的解决方案上编写DPI应用程序。但是已有的这些技术仅仅是对TCP/IP等数据包进行了解析,它在传统IP数据包检测技术之上增加了对应用层数据的应用协议识别,但对于重要的素材并不能进行还原。
发明内容
鉴于新技术的发展和现有技术存在的问题,本实用新型提供一种基于X86卡进行网络数据包重要素材的还原平台,在x86板卡计算刀片上将nDPI深度包检测的开发库进行了代码级别的二次开发和融合,实现对多种主流协议的识别,同时对于主流协议ftp、telnet中的用户名密码这些素材进行还原,对SSL协议中CA证书进行还原,对SIP协议中短信内容进行还原。具体技术方案是,一种基于X86卡进行网络数据包重要素材的还原平台,它是包括一张主控板、两张线路卡、一张交换卡、一张x86卡组成的机箱式结构,其中线路卡在运用中只插入一块,其特征在于:所述的线路卡的一个10GE光口与x86卡的一个10GE光口通过光纤单向连接,交换卡四个10GE网口与x86卡的四个10GE网口、主控板、线路卡、交换卡、x86卡的千兆网口在背板通过PCB走线接连在一起。
本实用新型的有益效果,在网路数据的素材还原领域中使用x86板卡该种硬件形态开发算法夯实了该实现技术手段。nDPI适合作为一些用于检测流量并判断流量属于何种应用的高层应用程序的基础,具有较好的移植性,在其他设备中也能直接安装部署该素材还原算法,进行随时随地的针对重要素材的还原,在实际应用中有很大应用前景。
附图说明
图1为本实用新型的框架图。
具体实施方式
原理
下面结合附图来详细说明本实用新型。
如图1所示,基于X86卡网络数据包的重要素材还原平台,将x86卡插入PTN信号处理设备,整个PTN信号处理设备包括主控板、两块线路卡、交换卡、x86卡,分别来进行不同功能的处理,其中x86卡是设备里的数据分析模块,其卡的外部接口包括4个10GE的光口,两个RG45的网口,一个console调试接口,HDMI接入接口,两个USB口,背板具备40G网口,一个千兆网口。将x86卡与设备中线路卡,通过10G光口用光纤进行连接,然后通过该光口接收来自线路板的网络数据流量;
实现素材还原包括以下步骤:
1、首先基于x86板卡进行初始化配置,启动使用的硬件资源并调用收包接口进行收包;
2、将收到的数据包调用nDPI进行协议解析;
3、最后根据不同的协议进入到不同的协议解析器进行素材还原操作。
其中,步骤1中开发环境部署,具体方法如下:
在x86卡上安装DPDK的开发框架,绑定x86板卡的intel网卡实现数据抓取;
将nDPI的工程部署到x86卡上,安装ndpi所需的库,包括flex、bison、m4、lipcap、bcg729-decoder、zlib、Openssl、sofia-sip,还需安装数据库。
x86卡初始化和收包模块的执行方法,具体如下:
依托于DPDK框架下的核线程机制,指定分析核线程id,启用分析线程来对分析处理数据目录进行扫描;
获取当前扫描目录下未分析的pcap包文件,调用包读取接口进行每个以太网包的内容读取操作;
进入包处理回调函数,然后调用shell脚本启动nDPI深度分析。
nDPI协议解析的执行方法,方法如下:
起线程进行接收网路数据,循环收包;
调用pcap_process_packet对包进行解析,针对ptn信号的结构特征,分析外层mac头和type类型,然后识别Vlan结构及mpls标签,根据type类型值再判断携带的以太网数据是ARP包还是CDP包还是IP包,区分具体包类型,我们关注的主要是IP包;
对IP包内的协议进行识别,打上对应协议的标签;
根据打上的协议标签进入各个协议解析器。
主要借助于开源库nDPI的tcp流IP五元组相同的流重组功能,将开源代码进行重构修改,添加分析外层mac头和type类型,然后识别Vlan结构及mpls标签,在flow结构体中加入数据还原算法需要用到的用户名密码字段,SSL包拼接字段,方便后续处理。协议识别完成后打上不同的协议标签进入不同的协议解析器,然后走入不同协议的素材还原模块算法中。
其中,所述步骤3中素材还原模块包括ftp协议用户名密码还原模块、telnet协议用户名密码还原模块、ssl协议CA证书还原模块、SIP协议短信内容还原模块。
ftp协议用户名密码还原模块,根据ftp_control协议的特征,进行算法设计,客户端收到USER或user,PASS或pass指令时客户端才会有用户名密码数据,服务端发送"331-"或者"331 "并且内容里有"access"时,服务端才能获取到用户名,服务端发送"331-"或者"331 "并且内容里有"Password"时,服务端才能获取到密码,具体执行方法如下:
符合ftp-control协议的特征,进入ftp-control协议解析器;
判断是否是客户端数据,如果是则进行指令匹配,如果指令内容包括USER或者user,则此指令后面的就是对应的用户名,找到用户名后将标志用户名的标志位置1,如果指令内容包括PASS或者pass,则此指令后面的就是对应的密码,找到密码后将密码的标志位置1,如果是服务端数据,则也进行标志位匹配,如果指令内容包括"331-"或者"331 "并且内容里有"access"的字段,则后面为用户名,找到用户名后将标志用户名的标志位置1,以及"331-"或者"331 "并且内容里有"Password"的字段,则后面为密码,找到密码后将密码的标志位置1,
将获取到的用户名密码进行存储,存入数据库或者存入文件,然后将标志位置回0;
telnet协议用户名密码素材还原模块,根据telnet协议特征,进行算法设计,该算法和ftp类似,不同的是对用户名密码的标志不同,telnet还可能需要对用户名密码进行拼接操作,具体执行方法如下:
符合telnet协议的特征,进入telnet协议解析器;
判断指令内容,如果指令内容包括"\n\rlogin: "、"\r\nUsername:"、" login: "或"localhost login",则表示用户名出现了,将找到用户名的标志位置为1,如果用户名标志位为1,分为2种情况,有的是全部一次传输用户名,用"\r\n"作为结束符,如果指令内容中包括"Login"并且包括"\r\n"或者包括"login"并且包括"\r\n",则将中间的内容取出为用户名,另一种情况是需要拼接用户名,在没有碰到"\r\n"的结束符时将此条流中的每个包的用户名进行拼接,直到碰到"\r\n"的结束符,则用户名拼接完成。对于密码,如果指令内容包括" \n\rpassword: "、" \r\nPassword:"或" Password: ",则表示密码出现了,将找到密码的标志位置为1,如果密码标志位为1,分为2种情况,有的是全部一次传输密码,用"\r\n"作为结束符,如果指令内容中包括"Login"并且包括"\r\n"或者包括"login"并且包括"\r\n",则将中间的内容取出为密码,另一种情况是需要拼接密码,在没有碰到"\r\n"的结束符时将此条流中的每个包的密码进行拼接,直到碰到"\r\n"的结束符,则密码拼接完成;
获取到的用户名密码进行存储,存入数据库或者存入文件。
SSL协议CA证书还原模块,该模块根据SSL协议交互特征,找到有关CA证书的包,根据长度对包进行拼接,然后对拼接好的包或者不需拼接的包进行分割,分割出若干个CA证书,调用Openssl进行还原。具体执行方法如下:
符合SSL协议交互特征,进入SSL协议解析器;
根据包计算相关CA证书的总长度,判断SSL协议中handshake的标志位是否为0x02并且是否为CA证书的标志为0,如果是则根据总长度和该包中的长度进行对比看CA证书的总长度与该包的长度是否一致,如果该包长度不够则先进行拼包,如果是拼包情况则包拼够以后将是否为CA证书的标志置为1,如果不需要拼包则直接对数据进行解析;
如果CA证书标志为1或者不拼包直接解析数据这两种情况对数据进行解析,每个需要解析的数据包里可能包含若干个CA证书,数据按照各个CA证书的长度进行分割,对每个分割后的数据进行CA证书数据解析和CA证书还原,解析方式主要是调用的Openssl中的x509的库进行解析;
对于解析出的版本号、序列号、签名算法、公钥、有效期及扩展的字段存入数据库,将整个CA证书以.pem文件的形式还原出来,如果想以.cert文件进行存储,还可运用Openssl中的指令将文件转为.cert格式。
SIP协议短信内容还原模块,该模块根据SIP协议特征,调用sofia-sip的开源库,首先解析出sip版本号、主被叫号码等重要信息,然后获取可能有短信内容的包,对于sip方法为“MESSAGE”的包获取message body部分,对这部分进行解析根据偏移找到短信内容,调用不同的解码算法对短信内容进行解码,最后将内容存入数据库或者直接存为.txt。具体执行方法如下:
符合SIP协议交互特征,进入SIP协议解析器,
调用sofia-sip库进行sip内容提取,包括sip版本、主被叫号码等重要信息,判断sip方法是否为“MESSAGE”,如果是进入下一步,如果不是则返回,
提取message body部分进行解析,根据标志位识别短信的TP-MTI,主要分为Submit和Deliver两种,
通过判定短信是否有头,偏移对应的字节,找到短信内容,
根据短信的编码格式,用不同的解码算法对短信内容进行解码,分为7bit解码、8bit解码和UCS2解码,将解码后的短信内容存入数据库或者直接存为.txt。
Claims (1)
1.一种基于X86卡进行网络数据包重要素材的还原平台,它是包括一张主控板、两张线路卡、一张交换卡、一张x86卡组成的机箱式结构,其中线路卡在运用中只插入一块,其特征在于:所述的线路卡的一个10GE光口与x86卡的一个10GE光口通过光纤单向连接,交换卡四个10GE网口与x86卡的四个10GE网口、主控板、线路卡、交换卡、x86卡的千兆网口在背板通过PCB走线接连在一起。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202022846508.7U CN214042311U (zh) | 2020-12-02 | 2020-12-02 | 基于x86卡进行网络数据包重要素材的还原平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202022846508.7U CN214042311U (zh) | 2020-12-02 | 2020-12-02 | 基于x86卡进行网络数据包重要素材的还原平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN214042311U true CN214042311U (zh) | 2021-08-24 |
Family
ID=77382595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202022846508.7U Active CN214042311U (zh) | 2020-12-02 | 2020-12-02 | 基于x86卡进行网络数据包重要素材的还原平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN214042311U (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112468343A (zh) * | 2020-12-02 | 2021-03-09 | 天津光电通信技术有限公司 | 基于x86卡进行网络数据包重要素材的还原平台及方法 |
-
2020
- 2020-12-02 CN CN202022846508.7U patent/CN214042311U/zh active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112468343A (zh) * | 2020-12-02 | 2021-03-09 | 天津光电通信技术有限公司 | 基于x86卡进行网络数据包重要素材的还原平台及方法 |
CN112468343B (zh) * | 2020-12-02 | 2023-10-24 | 天津光电通信技术有限公司 | 基于x86卡进行网络数据包重要素材的还原平台及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101888831B1 (ko) | 디바이스 정보 수집 장치 및 그 방법 | |
CN113794605B (zh) | 一种基于eBPF的内核丢包检测方法、系统和装置 | |
CN114157502B (zh) | 一种终端识别方法、装置、电子设备及存储介质 | |
CN110868409A (zh) | 一种基于tcp/ip协议栈指纹的操作系统被动识别方法及系统 | |
KR100895102B1 (ko) | 파일 탐색 시스템 및 방법 | |
CN114050979B (zh) | 一种工业控制协议安全测试系统及装置 | |
CN106155882B (zh) | 一种Android软件动态行为分析中的路径感知方法 | |
CN214042311U (zh) | 基于x86卡进行网络数据包重要素材的还原平台 | |
CN112468343B (zh) | 基于x86卡进行网络数据包重要素材的还原平台及方法 | |
CN115134138A (zh) | 一种基于单向光闸的文件同步方法 | |
CN112769635B (zh) | 多粒度特征解析的服务识别方法及装置 | |
CN113179229A (zh) | 一种验证方法、装置、存储介质及电子设备 | |
Abdelnur et al. | Advanced network fingerprinting | |
CN113596065B (zh) | 一种基于机器学习的ssh协议登录状态检测方法 | |
CN112640392B (zh) | 一种木马检测方法、装置和设备 | |
CN115277193A (zh) | 一种信标调制方法、装置及电子设备 | |
CN114124551A (zh) | 一种WireGuard协议下基于多粒度特征提取的恶意加密流量识别的方法 | |
US20130028262A1 (en) | Method and arrangement for message analysis | |
CN114710343A (zh) | 一种入侵检测的方法和检测设备 | |
CN113259208B (zh) | 基于smb协议的操作系统指纹信息安全检测方法与装置 | |
CN115766204B (zh) | 一种针对加密流量的动态ip设备标识系统及方法 | |
CN114520774B (zh) | 基于智能合约的深度报文检测方法及装置 | |
CN116094841B (zh) | 加密信道中的行为识别方法、装置及电子设备 | |
KR101614189B1 (ko) | 어플리케이션 불법 유포를 방지하는 방법과 이를 위한 장치 | |
CN110311835B (zh) | 一种基于内容模板的电力iec协议符合性验证方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |