CN109327357B - 应用软件的特征提取方法、装置及电子设备 - Google Patents

应用软件的特征提取方法、装置及电子设备 Download PDF

Info

Publication number
CN109327357B
CN109327357B CN201811441558.8A CN201811441558A CN109327357B CN 109327357 B CN109327357 B CN 109327357B CN 201811441558 A CN201811441558 A CN 201811441558A CN 109327357 B CN109327357 B CN 109327357B
Authority
CN
China
Prior art keywords
application software
target message
feature
field
message
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
Application number
CN201811441558.8A
Other languages
English (en)
Other versions
CN109327357A (zh
Inventor
黄晓炼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou DPTech Technologies Co Ltd
Original Assignee
Hangzhou DPTech Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN201811441558.8A priority Critical patent/CN109327357B/zh
Publication of CN109327357A publication Critical patent/CN109327357A/zh
Application granted granted Critical
Publication of CN109327357B publication Critical patent/CN109327357B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供一种应用软件的特征提取方法、装置及电子设备,所述方法包括:当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;基于所述特征位置,从所述目标报文中提取所述应用软件的特征;本发明能够自动获取应用软件特征的过程,提高数据分析效率以及优化了数据分析效果。

Description

应用软件的特征提取方法、装置及电子设备
技术领域
本发明涉及通信技术领域,尤其涉及一种应用软件的特征提取方法、装置及电子设备。
背景技术
随着网络技术的发展,使用APP应用软件的人越来越多,APP应用软件的版本更新也越来越频繁,导致APP应用软件的特征发生变化,APP应用软件的版本更新时,从事网络相关问题定位或协议分析工作的人员需要对这些更新的APP应用软件进行分析定位。现有的方法通常通过Wireshark抓包工具来抓取网络封包,Wireshark抓包工具是一个网络封包分析软件,其功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。从事网络相关问题定位或协议分析工作的人员通过Wireshark抓包之后,手动过滤干扰报文,获取APP应用软件更新后的数据流,从数据流中提取包含对应APP应用软件的版本特征,然后通过手动输入APP应用软件的版本特征,将其导入数据库,通过网络协议设备,达到识别阻断该APP应用软件的效果。
但是,发明人发现现有方法存在以下问题:第一,本地产生的一些干扰报文也被会抓取,如广播产生的ARP或者其他一些ICMP、IGMP报文等,或者访问网络时,在与服务器交互过程中产生的大量DNS报文等,手动过滤繁琐复杂,而且需要相关人员重复这一过滤动作,容易造成失误,也降低对相关工作人员人工获取数据以及分析数据的效率;第二,人工提取包含对应APP应用软件的版本特征,由于手动复制输入APP应用软件版本特征,可能存在人为操作失误,导致特征错误,对后续等操作产生影响。
发明内容
有鉴于此,本发明提供一种应用软件的特征提取方法、装置及电子设备。
根据本发明实施例的第一方面,提供一种应用软件的特征提取方法,所述方法包括:
当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;
对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;
利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;
获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;
基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
可选地,所述指定关键字段还包括用于描述所述应用进程的标志位字段。
可选地,所述描述目标报文对应的动作的字段为登录命令字段。
可选地,所述应用进程为QQ进程;
则所述应用进程对应的标志位的字段为“\x02”;
所述登录命令字段为“\x08\x25”。
可选地,还包括:
以指定格式存储所述目标报文;其中,所述指定格式为pcapng格式或者pcap格式。
可选地,所述基于所述特征位置,从所述目标报文中提取所述应用软件的特征,包括:
解析所述目标报文头部的长度,以获取所述目标报文的数据部分;
从所述目标报文的数据部分的所述特征位置起,截取预设偏移量的字节。
可选地,所述应用进程为QQ进程;
所述传输协议为TCP协议,所述特征位置位于所述目标报文的数据部分的起始位置偏移2个字节之后;或
所述传输协议为UDP协议,所述特征位置位于所述目标报文的数据部分的起始位置。
可选地,所述特征位置还包括用于描述所述应用进程的标志位的位置以及所述描述目标报文对应的动作的字段的位置。
根据本发明实施例的第二方面,提供一种应用软件的特征提取装置,所述装置包括:
抓取模块,用于当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;
解析模块,用于对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;
过滤模块,用于利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;
提取模块,用于获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;
所述提取模块,还用于基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
根据本发明实施例的第三方面,提供一种电子设备,所述电子设备包括处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;
对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;
利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;
获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;
基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
根据本发明实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现本发明实施例的第一方面中任一所述方法的步骤。
本发明实施例具有如下有益效果:
在检测到预设应用进程被执行时,抓取所述应用进程对应的数据包,然后对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文,再利用指定关键字段从解析后的报文中过滤出目标报文,所述指定关键字段包括描述目标报文对应的动作的字段,以及获取预存的与所述传输协议对应的特征位置,所述特征位置包括描述应用软件的版本特征的位置,最后基于所述特征位置,从所述目标报文中提取所述应用软件的特征,本申请填补了现有技术中对于网络用户行为分析的报文过滤方案的空白,在数据采集过程中,采用有效机制过滤报文,提高了数据采集效率,而且实现自动获取应用软件特征的过程,大大节省了时间以及精力,通过所述特征位置,能够准确提取应用软件特征,减少了特征提取的失误率,也提升了数据分析效率以及优化了数据分析效果。
附图说明
图1为本发明根据一示例性实施例示出的一种应用软件的特征提取方法的实施例流程图;
图2为本发明根据一示例性实施例示出的数据包及报文的格式示意图;
图3为本发明根据一示例性实施例示出的一种应用软件的特征提取装置的实施例结构图;
图4为本发明根据一示例性实施例示出的一种电子设备的硬件结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
现有的对于更新的APP应用软件进行分析定位的方法,通常是相关人员通过Wireshark抓包之后,手动过滤干扰报文,获取APP应用软件更新后的数据流,从数据流中提取包含对应APP应用软件的版本特征,然后通过手动输入APP应用软件的版本特征,将其导入数据库,通过网络协议设备,达到识别阻断该APP应用软件的效果,但是,本地产生的一些干扰报文也被会抓取,手动过滤繁琐复杂,而且需要相关人员重复这一过滤动作,容易造成失误,也降低对相关工作人员人工获取数据以及分析数据的效率;再者,人工提取包含对应APP应用软件的版本特征,由于手动复制输入APP应用软件版本特征,可能存在人为操作失误,导致特征错误,对后续等操作产生影响。
为了解决现有技术中人工获取应用软件的更新特征导致的效率低以及准确率不高的问题,本发明提供了一种应用软件的特征提取方法,如图1所示,所述方法包括:
S101,当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包。
S102,对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文。
S103,利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段。
S104,获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置。
S105,基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
在一实施例中,所述应用软件的特征提取方法集成于一电子设备中,由所述电子设备来执行,所述电子设备可为桌上型计算机、笔记本、掌上电脑及手机等计算设备。
在步骤101中,当检测到预设应用进程被执行时,通过抓包工具抓取所述应用进程的数据包,所述抓包工具可为wireshar工具、fiddler工具、Sniffer工具、WinNetCap工具、WinSock Expert工具、Hping工具以及Ostinato工具等等,通过为所述抓包工具选择相应的捕获接口,以在检测到所述预设应用进程被执行时,所述抓包工具能够通过所述捕获接口抓取所述应用进程的数据包,其中,所述应用进程指应用的执行活动,例如QQ进程、微信进程以及浏览器进程等等。
在步骤102中,所述电子设备通过抓包工具对所述数据包进行解析,具体地,所述抓包设备对所述数据包进行协议解析,以获取承载所述数据包的传输协议,承载所述数据包的传输协议有多种,例如,所述传输协议可以是TCP协议,或者所述传输协议也可以是UDP协议;同时,请参阅图2,所述抓包工具解析所述数据包的头部,在获取到所述数据包的头部之后,剥去所述数据包的头部以获取所述数据包的数据部分,即解析后的报文,然后所述电子设备根据抓取到所述数据包的时间顺序以及所述数据包之间的前后关联关系(比如分片关系)将所述报文进行整合以及排序,以便后续的报文过滤过程。
在步骤103中,所述电子设备通过描述目标报文对应的动作的字段从解析出来的报文中过滤出目标报文,需要说明的是,本发明对于用户对所述描述目标报文对应的动作的字段的选择不做任何限定,作为一个例子,所述描述目标报文对应的动作的字段可以是登录命令字段,例如在QQ进程中,用来描述QQ进程的登录命令字段为“\x08\x25”,即通过登录这一动作的字段对解析出来的报文进行过滤,则检测到报文中存在该登录命令字段的即为需要的目标报文,报文中不存在该登录命令字段则为干扰报文,所述电子设备将这一类干扰报文过滤掉,可以有效提高后续的数据提取效率;又或者所述描述目标报文对应的动作的字段可以是文件传输命令字段,所述电子设备依据该文件传输命令字段对所述报文进行过滤等等。
在一实施例中,由于考虑到某些描述目标报文对应的动作的字段比较短,可能会匹配到一些干扰报文(即存在一些包括有该动作的字段,但不是表示该动作含义的报文),因此,为进一步确保过滤结果的准确性,所述电子设备利用描述目标报文对应的动作的字段以及用于描述所述应用进程的标志位字段,从解析出来的报文中过滤出目标报文,需要说明的是,用来描述应用进程的标志位一般是固定不变的,例如用来描述QQ进程的标志位字段一直为“\x02”,本发明通过添加固定不变的用于描述所述应用进程的标志位字段来增加所述指定关键字段的长度,能够更为精确地匹配到符合条件的报文,提高过滤结果的准确性。
在一实施例中,所述电子设备将过滤出来的符合条件的目标报文以指定的格式存储下来,所述指定格式可以为pcapng格式或者pcap格式,使得保存下来的所述目标报文的头部具有固定的格式,方便后续的操作,比如报文提取操作或者报文回放操作等等,也便于开发人员定位问题。
在步骤104中,由于传输协议的不同,会使得描述应用软件的版本特征的位置有所不同,因此,所述电子设备会预先建立第一存储表或者第一数据库,所述第一存储表或者第一数据库用来存储传输协议与描述所述应用软件的版本特征的位置之间的对应关系,以QQ进程的登录动作为例,QQ登录有两种方式,在网络状况良好的时候,QQ进程的登录报文通过UDP协议进行传输,此时描述所述QQ进程的版本特征的位置位于所述登录报文的数据部分偏移1个字节之后的位置;在网络状况不佳的情况下,QQ进程的登录报文通过TCP协议进行传输,此时描述所述QQ进程的版本特征的位置位于所述登录报文的数据部分偏移3个字节之后的位置;在所述电子设备获取到承载所述数据包的传输协议之后,所述电子设备从预先建立的第一存储表或者第一数据库中,获取与所述传输协议对应的描述应用软件的版本特征的位置,需要说明的是,步骤103和步骤104之间并无先后关系,步骤103以及步骤104可同时进行。
在步骤105中,所述电子设备可以在过滤之后直接获取所述目标报文,也可以获取在过滤之后以指定格式存储下来的所述目标报文,然后从所述目标报文的所述描述应用软件的版本特征的位置起,提取应用软件的版本特征,具体地,请参阅图2,所述电子设备解析所述目标报文头部的长度,根据所述目标报文头部的长度剥去所述目标报文的头部,以获取所述目标报文的数据部分,然后从所述目标报文的数据部分的所述描述应用软件的版本特征的位置起,截取预设偏移量的字节,由于不同的应用进程中描述版本的字段长度可能不同,因此其截取的描述版本的字段长度也有所不同,可依据具体情况进行具体设置,以提取QQ进程的版本特征为例,描述QQ进程的版本特征的字段长度是2个字节,则所述电子设备在获取所述QQ进程的版本特征时,则从QQ进程的目标报文的数据部分的所述描述QQ进程的版本特征的位置起,截取偏移量为2个字节的长度的特征。
在一实施例中,为保证提取的版本特征的准确性,避免其他干扰因素,所述特征位置除了描述所述应用软件的版本特征的位置,还包括用于描述所述应用进程的标志位的位置以及所述描述目标报文对应的动作的字段的位置,则相应地,所述电子设备会预先建立第二存储表或者第二数据库,所述第二存储表或者第二数据库用来存储传输协议与所述特征位置之间的对应关系,以QQ进程的登录动作为例,QQ登录有两种方式,在网络状况良好的时候,QQ进程的登录报文通过UDP协议进行传输,此时描述所述QQ进程的特征位置位于所述登录报文的数据部分的起始位置;在网络状况不佳的情况下,QQ进程的登录报文通过TCP协议进行传输,此时所述特征位置位于所述登录报文的数据部分偏移2个字节之后的位置;在所述电子设备获取到承载所述数据包的传输协议之后,所述电子设备从预先建立的第二存储表或者第二数据库中,获取与所述传输协议对应的描述应用软件的版本特征的位置,并在所述电子设备从解析的报文中过滤出目标报文之后,所述电子设备解析所述目标报文头部的长度,根据所述目标报文头部的长度剥去所述目标报文的头部,以获取所述目标报文的数据部分,然后从所述目标报文的数据部分的所述特征位置起,截取预设偏移量的字节,由于不同的应用进程之间描述应用进程的标志位的字段长度、描述版本的字段长度以及描述目标报文的动作的字段长度可能不同,因此其截取的字段长度也有所不同,可依据具体情况进行具体设置,以提取QQ进程的特征为例,用于描述所述应用进程的标志位的字段长度是1个字节,描述QQ进程的版本特征的字段长度是2个字节,描述目标报文对应的动作的字段例如登录命令字段的长度为2个字节,所述电子设备在获取所述QQ进程的特征时,从QQ进程的目标报文的数据部分的所述特征位置起,则为标志位字段(1字节)+版本号字段(2字节)+登录命令字段(2字节)的格式,所述电子设备截取偏移量为5个字节的长度的特征,其中以标志位字段“\x02”开头、以登录命令字段“\x08\x25”结束,作为QQ进程的特征。本实施例以描述所述应用软件的版本特征,用于描述所述应用进程的标志位以及所述描述目标报文对应的动作的字段作为所述应用进程的特征,在已知所述用于描述所述应用进程的标志位以及所述描述目标报文对应的动作的字段的情况下,可以有效保证提取的版本特征的准确性。
在一实施例中,所述电子设备在获取所述应用软件的特征之后,将所述应用特征的特征存储下来,以便其他需要用到所述应用软件的特征的操作的执行。
本发明在检测到预设应用进程被执行时,抓取所述应用进程对应的数据包,然后对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文,再利用指定关键字段从解析后的报文中过滤出目标报文,所述指定关键字段包括描述目标报文对应的动作的字段,以及获取预存的与所述传输协议对应的特征位置,所述特征位置包括描述应用软件的版本特征的位置,最后基于所述特征位置,从所述目标报文中提取所述应用软件的特征,本申请填补了现有技术中对于网络用户行为分析的报文过滤方案的空白,在数据采集过程中,采用有效机制过滤报文,提高了数据采集效率,而且实现自动获取应用软件特征的过程,大大节省了时间以及精力,通过所述特征位置,能够准确提取应用软件特征,减少了特征提取的失误率,也提升了数据分析效率以及优化了数据分析效果。
如图3所示,本发明还提供一种应用软件的特征提取装置,所述装置包括:
抓取模块21,用于当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包。
解析模块22,用于对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文。
过滤模块23,用于利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段。
提取模块24,用于获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置。
所述提取模块24,还用于基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
可选地,所述指定关键字段还包括用于描述所述应用进程的标志位字段。
可选地,所述描述目标报文对应的动作的字段为登录命令字段。
可选地,所述应用进程为QQ进程。
则所述应用进程对应的标志位的字段为“\x02”。
所述登录命令字段为“\x08\x25”。
可选地,所述应用软件的特征提取装置还包括:
报文存储模块,用于以指定格式存储所述目标报文;其中,所述指定格式为pcapng格式或者pcap格式。
可选地,所述提取模块24包括:
解析单元,用于解析所述目标报文头部的长度,以获取所述目标报文的数据部分。
字节截取单元,用于从所述目标报文的数据部分的所述特征位置起,截取预设偏移量的字节。
可选地,所述应用进程为QQ进程。
所述传输协议为TCP协议,所述特征位置位于所述目标报文的数据部分的起始位置偏移2个字节之后。或
所述传输协议为UDP协议,所述特征位置位于所述目标报文的数据部分的起始位置。
可选地,所述特征位置还包括用于描述所述应用进程的标志位的位置以及所述描述目标报文对应的动作的字段的位置。
相应的,如图4所示本发明还提供一种电子设备30,包括有处理器31;用于存储可执行指令的存储器32,所述存储器32包括计算机程序33;其中,处理器31被配置为:
当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包。
对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文。
利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段。
获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置。
基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
所述处理器31执行所述存储器32中包括的计算机程序33,所述处理器31可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器32存储所述应用软件的特征提取方法的计算机程序,所述存储器32可以包括至少一种类型的存储介质,存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。而且,设备可以与通过网络连接执行存储器的存储功能的网络存储装置协作。存储器32可以是设备30的内部存储单元,例如设备30的硬盘或内存。存储器32也可以是设备30的外部存储设备,例如设备30上配备的插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器32还可以既包括设备30的内部存储单元也包括外部存储设备。存储器32用于存储计算机程序33以及设备所需的其他程序和数据。存储器32还可以用于暂时地存储已经输出或者将要输出的数据。
这里描述的各种实施方式可以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器中并且由控制器执行。
电子设备30可以是桌上型计算机、笔记本、掌上电脑及手机等计算设备。设备可包括,但不仅限于,处理器31、存储器32。本领域技术人员可以理解,图4仅仅是电子设备30的示例,并不构成对电子设备30的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如设备还可以包括输入输出设备、网络接入设备、总线等。
上述设备中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由装置的处理器执行以完成上述方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当存储介质中的指令由终端的处理器执行时,使得终端能够执行上述方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种应用软件的特征提取方法,其特征在于,包括以下步骤:
当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;
对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;
利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;
获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;
基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
2.根据权利要求1所述的应用软件的特征提取方法,其特征在于,所述指定关键字段还包括用于描述所述应用进程的标志位字段。
3.根据权利要求2所述的应用软件的特征提取方法,其特征在于,所述描述目标报文对应的动作的字段为登录命令字段。
4.根据权利要求3所述的应用软件的特征提取方法,其特征在于,所述应用进程为QQ进程;
则所述应用进程对应的标志位的字段为“\x02”;
所述登录命令字段为“\x08\x25”。
5.根据权利要求1所述的应用软件的特征提取方法,其特征在于,还包括:
以指定格式存储所述目标报文;其中,所述指定格式为pcapng格式或者pcap格式。
6.根据权利要求1所述的应用软件的特征提取方法,其特征在于,所述基于所述特征位置,从所述目标报文中提取所述应用软件的特征,包括:
解析所述目标报文头部的长度,以获取所述目标报文的数据部分;
从所述目标报文的数据部分的所述特征位置起,截取预设偏移量的字节。
7.根据权利要求6所述的应用软件的特征提取方法,其特征在于,所述应用进程为QQ进程;
所述传输协议为TCP协议,所述特征位置位于所述目标报文的数据部分的起始位置偏移2个字节之后;或
所述传输协议为UDP协议,所述特征位置位于所述目标报文的数据部分的起始位置。
8.根据权利要求7所述的应用软件的特征提取方法,其特征在于,所述特征位置还包括用于描述所述应用进程的标志位的位置以及所述描述目标报文对应的动作的字段的位置。
9.一种应用软件的特征提取装置,其特征在于,包括:
抓取模块,用于当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;
解析模块,用于对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;
过滤模块,用于利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;
提取模块,用于获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;
所述提取模块,还用于基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
10.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
当检测到预设应用进程被执行时,抓取所述应用进程对应的数据包;
对所述数据包进行解析,以获取承载所述数据包的传输协议和解析后的报文;
利用指定关键字段从解析后的报文中过滤出目标报文;其中,所述指定关键字段包括描述目标报文对应的动作的字段;
获取预存的与所述传输协议对应的特征位置;所述特征位置包括描述应用软件的版本特征的位置;
基于所述特征位置,从所述目标报文中提取所述应用软件的特征。
CN201811441558.8A 2018-11-29 2018-11-29 应用软件的特征提取方法、装置及电子设备 Active CN109327357B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811441558.8A CN109327357B (zh) 2018-11-29 2018-11-29 应用软件的特征提取方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811441558.8A CN109327357B (zh) 2018-11-29 2018-11-29 应用软件的特征提取方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN109327357A CN109327357A (zh) 2019-02-12
CN109327357B true CN109327357B (zh) 2020-10-09

Family

ID=65258959

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811441558.8A Active CN109327357B (zh) 2018-11-29 2018-11-29 应用软件的特征提取方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN109327357B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111835542B (zh) * 2019-04-19 2022-02-11 四川大学 一种自动提取及检验用于识别应用程序特征的方法
CN110287699B (zh) * 2019-06-12 2021-02-26 杭州迪普科技股份有限公司 应用程序的特征提取方法和装置
CN110808915B (zh) * 2019-10-21 2022-03-08 新华三信息安全技术有限公司 数据流所属应用识别方法、装置及数据处理设备
CN111222019B (zh) * 2019-12-17 2022-09-06 山石网科通信技术股份有限公司 特征提取的方法和装置
CN112291202B (zh) * 2020-10-09 2023-09-26 腾讯科技(深圳)有限公司 报文数据的可视化方法、装置和计算机可读存储介质
CN112491828B (zh) * 2020-11-13 2023-03-24 北京金山云网络技术有限公司 报文分析方法、装置、服务器及存储介质
CN112688924A (zh) * 2020-12-15 2021-04-20 中国海洋大学 网络协议分析系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878074A (zh) * 2017-02-17 2017-06-20 杭州迪普科技股份有限公司 流量过滤方法及装置
CN108881181A (zh) * 2018-05-30 2018-11-23 杭州迪普科技股份有限公司 一种报文的过滤方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452470B (zh) * 2007-10-18 2012-06-06 广州索答信息科技有限公司 摘要式网络搜索引擎系统及其搜索方法与应用

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878074A (zh) * 2017-02-17 2017-06-20 杭州迪普科技股份有限公司 流量过滤方法及装置
CN108881181A (zh) * 2018-05-30 2018-11-23 杭州迪普科技股份有限公司 一种报文的过滤方法及装置

Also Published As

Publication number Publication date
CN109327357A (zh) 2019-02-12

Similar Documents

Publication Publication Date Title
CN109327357B (zh) 应用软件的特征提取方法、装置及电子设备
CN108804299B (zh) 应用程序异常处理方法及装置
CN108494771B (zh) 电子装置、防火墙开通验证方法及存储介质
CN107957940B (zh) 一种测试日志处理方法、系统及终端
CN109960621A (zh) 一种基于大数据可视化监控平台的数据抽取方法
JP2009017298A (ja) データ分析装置
CN111740923A (zh) 应用识别规则的生成方法、装置、电子设备和存储介质
CN111930472B (zh) 一种代码调试方法、装置、电子设备及存储介质
CN105553770B (zh) 一种数据采集控制方法和装置
CN110932918A (zh) 日志数据采集方法、装置及存储介质
CN109271315B (zh) 脚本代码检测方法、装置、计算机设备及存储介质
CN108197002B (zh) 移动设备无埋点数据统计方法、系统、终端及介质
CN111047147A (zh) 一种业务流程自动采集方法及智能终端
CN106790380A (zh) 数据上报方法及装置
CN106850349B (zh) 一种特征信息的提取方法及装置
CN107590258B (zh) 关键字匹配方法及装置
CN112422564A (zh) 协议的测试方法、装置、存储介质以及电子装置
CN112256557A (zh) 程序回归测试方法、装置、系统、计算机设备及存储介质
CN110727576A (zh) 一种web页面测试方法、装置、设备及存储介质
CN115865525A (zh) 日志数据处理方法、装置、电子设备和存储介质
JP2016014980A (ja) ログ取込抽出システム
CN112671615A (zh) 前端用户操作行为数据的收集方法、系统及存储介质
CN113660134A (zh) 端口探测方法、装置、电子装置和存储介质
CN111225389B (zh) 一种移动数据流量处理的方法及装置
CN110868360A (zh) 流量统计方法、电子设备、系统及介质

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
GR01 Patent grant
GR01 Patent grant