CN110011964A - 一种网页环境检测方法和装置 - Google Patents

一种网页环境检测方法和装置 Download PDF

Info

Publication number
CN110011964A
CN110011964A CN201910147315.1A CN201910147315A CN110011964A CN 110011964 A CN110011964 A CN 110011964A CN 201910147315 A CN201910147315 A CN 201910147315A CN 110011964 A CN110011964 A CN 110011964A
Authority
CN
China
Prior art keywords
browser
attribute
information
detection
detection score
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
CN201910147315.1A
Other languages
English (en)
Other versions
CN110011964B (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.)
Tong Shield Holdings Ltd
Tongdun Holdings Co Ltd
Original Assignee
Tong Shield Holdings 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 Tong Shield Holdings Ltd filed Critical Tong Shield Holdings Ltd
Priority to CN201910147315.1A priority Critical patent/CN110011964B/zh
Publication of CN110011964A publication Critical patent/CN110011964A/zh
Application granted granted Critical
Publication of CN110011964B publication Critical patent/CN110011964B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links

Abstract

本发明实施例提供一种网页环境检测方法和装置,所述方法包括:从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性,从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合,对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。本发明实施例可以有效检测到攻击者针对目标网页的篡改,极大地提高了网页环境识别的准确性和识别效率。

Description

