CN111177595A - 一种针对http协议模板化提取资产信息的方法 - Google Patents

一种针对http协议模板化提取资产信息的方法 Download PDF

Info

Publication number
CN111177595A
CN111177595A CN201911326502.2A CN201911326502A CN111177595A CN 111177595 A CN111177595 A CN 111177595A CN 201911326502 A CN201911326502 A CN 201911326502A CN 111177595 A CN111177595 A CN 111177595A
Authority
CN
China
Prior art keywords
asset information
template
matching
http
string
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.)
Granted
Application number
CN201911326502.2A
Other languages
English (en)
Other versions
CN111177595B (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 Jiulue Intelligent Technology Co ltd
Original Assignee
Hangzhou Jiulue Intelligent Technology 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 Jiulue Intelligent Technology Co ltd filed Critical Hangzhou Jiulue Intelligent Technology Co ltd
Priority to CN201911326502.2A priority Critical patent/CN111177595B/zh
Publication of CN111177595A publication Critical patent/CN111177595A/zh
Application granted granted Critical
Publication of CN111177595B publication Critical patent/CN111177595B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种针对HTTP协议模板化提取资产信息的方法,三大部分流程,分别为模板的编写、模板的解析、报文的匹配;所述模板的解析部分依次包括以下步骤:加载模板并分析模板、构造DPI、构造语法树、建立匹配库;报文的匹配部分依次包括以下步骤:匹配库DPI识别、语法树匹配、输出日志,通过“模板”匹配识别出“虚拟属性”,间接确定“实体属性”的资产信息识别方法,增加了资产信息获取新维度;减少了***部署期间对现场“实体资产”的调研;减少了开发人员针对特定“虚拟资产”的分析开发量;增强了运维人员对资产信息获取方式;增强了后期***后期自动更新获取资产信息;即减少了人力维护,又增强了资产信息实时同步,扩展了潜在资产的挖掘能力。

Description

一种针对HTTP协议模板化提取资产信息的方法
技术领域
本发明涉及计算机技术领域,特别涉及一种针对HTTP协议模板化提取资产信息的方法。
背景技术
计算机及互联网已经普及的今天,互联网安全已经渐渐的被人们熟知且重视,人们已经认识到家庭、企业和政府都存在网络安全问题,这其中最容易受到极大威胁的对象是大型企业(工业)网络***和政府网络***。这种大型的网络架构十分的繁复,网络环境中的终端服务设备属性也不同,网络安全设备为了更好提供服务和交互,需要对这种终端或服务器的属性加以识别标注,这种属性在网络安全***中被称作“资产”。
资产分为“实体资产”和“虚拟资产”两大类。实体资产是能够代表真实设备或人的属性,例如:路由器、防火墙、数据库服务器、网站服务器、管理人员等。虚拟资产是能够代表一种虚拟服务或虚拟个体的属性,它们是运作于实体设备(即实体资产)中的,例如:Nginx服务、代码服务、数据库服务、用户名、用户ID等。虚拟资产与实体资产多数时是可对应的,比如“Nginx服务”运作在"网站服务器"中,某“用户ID”对应现实的"个体人"等;在以太网环境中,HTTP协议是最容易携带“虚拟资产”的协议。
安全服务***中的资产获取的方式有两种,一种是由用户提供IP地址与“实体资产”的对应关系,配置在安全***中;另一种是开发人员分析网络环境中“虚拟资产”,开发特殊定制组件,附加在安全***中,更好的为用户服务。无论是何种获取资产的方式,都需要耗费大量的人力,进行统计和分析。且随着网络环境的更新,资产可能会变化(移除或添加),***无法自行更新资产,均需要人为参与更新,这对资产管理者的技能要求过高。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种对HTTP协议结构提取出的报文,通过“模板”匹配识别出“虚拟属性”,间接确定“实体属性”的资产信息识别方法。
本发明的上述技术目的是通过以下技术方案得以实现的:
一种针对HTTP协议模板化提取资产信息的方法,其主要包含三大部分,分别为模板的编写、模板的解析、报文的匹配;
所述模板的解析部分包括以下步骤:
步骤2.1-加载模板并分析模板,通过对模板内容加载到内存中,并将文件载体将结构分析成“协议标志块”、“DPI识别块”、“内容提取块”三个结构块,供后续步骤使用;
步骤2.2-构造DPI,依据“DPI识别块”提供的信息,将HOST和URI和METHOD构成正则表达式,大量的正则表达式构成DFA自动状态机;
步骤2.3-构造语法树,依据模板中的“内容提取块”提供的文本内容,分析文法,并将构建成一颗解析树;
步骤2.4-建立匹配库,待所有模板分析完成,将步骤2.2中构建的正则表达式作为“匹配正则表达式”、步骤2.3中构建的“语法树”作为数据内容进行一一对应,整合到“正则表达式”引擎中,形成匹配库;
所述报文的匹配部分包括以下步骤:
步骤3.1-匹配库DPI识别,***将HTTP构造日志中的“HOST”、“URI”和“METHOD”信息提取,放入匹配库中进行匹配,将匹配结果取出并传递至语法树引擎进行下一步匹配;
步骤3.2-语法树匹配,将整个HTTP报文传入语法树,按照前序遍历进行解析,语法树中的OutputValue函数会将所需的“资产信息”输出到队列中,进行资产输出日志阶段;
步骤3.3-输出日志,将输出队列中获取到对应的key-value值,与对应的IP地址拼成json字符串格式,即为资产信息,与IP地址对应后,部分“虚拟资产”信息即可代表“实体资产”,将json字符串存入数据库,展现在页面上。
进一步优选为,所述模板的编写部分中的模板结构主要分为以下三块:
协议标志块,包含依赖协议的名称,用于确定资产信息依赖的协议;
DPI识别块,包含可以识别出包含资产信息的特征内容,即HOST内容、URI内容、HTTP的METHOD,用于筛选资产信息是否包含在报文中;
内容提取块,存储着模板语法,用于解析提取资产信息。
进一步优选为,所述步骤2.3-构造语法树中涉及的文法结构依赖于tiny-c文法,其内置的函数包括以下类别:
内置结构,采用MIME格式解析结构;
HTTP报文获取,其包含用于获取HTTP的URI文本串的GetUri()、依据key值获取HTTP头部的文本串的GetHeader(key)、用于获取HTTP身体报文文本串的GetRequestBody()等结构/函数;
内置常规算法,其包含URLEncode(string)、URLDecode(string)、Base64Encode(string)和Base64Declde(steing)、Base64Decode(string)、以及SpliteString(string,splite_words)、以MIME格式分析字符串的Mime AnalyseMime(string)、将资产信息输出到队列中的key值的OutputValue(key,string)等结构/函数。
综上所述,本发明对比于现有技术的有益效果为:
本发明相对于现有的资产获取方式,增加了资产信息获取新维度;减少了***部署期间对现场“实体资产”的调研;减少了开发人员针对特定“虚拟资产”的分析开发量;增强了运维人员对资产信息获取方式;增强了后期***后期自动更新获取资产信息;即减少了人力维护,又增强了资产信息实时同步,扩展了潜在资产的挖掘能力。
附图说明
图1为实施例中tiny-c文法的内置函数结构;
图2为实施例中语法树的结构框架;
图3为实施例中报文匹配流程图。
具体实施方案
以下结合附图对发明作进一步详细说明。
一种针对HTTP协议模板化提取资产信息的方法,其主要包含三大部分,分别为模板的编写、模板的解析、报文的匹配,具体通过对HTTP协议结构提取出的报文,通过“模板”匹配识别出“虚拟属性”,间接确定“实体属性”的资产信息识别方法。
模板的编写部分中涉及的模板结构主要分为以下三块:
协议标志块:包含依赖协议的名称,用于确定资产信息依赖的协议;
DPI识别块:包含可以识别出包含资产信息的特征内容,即HOST内容、URI内容、HTTP的METHOD,用于筛选资产信息是否包含在报文中;
内容提取块:存储着模板语法,用于解析提取资产信息。
模板的解析部分包括以下步骤:
步骤2.1-加载模板并分析模板,通过对模板内容加载到内存中,并将文件载体将结构分析成“协议标志块”、“DPI识别块”、“内容提取块”三个结构块,供后续步骤使用;
步骤2.2-构造DPI,依据“DPI识别区”提供的信息,将HOST和URI和METHOD构成正则表达式,将大量的正则表达式构成DFA自动状态机;
步骤2.3-构造语法树(见图2),依据模板中的“内容提取区”提供的文本内容,分析文法,并将构建成一颗解析树;
步骤2.4-建立匹配库,待所有模板分析完成,将步骤2.2中构建的正则表达式作为“匹配正则表达式”、步骤2.3中构建的“语法树”作为数据内容进行一一对应,整合到“正则表达式”引擎中,形成匹配库。
上述步骤2.3-构造语法树中涉及的文法结构依赖于tiny-c文法,参照图1所示,其内置的函数包括以下类别:
内置结构,采用MIME格式解析结构;
HTTP报文获取,其包含用于获取HTTP的URI文本串的GetUri()、依据key值获取HTTP头部的文本串的GetHeader(key)、用于获取HTTP身体报文文本串的GetRequestBody()等结构/函数;
内置常规算法,其依次包含以下结构/函数:
URLEncode(string),用于Urlencode编码;
URLDecode(string),用于Urldncode编码;
Base64Encode(string),用于Base64编码;
Base64Declde(steing),用于Base64编码;
SpliteString(string,splite_words),用于以splite_words分割字符串,返回数组;
MimeAnalyseMime(string),用于以MIME格式分析字符串;
OutputValue(key,string),用于将资产信息输出到队列中的key值。
参照图3所示,报文的匹配部分包括以下步骤:
步骤3.1-匹配库DPI识别,***将HTTP构造日志中的“HOST”、“URI”和“METHOD”信息提取,放入匹配库中进行匹配,将匹配结果取出并传递至语法树引擎进行下一步匹配;
步骤3.2-语法树匹配,将整个HTTP报文传入语法树,按照前序遍历进行解析,语法树中的OutputValue函数会将所需的“资产信息”输出到队列中,进行资产输出日志阶段;
步骤3.3-输出日志,将输出队列中获取到对应的key-value值,与对应的IP地址拼成json字符串格式,即为资产信息,与IP地址对应后,部分“虚拟资产”信息即可代表“实体资产”,将json字符串存入数据库,展现在页面上。
以上所述仅是本发明的示范性实施方式,而非用于限制本发明的保护范围,本发明的保护范围由所附的权利要求确定。

Claims (3)

1.一种针对HTTP协议模板化提取资产信息的方法,其特征在于,三大部分流程,分别为模板的编写、模板的解析、报文的匹配;
所述模板的解析部分包括以下步骤:
步骤2.1-加载模板并分析模板,通过对模板内容加载到内存中,并将文件载体将结构分析成“协议标志块”、“DPI识别块”、“内容提取块”三个结构块,供后续步骤使用;
步骤2.2-构造DPI,依据“DPI识别块”提供的信息,将HOST和URI和METHOD构成正则表达式,大量的正则表达式构成DFA自动状态机;
步骤2.3-构造语法树,依据模板中的“内容提取块”提供的文本内容,分析文法,并将构建成一颗解析树;
步骤2.4-建立匹配库,待所有模板分析完成,将步骤2.2中构建的正则表达式作为“匹配正则表达式”、步骤2.3中构建的“语法树”作为数据内容进行一一对应,整合到“正则表达式”引擎中,形成匹配库;
所述报文的匹配部分包括以下步骤:
步骤3.1-匹配库DPI识别,***将HTTP构造日志中的“HOST”、“URI”和“METHOD”信息提取,放入匹配库中进行匹配,将匹配结果取出并传递至语法树引擎进行下一步匹配;
步骤3.2-语法树匹配,将整个HTTP报文传入语法树,按照前序遍历进行解析,语法树中的OutputValue函数会将所需的“资产信息”输出到队列中,进行资产输出日志阶段;
步骤3.3-输出日志,将输出队列中获取到对应的key-value值,与对应的IP地址拼成json字符串格式,即为资产信息,与IP地址对应后,部分“虚拟资产”信息即可代表“实体资产”,将json字符串存入数据库,展现在页面上。
2.根据权利要求1所述的一种针对HTTP协议模板化提取资产信息的方法,其特征在于,所述模板的部分结构主要分为以下三块:
协议标志块,包含依赖协议的名称,用于确定资产信息依赖的协议;
DPI识别块,包含可以识别出包含资产信息的特征内容,即HOST内容、URI内容、HTTP的METHOD,用于筛选资产信息是否包含在报文中;
内容提取块,存储着模板语法,用于解析提取资产信息。
3.根据权利要求1所述的一种针对HTTP协议模板化提取资产信息的方法,其特征在于,所述步骤2.3-构造语法树中涉及的文法结构依赖于tiny-c文法,其内置的函数包括以下类别:
内置结构,采用MIME格式解析结构;
HTTP报文获取,其包含用于获取HTTP的URI文本串的GetUri()、依据key值获取HTTP头部的文本串的GetHeader(key)、用于获取HTTP身体报文文本串的GetRequestBody()等结构/函数;
内置常规算法,其包含URLEncode(string)、URLDecode(string)、Base64Encode(string)和Base64Declde(steing)、Base64Decode(string)、以及SpliteString(string,splite_words)、以MIME格式分析字符串的Mime AnalyseMime(string)、将资产信息输出到队列中的key值的OutputValue(key,string)等结构/函数。
CN201911326502.2A 2019-12-20 2019-12-20 一种针对http协议模板化提取资产信息的方法 Active CN111177595B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911326502.2A CN111177595B (zh) 2019-12-20 2019-12-20 一种针对http协议模板化提取资产信息的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911326502.2A CN111177595B (zh) 2019-12-20 2019-12-20 一种针对http协议模板化提取资产信息的方法

Publications (2)

Publication Number Publication Date
CN111177595A true CN111177595A (zh) 2020-05-19
CN111177595B CN111177595B (zh) 2024-04-05

Family

ID=70650303

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911326502.2A Active CN111177595B (zh) 2019-12-20 2019-12-20 一种针对http协议模板化提取资产信息的方法

Country Status (1)

Country Link
CN (1) CN111177595B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157734A (zh) * 2021-12-06 2022-03-08 北京天融信网络安全技术有限公司 数据解析方法、装置、电子设备及存储介质

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060129415A1 (en) * 2004-12-13 2006-06-15 Rohit Thukral System for linking financial asset records with networked assets
US20070016897A1 (en) * 2005-07-12 2007-01-18 International Business Machines Corporation Methods, apparatus and computer programs for optimized parsing and service invocation
US20080104276A1 (en) * 2006-10-25 2008-05-01 Arcsight, Inc. Real-Time Identification of an Asset Model and Categorization of an Asset to Assist in Computer Network Security
CN102098331A (zh) * 2010-12-29 2011-06-15 北京锐安科技有限公司 一种还原web类应用内容的方法及其***
CN102347949A (zh) * 2011-09-28 2012-02-08 上海西默通信技术有限公司 基于dpi的应用协议分析方法
CN103297270A (zh) * 2013-05-24 2013-09-11 华为技术有限公司 应用类型识别方法及网络设备
CN108040040A (zh) * 2017-11-30 2018-05-15 北京锐安科技有限公司 一种应用协议报文的自动化解析方法和装置
CN108900554A (zh) * 2018-08-22 2018-11-27 杭州安恒信息技术股份有限公司 Http协议资产检测方法、***、设备及计算机介质
US20190066664A1 (en) * 2015-06-01 2019-02-28 Sinclair Broadcast Group, Inc. Content Segmentation and Time Reconciliation
US20190066153A1 (en) * 2017-08-22 2019-02-28 Innovid Inc. Method and system for independent validation of asset serving
US20190132378A1 (en) * 2017-10-31 2019-05-02 Oracle International Corporation Identifying an http resource using multi-variant http requests
CN109726185A (zh) * 2018-12-28 2019-05-07 杭州安恒信息技术股份有限公司 一种基于语法树的日志解析方法、***和计算机可读介质
CN109783719A (zh) * 2018-12-29 2019-05-21 北京奇安信科技有限公司 基于单位名称的资产数据查找方法、装置、设备及介质
CN110324280A (zh) * 2018-03-29 2019-10-11 西门子公司 工业云中的协议配置***、装置和方法
CN110381094A (zh) * 2019-09-11 2019-10-25 南京华飞数据技术有限公司 一种基于dpi技术的用户画像与行为分析的方法及***
CN110581780A (zh) * 2019-08-27 2019-12-17 杭州安恒信息技术股份有限公司 针对web服务器资产的自动识别方法

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060129415A1 (en) * 2004-12-13 2006-06-15 Rohit Thukral System for linking financial asset records with networked assets
US20070016897A1 (en) * 2005-07-12 2007-01-18 International Business Machines Corporation Methods, apparatus and computer programs for optimized parsing and service invocation
US20080104276A1 (en) * 2006-10-25 2008-05-01 Arcsight, Inc. Real-Time Identification of an Asset Model and Categorization of an Asset to Assist in Computer Network Security
CN102098331A (zh) * 2010-12-29 2011-06-15 北京锐安科技有限公司 一种还原web类应用内容的方法及其***
CN102347949A (zh) * 2011-09-28 2012-02-08 上海西默通信技术有限公司 基于dpi的应用协议分析方法
CN103297270A (zh) * 2013-05-24 2013-09-11 华为技术有限公司 应用类型识别方法及网络设备
US20190066664A1 (en) * 2015-06-01 2019-02-28 Sinclair Broadcast Group, Inc. Content Segmentation and Time Reconciliation
US20190066153A1 (en) * 2017-08-22 2019-02-28 Innovid Inc. Method and system for independent validation of asset serving
US20190132378A1 (en) * 2017-10-31 2019-05-02 Oracle International Corporation Identifying an http resource using multi-variant http requests
CN108040040A (zh) * 2017-11-30 2018-05-15 北京锐安科技有限公司 一种应用协议报文的自动化解析方法和装置
CN110324280A (zh) * 2018-03-29 2019-10-11 西门子公司 工业云中的协议配置***、装置和方法
CN108900554A (zh) * 2018-08-22 2018-11-27 杭州安恒信息技术股份有限公司 Http协议资产检测方法、***、设备及计算机介质
CN109726185A (zh) * 2018-12-28 2019-05-07 杭州安恒信息技术股份有限公司 一种基于语法树的日志解析方法、***和计算机可读介质
CN109783719A (zh) * 2018-12-29 2019-05-21 北京奇安信科技有限公司 基于单位名称的资产数据查找方法、装置、设备及介质
CN110581780A (zh) * 2019-08-27 2019-12-17 杭州安恒信息技术股份有限公司 针对web服务器资产的自动识别方法
CN110381094A (zh) * 2019-09-11 2019-10-25 南京华飞数据技术有限公司 一种基于dpi技术的用户画像与行为分析的方法及***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157734A (zh) * 2021-12-06 2022-03-08 北京天融信网络安全技术有限公司 数据解析方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN111177595B (zh) 2024-04-05

Similar Documents

Publication Publication Date Title
US20090119307A1 (en) Syslog parser
US10567409B2 (en) Automatic and scalable log pattern learning in security log analysis
US20180293302A1 (en) Natural question generation from query data using natural language processing system
CN111190594B (zh) Vue组件的文档生成方法及装置
US11568277B2 (en) Method and apparatus for detecting anomalies in mission critical environments using word representation learning
CN106209863B (zh) 一种基于全站扫描的网站安全监测方法
CN110278272B (zh) 模拟Socket请求的通用方法
CN110990057A (zh) 小程序子链信息的提取方法、装置、设备及介质
CN111177595A (zh) 一种针对http协议模板化提取资产信息的方法
CN108287874B (zh) 一种db2数据库管理方法及装置
CN111770097B (zh) 一种基于白名单的内容锁防火墙方法及***
CN113312504A (zh) 一种内容审核项目的管理方法、装置、设备及介质
CN115296892B (zh) 数据信息服务***
CN114003737A (zh) 基于人工智能的双录审查辅助方法、装置、设备及介质
WO2010025062A1 (en) Automatic test map generation for system verification test
CN112087473A (zh) 文档下载方法、装置、计算机可读存储介质和计算机设备
CN114915566A (zh) 应用识别方法、装置、设备及计算机可读存储介质
CN112632109A (zh) 信息提取方法、装置、电子设备及可读存储介质
US11930033B2 (en) Method for verifying vulnerabilities of network devices using CVE entries
CN114785604B (zh) 一种动态日志解析方法、装置、设备及存储介质
CN115795058B (zh) 一种威胁建模方法、***、电子设备及存储介质
CN114039776B (zh) 流量检测规则的生成方法、装置、电子设备及存储介质
CN117574010B (zh) 一种数据采集方法、装置、设备以及存储介质
CN117215930A (zh) 基于机器学习的契约推荐方法及装置、电子设备
CN116151269A (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