一种网页环境检测方法和装置
技术领域
本发明涉及网络安全技术领域,尤其涉及一种网页环境检测方法和装置。
背景技术
随着Web(网页)平台的壮大和发展,越来越多的企业把核心产品移植到浏览器内,其中爆发增长的利润也必然引来大量恶意攻击者。由于在Web平台建设之初,标准制定者们就是本着开放共享的原则来设计的,所以Web应用所有的源代码都是暴露在客户端中,而浏览器为了方便开发人员更是增加了便捷的调试工具,这些因素使得心怀恶意的攻击者可以分析并随意篡改客户端上传的信息,从而使用户的网页环境暴露于被篡改和伪造的风险之中。同时,发明人发现,现有的对于网页环境的检测,通过采集的Web设备的有限数据来单一比对浏览器、系统、分辨率等设备的固有属性。这种方法过于原始、单一,检测效率低,准确率也不高。
发明内容
有鉴于此,本发明实施例提出一种网页环境检测方法和装置,以解决现有的网页环境检测方法效率低、准确率不高的问题。
本发明实施例提供了一种网页环境检测方法,所述方法包括:
从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性;
从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合;
对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;
检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;
将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;
根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
优选地,所述从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合,包括:
分别获取所述设备信息中的特征信息和所述用户代理信息中的特征信息;
从所述设备信息的特征信息中选取与所述用户代理信息中的特征信息针对同一对象的特征信息;
将所述针对同一对象的特征信息作为相似特征进行组合,得到相似特征集合。
优选地,所述对所述相似特征集合中的特征进行交叉验证,得到第一检测得分,包括:
获取所述相似特征集合中的相似特征所包括的同一对象的信息内容;
判断所述信息内容是否一致,得到第一检测得分。
优选地,在检测所述浏览器的支持属性中是否包括目标支持属性之前,还包括:
获取不同类别浏览器的支持属性集合;
根据浏览器的类别及其支持属性集合,构建浏览器特征库;
将所述浏览器特征库中每个类别浏览器的支持属性集合分别输入算法模型进行训练,得到每个支持属性对于所属浏览器的分类贡献值;
选取所述分类贡献值大于设定阈值的支持属性,作为所述浏览器的支持属性集合;
将不同类别的浏览器支持属性集合组合起来,得到浏览器支持属性库。
所述检测所述浏览器的支持属性中是否包括目标支持属性,包括:
检测所述浏览器的支持属性中是否包括目标支持属性,所述目标支持属性包括:所述浏览器支持属性库中的属性。
优选地,所述根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度,包括:
分别对所述第一检测得分、第二检测得分和第三检测得分赋予权重;
利用所述权重对所述第一检测得分、第二检测得分和第三检测得分进行加权计算,得到目标检测结果;
根据所述目标检测结果确定网页环境的可信度。
本发明实施例还提供一种网页环境检测装置,所述装置包括:
第一信息获取模块,用于获取目标网页上浏览器接口的设备信息、用户代理信息和所述浏览器的支持属性;
特征组合模块,用于从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合;
交叉验证模块,用于对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;
检测模块,用于检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;
比对模块,用于将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;
可信度确定模块,用于根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
优选地,所述特征组合模块包括:
第二信息获取子模块,分别获取所述设备信息中的特征信息和所述用户代理信息中的特征信息;
特征信息选取子模块,用于从所述设备信息的特征信息中选取与所述用户代理信息中的特征信息针对同一对象的特征信息;
组合子模块,用于将所述针对同一对象的特征信息作为相似特征进行组合,得到相似特征集合。
优选地,所述交叉验证模块包括:
信息内容获取子模块,用于获取所述相似特征集合中的相似特征所包括的同一对象的信息内容;
判断子模块,用于判断所述信息内容是否一致,得到第一检测得分。
优选地,所述装置还包括:
支持属性集合获取模块,用于获取不同类别浏览器的支持属性集合;
特征库构建模块,用于根据浏览器的类别及其支持属性集合,构建浏览器特征库;
训练模块,用于将所述浏览器特征库中每个类别浏览器的支持属性集合分别输入算法模型进行训练,得到每个支持属性对于所属浏览器的分类贡献值;
支持属性选取模块,用于选取所述分类贡献值大于设定阈值的支持属性,作为所述浏览器的支持属性集合;
支持属性组合模块,用于将不同类别的浏览器支持属性集合组合起来,得到浏览器支持属性库。
所述检测模块包括:
检测子模块,用于检测所述浏览器的支持属性中是否包括目标支持属性,所述目标支持属性包括:所述浏览器支持属性库中的属性。
优选地,所述可信度确定模块包括:
权重赋予子模块,用于分别对所述第一检测得分、第二检测得分和第三检测得分赋予权重;
加权计算子模块,用于利用所述权重对所述第一检测得分、第二检测得分和第三检测得分进行加权计算,得到目标检测结果;
可信度确定子模块,用于根据所述目标检测结果确定网页环境的可信度。
在本发明实施例中,从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性,从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合,对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。上述第一个检测模块利用相似特征针对同一对象的特点,对相似特征进行交叉验证,第二个检测模块将当前浏览器支持属性与目标支持属性进行对比,第三个检测模块将网页的当前逻辑与服务器上的代码逻辑进行对比验证。综合三个检测模块的检测结果,可以有效检测到攻击者针对目标网页篡改的特征类型、属性类别以及对代码逻辑的修改,从而极大地提高了网页环境识别的准确性和识别效率。
附图说明
图1示出了本发明实施例一中提供的网页环境检测方法的流程图;
图2示出了本发明实施例二中提供的网页环境检测方法的流程图;
图3示出了本发明实施例三中提供的网页环境检测装置的结构框图;
图4示出了本发明实施例四中提供的网页环境检测装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参照图1,示出了本发明实施例一中提供的指纹密码生成方法的流程图,具体可以包括如下步骤:
步骤101,从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性。
在浏览器环境中,Web应用一般会采集一些通用的设备信息及用户代理(User-Agent)信息来判断用户的属性,其中最常见的是用这些信息来作为设备特征,并基于设备特征来做关联,防止用户大批量请求的行为。所以恶意用户在进行攻击行为时,第一步就是尝试去绕过平台对设备的判断,即篡改一些关键的采集字段,导致平台无法追踪该设备并认为该设备属于一台新设备从而进行后续的攻击操作。
获取浏览器接口的设备信息的方法可以是调用navigator对象。获取用户代理信息的方法可以是查看浏览器的用户代理字段。
具体地,设备信息中包括浏览器名称、浏览器的平台和版本信息、设备显卡型号及厂商、内置函数长度、浏览器中是否启用COOKIE的布尔值、浏览器的操作系统平台信息等;用户代理信息中包括浏览器名称、浏览器版本、渲染引擎、渲染引擎版本、操作系统信息、设备显卡型号及厂商、内置函数长度等。由此可以看出,设备信息和用户代理信息中包含的信息内容有重合的部分。所以,本发明实施例获取浏览器接口的设备信息、用户代理信息等,通过对上述信息进行交叉对比,进而判断网页是否被篡改或伪造。
HTML标准委员会一直在不断更新优化Web应用的体验和能力,所以浏览器厂商也需要更新迭代新版本来支持这些新的标准。各大浏览器厂商作为标准委员会的成员,也会在他们发布的新版本浏览器中增添该版本特有的、实验性质的特性。所以,不同类型不同版本的浏览器支持的属性是不同的。例如,浏览器是否支持获取电池信息,是否支持cookie(浏览器缓存)、是否支持flash(动画)等等属性。
恶意用户在进行攻击行为时,可能会篡改浏览器的支持属性,所以可以采集当前浏览器的支持属性,进而分析判断网页是否被攻击。
步骤102,从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合。
浏览器接口的设备信息和用户代理信息中,会存在针对同一对象的特征。例如,设备信息和用户代理信息中均包括浏览器名称、浏览器平台和版本信息、浏览器操作系统平台信息的字段,那么,可以将针对同一对象的特征进行组合。例如,可以将设备信息中的浏览器名称特征和用户代理信息中的浏览器名称特征进行组合,将设备信息中的浏览器平台特征和用户代理信息中的浏览器平台特征进行组合,将设备信息中的浏览器操作系统平台特征和用户代理信息中的浏览器操作系统信息进行组合。多个同一对象特征的组合综合起来,得到相似特征集合。
步骤103,对所述相似特征集合中的特征进行交叉验证,得到第一检测得分。
在本发明实施例中,将相似特征集合中每一组的特征进行内部的交叉比对,判断是否都具有同样的内容。例如,将设备信息中的浏览器名称特征和用户代理信息中的浏览器平名称特征包含的内容进行对比,判断是否是同一个浏览器名称;同时,也将其他组合中的特征进行交叉比对,判断浏览器平台内容和操作系统内容是否一致。然后,再根据交叉验证的结果进行打分,得到第一检测得分。具体地,可以设置比对结果一致的组合越多,则第一检测得分越低;也可以设置比对结果一致的组合越多,则第一检测得分越高。本发明实施例对此不做具体限定。
步骤104,检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分。
在本发明实施例中,可以通过调用具体属性来获知浏览器的支持属性。例如,调用某一属性来看浏览器返回的结果,若返回结果错误或为空,则说明该浏览器不支持该属性。获得当前浏览器的支持属性后,将该支持属性与预设的目标支持属性进行一致性对比。其中,所述目标支持属性为预先采集的当前类型浏览器的标准支持属性,例如,可以是该浏览器官方版本的支持属性集合。
通过对比,可以获知当前浏览器的支持属性是否与标准支持属性一致。可以设置不一致的属性越多,则网页环境被篡改的可能性越大,则第二检测得分越低;也可以设置不一致的属性越多,则第二检测得分越高。本发明实施例对此不做具体限定。
步骤105,将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分。
攻击者篡改网页参数的常见做法是在网页调用采集接口之前,利用篡改的逻辑来覆盖这些接口的原有逻辑,即在这些接口中插入自定义的钩子(Hook)函数。在其之后,调用这些采集接口的Web平台实际执行的是钩子函数中的逻辑。所以通过检测这些采集函数的真实逻辑是否符合浏览器在服务器上对应的代码逻辑,来判断采集信息的真实性。即将目标网页在浏览器上和服务器上对应的代码逻辑进行比对,得到第三检测得分。其中,目标网页即为待检测的网页,服务器上对应的代码逻辑的采集方法可以是采集正常浏览器网页上的代码逻辑,因为正常浏览器网页上的代码逻辑代表了该网页对应的服务器上的代码逻辑。
具体地,可以设置两者的逻辑越一致,第三检测得分越低;也可以设置两者的逻辑越一致,第三检测得分越高,本发明实施例对此不作具体限定。
步骤106,根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
通过上述步骤的检测过程,得到三个检测项的检测得分,对其中每一项基于实验的验证赋予一个权重值,通过三项加权求和来获得一个最终的得分,根据最终的得分来确定网页环境的可信度,即网页被篡改的可能性。具体地,最终加权求和后的得分与网页环境的可信度关系,需要根据前述第一检测得分、第二检测得分、第三检测得分的设置规则来确定。例如,若设置比对结果一致的组合越多,第一检测得分越低;不一致的属性越多,则第二检测得分越低;两者的逻辑越一致,第三检测得分越低,则可以获知,在本步骤中得出的最终得分越低,则网页环境的可信度越差。
需要注意的是,本发明实施例列出的三种检测方法仅为示例,本领域技术人员可以根据实际情况设置更多的检测方法,这样,可以进一步提高最终检测结果的客观性和准确性。
综上所述,在本发明实施例中,从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性,从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合,对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。上述第一个检测模块利用相似特征针对同一对象的特点,对相似特征进行交叉验证,第二个检测模块将当前浏览器支持属性与目标支持属性进行对比,第三个检测模块将网页的当前逻辑与服务器上的代码逻辑进行对比验证。综合三个检测模块的检测结果,可以有效检测到攻击者针对目标网页篡改的特征类型、属性类别以及对代码逻辑的修改,从而极大地提高了网页环境识别的准确性和识别效率。
实施例二
参照图2,示出了本发明实施例二中提供的网页环境检测方法的流程图,具体可以包括如下步骤:
步骤201,从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性。
在本发明实施例中,获取浏览器接口的设备信息的方法可以是调用navigator对象。获取用户代理信息的方法可以是查看浏览器的用户代理字段。可以通过调用具体属性来获知当前浏览器的支持属性。例如,调用某一属性来查看浏览器返回的结果,若返回结果错误或为空,则说明该浏览器不支持该属性。
优选地,对获取的设备信息、用户代理信息及浏览器支持属性信息进行数据加密。目的是为了防止黑客的攻击和二次篡改,导致采集的数据失去检测能力。
步骤202,分别获取所述设备信息中的特征信息和所述用户代理信息中的特征信息。
通过调用navigator对象可以获取到各种特征信息。例如,navigator.appName属性返回浏览器的名称,navigator.appVersion返回浏览器的平台和版本信息,navigator.platform返回浏览器的操作系统信息。
通过查看用户代理字段也可以获取到各种特征信息。例如,获取到的某浏览器的用户代理字段为:Mozilla/5.0(platform;rv:geckoversion)Gecko/geckotrail Firefox/firefoxversion。
其中,Mozilla/5.0是一个通用标记符号,用来表示与Mozilla兼容;platform用来说明浏览器所运行的原生系统平台(例如Windows、Mac、Linux或Android),以及是否运行在手机上;rv:geckoversion表示Gecko的发布版本号(例如"17.0");Gecko/geckotrail表示该浏览器基于Gecko渲染引擎;在桌面浏览器中,geckotrail是固定的字符串"20100101";Firefox/firefoxversion表示该浏览器是Firefox,并且提供了版本号信息(例如"17.0")。
步骤203,从所述设备信息的特征信息中选取与所述用户代理信息中的特征信息针对同一对象的特征信息。
具体地,针对同一对象的特征信息,在设备信息中和用户代理信息中获取的方式是不同的。例如,通过navigator.appVersion返回浏览器的平台和版本信息,而在用户代理字段中,通常通过version字段来辨认。
步骤204,将所述针对同一对象的特征信息作为相似特征进行组合,得到相似特征集合。
浏览器接口的设备信息和用户代理信息中,会存在针对同一对象的特征。例如,设备信息和用户代理信息中均包括浏览器名称、浏览器平台和版本信息、浏览器操作系统平台信息的字段,那么,可以将针对同一对象的特征进行组合。例如,可以将设备信息中的浏览器名称特征和用户代理信息中的浏览器名称特征进行组合,将设备信息中的浏览器平台特征和用户代理信息中的浏览器平台特征进行组合,将设备信息中的浏览器操作系统平台特征和用户代理信息中的浏览器操作系统信息进行组合。多个同一对象特征的组合综合起来,得到相似特征集合。
步骤205,获取所述相似特征集合中的相似特征所包括的同一对象的信息内容;
具体地,即在每个组合中分别获取设备信息中该对象的内容,和用户代理信息中该对象的内容。例如,设备信息中的浏览器版本是12,用户代理信息中浏览器版本是13;设备信息中的浏览器名称是第一浏览器,用户代理信息中浏览器名称是第二浏览器。
步骤206,判断所述信息内容是否一致,得到第一检测得分。
判断每个组合中获取到的两个信息内容是否一致。例如,上述步骤中浏览器版本是不一致的,浏览器名称是一致的。若判断结果为不一致,则该组合得分为1,若一致,则该组合得分为0。根据各组的得分,以及为各个组合预先设置的权重,加权求和,可以得到第一检测得分。具体地,可以设置比对结果一致的组合越多,则第一检测得分越低;也可以设置比对结果一致的组合越多,则第一检测得分越高。本发明实施例对此不做具体限定。
步骤207,获取不同类别浏览器的支持属性集合。
在本发明实施例中,可以通过不同类型浏览器的官方网站获取该类型浏览器不同版本的支持属性集合。其中,同一类别不同版本的浏览器因为具有不同的支持属性,所以所述不同类别的浏览器,同时包括不同类别的浏览器和同一类别不同版本的浏览器。
优选地,定期获取不同类别浏览器的支持属性集合。
由于浏览器版本一直在更新,所以需要定期获取最新的浏览器支持属性集合,以使数据保存迭代能力,使其对最新版本的环境依然有识别能力。
步骤208,根据浏览器的类别及其支持属性集合,构建浏览器特征库。
所述浏览器特征库中包括了市面上主流的不同类别的浏览器,以及该浏览器的支持属性集合。
步骤209,将所述浏览器特征库中每个类别浏览器的支持属性集合分别输入算法模型进行训练,得到每个支持属性对于所属浏览器的分类贡献值。
在本发明实施例中,使用随机森林算法模型对支持属性数据集进行训练,选择随机森林算法的原因是因为其具有较高的可解释性,能够输出每一项特征对分类的贡献值。
具体训练过程可以如下:
首先,基于浏览器特征库,构建浏览器分类特征数据矩阵Wij:
[W11,W12,…,W1n
W21,W22,…,W2n
……
Wn1,Wn2,…,Wnn]
具体地,从浏览器特征库中取出一种类别的浏览器支持属性集合,将该支持属性集合中的所有属性以矩阵的形式排列。即上述矩阵中的每一个元素,代表了该类别浏览器的一种支持属性。
其次,把特征数据输入随机森林算法模型进行训练,输出每一个特征的贡献值集合:{H1,H2,…,Hn}。
具体地,上述{H1,H2,…,Hn}中的每一个元素分别代表上述矩阵中对应元素的贡献值,即每一个支持属性对于所属浏览器的分类贡献值。例如,属性A是某类型浏览器独有的支持属性,别的浏览器均没有该属性,则属性A对该浏览器的分类贡献值相对较高,对应的H值就较大;而属性B是很多浏览器均具有的特征,则属性B对该浏览器的分类贡献值相对较低,对应的H值就较小。
步骤210,选取所述分类贡献值大于设定阈值的支持属性,作为所述浏览器的目标支持属性集合。
由于特征库中的特征较多,如果如所有项都需采集会严重影响Web应用的执行效率。并且不是每一项特征都对我们进行浏览器的分类有意义,所以我们需要在该特征数据库中提取出切实有用的特征项。
所以将低于设定阈值的特征过滤出来,仅保留对浏览器的分类贡献值较大的属性,作为需要采集的目标支持属性集合。
步骤211,将不同类别的浏览器支持属性集合组合起来,得到浏览器支持属性库。
在上述随机森林算法的训练过程中,每次训练过程只输入一种浏览器的支持属性集合,得到一种浏览器的目标支持属性集合。对每种类别的浏览器支持属性集合分别进行训练,可以得到一个包括多种浏览器目标支持属性集合的浏览器支持属性库。
步骤212,检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分。其中,所述目标支持属性包括:所述浏览器支持属性库中的属性。
获得当前浏览器的支持属性后,将该支持属性与预设的目标支持属性进行一致性对比。其中,所述目标支持属性包括:所述浏览器支持属性库中的属性。
通过对比,可以获知当前浏览器的支持属性是否与标准支持属性一致。可以设置不一致的属性越多,则网页环境被篡改的可能性越大,则第二检测得分越低;也可以设置不一致的属性越多,则第二检测得分越高。本发明实施例对此不做具体限定。
步骤213,将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分。
攻击者篡改网页参数的常见做法是在网页调用采集接口之前,利用篡改的逻辑来覆盖这些接口的原有逻辑,即在这些接口中插入自定义的钩子(Hook)函数。在其之后,调用这些采集接口的Web平台实际执行的是钩子函数中的逻辑。所以通过检测这些采集函数的真实逻辑是否符合浏览器在服务器上对应的代码逻辑,来判断采集信息的真实性。即将目标网页在浏览器上和服务器上对应的代码逻辑进行比对,得到第三检测得分。其中,目标网页即为待检测的网页,服务器上对应的代码逻辑的采集方法可以是采集正常浏览器网页上的代码逻辑,因为正常浏览器网页上的代码逻辑代表了该网页对应的服务器上的代码逻辑。
具体地,可以设置两者的逻辑越一致,第三检测得分越低;也可以设置两者的逻辑越一致,第三检测得分越高,本发明实施例对此不作具体限定。
步骤214,分别对所述第一检测得分、第二检测得分和第三检测得分赋予权重。
首先,获取经过检测模块输出的每一个检测项得到的结果,即第一检测得分、第二检测得分、第三检测得分:{R1,R2,…,Rn}。其中,R1,R2,…,Rn代表各检测项的检测得分。
其次,为每一项检测得分赋予权重:{W1,W2,…,Wn}。其中,W1,W2,…,Wn表示各检测项的权重。
步骤215,利用所述权重对所述第一检测得分、第二检测得分和第三检测得分进行加权计算,得到目标检测结果。
根据上述的得分和权重进行加权计算,即:
步骤216,根据所述目标检测结果确定网页环境的可信度。
经过对每一个检测得分的加权求和后,可以得出目标检测结果。具体地,最终加权求和后的得分与网页环境的可信度关系,需要根据前述第一检测得分、第二检测得分、第三检测得分的设置规则来确定。例如,若设置比对结果一致的组合越多,第一检测得分越低;不一致的属性越多,则第二检测得分越低;两者的逻辑越一致,第三检测得分越低,则可以获知,在本步骤中得出的最终得分越低,则网页环境的可信度越差。
需要注意的是,本发明实施例列出的三种检测方法仅为示例,本领域技术人员可以根据实际情况设置更多的检测方法,这样,可以进一步提高最终检测结果的客观性和准确性。
综上所述,本发明实施例提供的网页环境检测方法,除具有实施例一中所示的网页环境检测方法所具有的有益效果外,还可以利用算法模型输出浏览器特征库中每个支持属性对于所属浏览器的分类贡献值,根据贡献值选取目标支持属性,将当前浏览器的支持属性仅与目标支持属性进行对比验证,这样,提高了网页环境检测的执行效率,降低了数据冗余度。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定都是本申请实施例所必须的。
实施例三
参照图3所示,为本发明实施例三提供的网页环境检测装置300的结构框图,上述网页环境检测装置300具体可以包括:
第一信息获取模块301,用于从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性;
特征组合模块302,用于从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合;
交叉验证模块303,用于对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;
检测模块304,用于检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;
比对模块305,用于将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;
可信度确定模块306,用于根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
本发明实施例提供的网页环境检测装置300能够实现图1的方法实施例中网页环境检测方法实现的各个过程,为避免重复,这里不再赘述。
实施例四
在图3的基础上,图4示出了本发明实施例四供的网页环境检测装置400的结构框图,该网页环境检测装置400是图3中的装置300的优选实施例,该网页环境检测装置400具体可以包括:
第一信息获取模块401,用于从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性;
特征组合模块402,用于从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合;
交叉验证模块403,用于对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;
检测模块404,用于检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;
比对模块405,用于将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;
可信度确定模块406,用于根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
其中,所述特征组合模块402包括:
第二信息获取子模块4021,分别获取所述设备信息中的特征信息和所述用户代理信息中的特征信息;
特征信息选取子模块4022,用于从所述设备信息的特征信息中选取与所述用户代理信息中的特征信息针对同一对象的特征信息;
组合子模块4023,用于将所述针对同一对象的特征信息作为相似特征进行组合,得到相似特征集合。
所述交叉验证模块403包括:
信息内容获取子模块4031,用于获取所述相似特征集合中的相似特征所包括的同一对象的信息内容;
判断子模块4032,用于判断所述信息内容是否一致,得到第一检测得分。
所述装置400还包括:
支持属性集合获取模块404,用于获取不同类别浏览器的支持属性集合;
特征库构建模块405,用于根据浏览器的类别及其支持属性集合,构建浏览器特征库;
训练模块406,用于将所述浏览器特征库中每个类别浏览器的支持属性集合分别输入算法模型进行训练,得到每个支持属性对于所属浏览器的分类贡献值;
支持属性选取模块407,用于选取所述分类贡献值大于设定阈值的支持属性,作为所述浏览器的支持属性集合;
支持属性组合模块408,用于将不同类别的浏览器支持属性集合组合起来,得到浏览器支持属性库。
所述检测模块409包括:
检测子模块4091,用于检测所述浏览器的支持属性中是否包括目标支持属性,所述目标支持属性包括:所述浏览器支持属性库中的属性。
所述可信度确定模块411包括:
权重赋予子模块4111,用于分别对所述第一检测得分、第二检测得分和第三检测得分赋予权重;
加权计算子模块4112,用于利用所述权重对所述第一检测得分、第二检测得分和第三检测得分进行加权计算,得到目标检测结果;
可信度确定子模块4113,用于根据所述目标检测结果确定网页环境的可信度。
本发明实施例提供的网页环境检测装置能够实现图2的方法实施例中网页环境检测方法实现的各个过程,为避免重复,这里不再赘述。
这样,在本发明实施例中,从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性,从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合,对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。上述第一个检测模块利用相似特征针对同一对象的特点,对相似特征进行交叉验证,第二个检测模块将当前浏览器支持属性与目标支持属性进行对比,第三个检测模块将网页的当前逻辑与服务器上的代码逻辑进行对比验证。综合三个检测模块的检测结果,可以有效检测到攻击者针对目标网页篡改的特征类型、属性类别以及对代码逻辑的修改,从而极大地提高了网页环境识别的准确性和识别效率。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种网页环境检测方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种网页环境检测方法,其特征在于,所述方法包括:
从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性;
从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合;
对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;
检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;
将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;
根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
2.根据权利要求1所述的方法,其特征在于,所述从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合,包括:
分别获取所述设备信息中的特征信息和所述用户代理信息中的特征信息;
从所述设备信息的特征信息中选取与所述用户代理信息中的特征信息针对同一对象的特征信息;
将所述针对同一对象的特征信息作为相似特征进行组合,得到相似特征集合。
3.根据权利要求2所述的方法,其特征在于,所述对所述相似特征集合中的特征进行交叉验证,得到第一检测得分,包括:
获取所述相似特征集合中的相似特征所包括的同一对象的信息内容;
判断所述信息内容是否一致,得到第一检测得分。
4.根据权利要求1所述的方法,其特征在于,在检测所述浏览器的支持属性中是否包括目标支持属性之前,还包括:
获取不同类别浏览器的支持属性集合;
根据浏览器的类别及其支持属性集合,构建浏览器特征库;
将所述浏览器特征库中每个类别浏览器的支持属性集合分别输入算法模型进行训练,得到每个支持属性对于所属浏览器的分类贡献值;
选取所述分类贡献值大于设定阈值的支持属性,作为所述浏览器的支持属性集合;
将不同类别的浏览器支持属性集合组合起来,得到浏览器支持属性库。
所述检测所述浏览器的支持属性中是否包括目标支持属性,包括:
检测所述浏览器的支持属性中是否包括目标支持属性,所述目标支持属性包括:所述浏览器支持属性库中的属性。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度,包括:
分别对所述第一检测得分、第二检测得分和第三检测得分赋予权重;
利用所述权重对所述第一检测得分、第二检测得分和第三检测得分进行加权计算,得到目标检测结果;
根据所述目标检测结果确定网页环境的可信度。
6.一种网页环境检测装置,其特征在于,所述装置包括:
第一信息获取模块,用于从目标网页的浏览器接口上获取设备信息、用户代理信息和所述浏览器的支持属性;
特征组合模块,用于从所述设备信息和用户代理信息中选取针对同一对象的特征,并将所述针对同一对象的特征进行组合,得到相似特征集合;
交叉验证模块,用于对所述相似特征集合中的特征进行交叉验证,得到第一检测得分;
检测模块,用于检测所述浏览器的支持属性中是否包括目标支持属性,得到第二检测得分;
比对模块,用于将目标网页的代码逻辑和服务器上对应的代码逻辑进行比对,得到第三检测得分;
可信度确定模块,用于根据所述第一检测得分、第二检测得分和第三检测得分确定网页环境的可信度。
7.根据权利要求6所述的装置,其特征在于,所述特征组合模块包括:
第二信息获取子模块,分别获取所述设备信息中的特征信息和所述用户代理信息中的特征信息;
特征信息选取子模块,用于从所述设备信息的特征信息中选取与所述用户代理信息中的特征信息针对同一对象的特征信息;
组合子模块,用于将所述针对同一对象的特征信息作为相似特征进行组合,得到相似特征集合。
8.根据权利要求7所述的装置,其特征在于,所述交叉验证模块包括:
信息内容获取子模块,用于获取所述相似特征集合中的相似特征所包括的同一对象的信息内容;
判断子模块,用于判断所述信息内容是否一致,得到第一检测得分。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
支持属性集合获取模块,用于获取不同类别浏览器的支持属性集合;
特征库构建模块,用于根据浏览器的类别及其支持属性集合,构建浏览器特征库;
训练模块,用于将所述浏览器特征库中每个类别浏览器的支持属性集合分别输入算法模型进行训练,得到每个支持属性对于所属浏览器的分类贡献值;
支持属性选取模块,用于选取所述分类贡献值大于设定阈值的支持属性,作为所述浏览器的支持属性集合;
支持属性组合模块,用于将不同类别的浏览器支持属性集合组合起来,得到浏览器支持属性库。
所述检测模块包括:
检测子模块,用于检测所述浏览器的支持属性中是否包括目标支持属性,所述目标支持属性包括:所述浏览器支持属性库中的属性。
10.根据权利要求6所述的装置,其特征在于,所述可信度确定模块包括:
权重赋予子模块,用于分别对所述第一检测得分、第二检测得分和第三检测得分赋予权重;
加权计算子模块,用于利用所述权重对所述第一检测得分、第二检测得分和第三检测得分进行加权计算,得到目标检测结果;
可信度确定子模块,用于根据所述目标检测结果确定网页环境的可信度。
CN201910147315.1A 2019-02-27 2019-02-27 一种网页环境检测方法和装置 Active CN110011964B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910147315.1A CN110011964B (zh) 2019-02-27 2019-02-27 一种网页环境检测方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910147315.1A CN110011964B (zh) 2019-02-27 2019-02-27 一种网页环境检测方法和装置

Publications (2)

Publication Number Publication Date
CN110011964A true CN110011964A (zh) 2019-07-12
CN110011964B CN110011964B (zh) 2021-09-24

Family

ID=67166121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910147315.1A Active CN110011964B (zh) 2019-02-27 2019-02-27 一种网页环境检测方法和装置

Country Status (1)

Country Link
CN (1) CN110011964B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111967063A (zh) * 2020-09-02 2020-11-20 开普云信息科技股份有限公司 一种基于多维度分析的数据篡改监测和识别方法、装置、电子设备及其存储介质
TWI732633B (zh) * 2019-07-25 2021-07-01 日商東芝三菱電機產業系統股份有限公司 Scada網路hmi伺服器及scada網路hmi系統

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103390026A (zh) * 2013-06-20 2013-11-13 中国软件与技术服务股份有限公司 一种移动智能终端安全浏览器及其工作方法
CN103577526A (zh) * 2013-08-01 2014-02-12 星云融创(北京)信息技术有限公司 一种验证页面是否被修改的方法、系统及浏览器
US20140359770A1 (en) * 2011-09-16 2014-12-04 Tencent Technology (Shenzhen) Company Limited Apparatus and methods for preventing payment webpage tampering
CN105184159A (zh) * 2015-08-27 2015-12-23 深圳市深信服电子科技有限公司 网页篡改的识别方法和装置
CN105303109A (zh) * 2015-09-22 2016-02-03 电子科技大学 一种恶意代码情报检测分析方法及系统
CN109145581A (zh) * 2018-09-29 2019-01-04 武汉极意网络科技有限公司 基于浏览器渲染性能的防模拟登录方法、装置及服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140359770A1 (en) * 2011-09-16 2014-12-04 Tencent Technology (Shenzhen) Company Limited Apparatus and methods for preventing payment webpage tampering
CN103390026A (zh) * 2013-06-20 2013-11-13 中国软件与技术服务股份有限公司 一种移动智能终端安全浏览器及其工作方法
CN103577526A (zh) * 2013-08-01 2014-02-12 星云融创(北京)信息技术有限公司 一种验证页面是否被修改的方法、系统及浏览器
CN105184159A (zh) * 2015-08-27 2015-12-23 深圳市深信服电子科技有限公司 网页篡改的识别方法和装置
CN105303109A (zh) * 2015-09-22 2016-02-03 电子科技大学 一种恶意代码情报检测分析方法及系统
CN109145581A (zh) * 2018-09-29 2019-01-04 武汉极意网络科技有限公司 基于浏览器渲染性能的防模拟登录方法、装置及服务器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI732633B (zh) * 2019-07-25 2021-07-01 日商東芝三菱電機產業系統股份有限公司 Scada網路hmi伺服器及scada網路hmi系統
CN111967063A (zh) * 2020-09-02 2020-11-20 开普云信息科技股份有限公司 一种基于多维度分析的数据篡改监测和识别方法、装置、电子设备及其存储介质

Also Published As

Publication number Publication date
CN110011964B (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN107908485B (zh) 接口参数传递方法、装置、设备及计算机可读存储介质
CN109922032B (zh) 用于确定登录账户的风险的方法、装置、设备及存储介质
CN104615760B (zh) 钓鱼网站识别方法和系统
JP6609047B2 (ja) アプリケーション情報リスクマネジメントのための方法及びデバイス
CN104143008B (zh) 基于图片匹配检测钓鱼网页的方法及装置
CN107872452A (zh) 一种恶意网站的识别方法、装置、存储介质及程序产品
CN109886290A (zh) 用户请求的检测方法、装置、计算机设备及存储介质
CN106570399A (zh) 一种跨App组件间隐私泄露的检测方法
CN109871312B (zh) 一种接口测试方法、装置、设备及可读存储介质
KR102242219B1 (ko) 서버가 공격받는 것을 막기 위한 방법 및 디바이스
US10423793B2 (en) Install runtime agent for security test
CN108305057A (zh) 电子红包的发放装置、方法及计算机可读存储介质
CN110011964A (zh) 一种网页环境检测方法和装置
CN104375935B (zh) Sql注入攻击的测试方法和装置
CN108470126A (zh) 数据处理方法、装置及存储介质
CN109446801A (zh) 检测模拟器访问的方法、装置、服务器及存储介质
CN110210225A (zh) 一种智能化的Docker容器恶意文件检测方法和装置
US10310962B2 (en) Infrastructure rule generation
CN111221721A (zh) 一种单元测试案例自动化录制和执行方法及装置
US10839066B1 (en) Distinguishing human from machine input using an animation
CN109284590A (zh) 访问行为安全防护的方法、设备、存储介质及装置
CN109815083B (zh) 一种应用崩溃的监控方法、装置、电子设备及介质
WO2015116138A1 (en) Application test using attack suggestions
CN115119197B (zh) 基于大数据的无线网络风险分析方法、装置、设备及介质
CN109582560A (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