CN108737328B - 一种浏览器用户代理识别方法、系统及装置 - Google Patents

一种浏览器用户代理识别方法、系统及装置 Download PDF

Info

Publication number
CN108737328B
CN108737328B CN201710245007.3A CN201710245007A CN108737328B CN 108737328 B CN108737328 B CN 108737328B CN 201710245007 A CN201710245007 A CN 201710245007A CN 108737328 B CN108737328 B CN 108737328B
Authority
CN
China
Prior art keywords
user agent
information
user
agent information
recorded
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
CN201710245007.3A
Other languages
English (en)
Other versions
CN108737328A (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.)
Sina Finance mobile network technology (Beijing) Co.,Ltd.
Original Assignee
Xingchao Shanyao Mobile Network Technology China 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 Xingchao Shanyao Mobile Network Technology China Co ltd filed Critical Xingchao Shanyao Mobile Network Technology China Co ltd
Priority to CN201710245007.3A priority Critical patent/CN108737328B/zh
Publication of CN108737328A publication Critical patent/CN108737328A/zh
Application granted granted Critical
Publication of CN108737328B publication Critical patent/CN108737328B/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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例提供一种浏览器用户代理识别方法、系统及装置,该方法包括:获取用户在网络访问请求过程中发送的用户代理信息;查询用户代理特征库中是否记录有该用户代理的用户代理信息;若有,将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;若无,则将获取的用户代理信息记录到暂存特征库中。能够准确识别用户代理的真伪,难以察觉和伪造,识别效率高。

Description

一种浏览器用户代理识别方法、系统及装置
技术领域
本发明涉及网络安全技术领域,尤指一种浏览器用户代理识别方法、系统及装置。
背景技术
用户使用浏览器进行网络操作时,使用用户代理(User Agent,UA)使得服务器能够识别客户使用的操作系统及版本、中央处理单元(Central Processing Unit)CPU类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等,User Agent一般是一个特殊字符串。
现有技术基本上信任浏览器提交的User-agent,这就导致某些情况下,用户可以伪造User-agent,以获得一些好处,或者绕过网站运营方的一些限制,如:
用户可以使用伪造的浏览器User-agent抓取数据。
用户可以使用伪造的浏览器User-agent来访问一些只有某些特定User-agent才能访问的资源。
用户可以使用伪造的浏览器User-agent突破投票活动等对User-agent做的限制。
为了避免这种伪造User-agent的行为,目前常用的方法是,利用浏览器实现上的差异,让用户浏览器中运行指定的javascript(一种直译式脚本语言),并收集结果。这种方法由于以下原因容易被伪造:
这种方法已经存在很久了,有经验的伪装者可以很熟练地应对;且由于javascript脚本必须传输到浏览器上执行,伪装者可以轻易发现并对其进行分析,从而避开javascript脚本的收集,使其伪装行为不被发现。
可见,现有技术中对浏览器识别的脚本难以真正发挥作用,伪装者可以轻易突破,伪装者仍然很容易使用伪造的User-agent来进行一些被限制的操作,对伪装者的识别难以实现,识别的准确性和有效性差。
发明内容
本发明实施例提供一种浏览器用户代理识别方法、系统及装置,用以解决现有技术中存在的对用户代理真伪识别准确性差,不能有效的识别伪装者的问题。
一方面,本发明实施例提供了一种浏览器用户代理识别方法,包括:
获取用户在网络访问请求过程中发送的用户代理信息;
查询用户代理特征库中是否记录有该用户代理的用户代理信息;
若有,将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;
若无,则将获取的用户代理信息记录到暂存特征库中。
在一些可选的实施例中,所述获取用户在网络访问请求过程中发送的用户代理信息,具体包括:
接收用户发送的安全套接层SSL的客户端握手消息;
从所述客户端握手消息中获取携带的用户代理信息。
在一些可选的实施例中,所述用户代理信息,包括下列用户代理特征信息中的至少一个:客户端支持的SSL版本、加密套件、曲线和签名算法。
在一些可选的实施例中,所述将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配,判断是否相匹配的过程,具体包括:
将获取的用户代理信息中包含的各信息逐一进行比对,若所有信息均对应相同时,判定为相匹配,若有任何一个信息不相同时,判定为不相匹配。
在一些可选的实施例中,所述用户代理特征库的形成过程,包括:
用户使用用户代理访问网络时,记录用户使用的用户代理信息到暂存特征库中;
通过机器学习或人工修订列表的方式,对记录的同一用户代理的多个用户代理特征进行筛选识别,提取用户代理信息中的用户代理特征信息,形成该用户代理的正确的用户代理信息并保存。
本发明实施例还提供一种浏览器用户代理识别装置,包括:
获取模块,用于获取用户在网络访问请求过程中发送的用户代理信息;
查询模块,用于查询用户代理特征库中是否记录有该用户代理的用户代理信息;若有,通知识别模块;若无,通知库生成模块;
所述识别模块,用于将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;
所述库生成模块,用于将获取的用户代理信息记录到暂存特征库中。
在一些可选的实施例中,所述获取模块,具体用于:
接收用户发送的安全套接层SSL的客户端握手消息;
从所述客户端握手消息中获取携带的用户代理信息。
在一些可选的实施例中,所述识别模块,具体用于:
将获取的用户代理信息中包含的各信息逐一进行比对,若所有信息均对应相同时,判定为匹配,若有任何一个信息不相同时,判定为不相匹配;
所述用户代理信息,包括下列用户代理特征信息中的至少一个:客户端支持的SSL版本、加密套件、曲线和签名算法。
在一些可选的实施例中,所述库生成模块,还用于:
用户使用用户代理访问网络时,记录用户使用的用户代理信息到暂存特征库中;
通过机器学习或人工修订列表的方式,对记录的同一用户代理的多个用户代理信息进行筛选识别,提取用户代理信息中的用户代理特征信息,形成该用户代理的正确的用户代理信息并保存。
本发明实施例还提供一种浏览器用户代理识别系统,包括:客户端和识别服务器;
所述客户端,用于在网络访问请求过程中向识别服务器发送用户代理信息;
所述识别服务器中包括上述的浏览器用户代理识别装置。
上述技术方案具有如下有益效果:用户访问网络的过程中,没有额外动作的情况下获取用户代理信息,并基于用户代理特征库对用户代理信息进行识别比对,以便识别用户代理是否是伪造的用户代理,该方法识别用户代理隐蔽性高,速度快,准确度高,实现简单、方便,可以有效地发现使用伪造的用户代理访问网络的行为。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一中浏览器用户代理识别方法的流程图;
图2是本发明实施例二中浏览器用户代理识别方法的流程图;
图3是本发明实施例中浏览器用户代理识别系统的结构示意图;
图4是本发明实施例中浏览器用户代理识别装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术中存在的不能有效的识别伪装者使用的用户代理,对用户代理识别准确性差,难以实现准确、有效的真伪识别的问题,本发明实施例提供一种浏览器用户代理识别方法,能够准确的识别伪装用户代理,提高伪装者伪装用户代理的难度,保证网络安全,有效地避免伪装者使用伪装的用户代理进行非法或违规操作。
通过超文本传输安全协议(Hypertext Transfer Protocol Secure,HTTPS)是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,安全套接层(Secure SocketsLayer,SSL)及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。
用户代理(UA)是HTTP协议中的一部分,属于头域的组成部分,它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计;例如用手机访问网站和电脑访问是不一样的,这些是网站根据访问者的UA来判断的。UA可以进行伪装。
实施例一
本发明实施例一提供的浏览器用户代理识别方法,其流程如图1所示,包括如下步骤:
步骤S101:获取用户在网络访问请求过程中发送的用户代理信息。
在用户访问网络的过程中,可以针对特定的安全套接层(Secure Sockets Layer,SSL)请求,获取其用户代理信息。具体的,接收用户发送的SSL的客户端握手消息;从接收到的客户端握手消息中获取携带的用户代理信息。
用户在网络访问请求过程中按照HTTP协议发送用户代理信息。用户代理信息中包括一个或多用户代理特征信息。
比如,上述用户代理信息,包括下列用户代理特征信息中的至少一个:客户端支持的SSL版本、加密套件、曲线和签名算法。
步骤S102:查询用户代理特征库中是否记录有该用户代理的用户代理信息。
获取到用户代理信息后,查询预先建立的用户代理特征库,确定用户代理特征库中是否记录有该用户代理的相关记录信息。比如:其他用户使用该用户代理时,服务器记录下来的用户代理信息,和/或当前用户在此之前使用该用户代理时,服务器记录下来的用户代理信息等等,根据记录下来的至少一个用户代理信息在用户代理特征库中形成的该用户代理的记录信息。
若有执行步骤S103;若无执行步骤S106。
步骤S103:将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配。当相匹配时,执行步骤S104;当不相匹配时,执行步骤S105。
将获取的用户代理信息中包含的各用户代理特征信息逐一进行比对,若所有用户代理特征信息均对应相同时,判定为相匹配,若有任何一个用户代理特征信息不相同时,判定为不相匹配。比如匹配SSL版本是否正确,加密套件是否一致,曲线、加密算法是否都相同等等。
匹配处理之前还可以先对用户代理信息进行规范化处理,然后再进行逐一比对。规范化的动作是可选的。比如,一些用户代理会自动在上述字段中加入特定的特殊字符串集合中的一个,规范化预处理可以将其去掉,以简化后续处理流程、改善识别效果。
步骤S104:推定不是伪造的用户代理。
步骤S105:确定为伪造的用户代理。
步骤S106:将步骤S101中获取的用户代理信息记录到暂存特征库中。
也就是说,对于用户代理特征库中没有相关记录信息的用户代理,即不常见的用户代理,可以将其记录下来,放在暂存特征库中。如果后续还有该用户代理,可以继续记录,匹配最终形成该用户代理的正确的记录信息,并加入到用户代理特征库中。
上述方法中,在用户访问网络的过程中,可以通过记录学习的方式形成用户代理特征库,以便用于用户代理伪造识别。用户代理特征库的形成过程,包括:
用户使用用户代理访问网络时,记录用户使用的用户代理信息到暂存特征库中;
通过机器学习或人工修订列表的方式,对记录的同一用户代理的多个用户代理信息进行筛选识别,提取用户代理信息中的用户代理特征信息,形成该用户代理的正确的用户代理信息并保存。
实施例二
本发明实施例二提供的浏览器用户代理识别方法,其流程如图2所示,包括如下步骤:
步骤S201:监控到由用户请求访问网络。
网络侧的服务器监控用户使用浏览器等客户端访问网络的情况。
步骤S202:获取用户在网络访问请求过程中发送的用户代理信息。
对于特定的SSL请求,检查其SSL的客户端握手消息(Client hello)中的SSL版本和加密套件(cipher suites),SSL版本和加密套件均是设定的一些字符串。客户端握手消息通常是指SSL握手时客户端首先发出的数据包。
例如:具体实现上,SSL版本可以是一个字符串,目前常见的有:SSLv2、SSLv3、TLSv1.0、TLSv1.1、TLSv1.2等等。
例如:具体实现上,SSL的加密套件(Cipher suites)可以是一组不定长的16位无符号整数。加密套件包括加密算法、HMAC算法,并且可以包含签名和密钥交换算法的一组算法的组合,是SSL协议中的一部分。
(椭圆)曲线(Curves),指用于椭圆曲线密码学中的椭圆曲线,通常通过TLS扩展传输。
签名算法(Signature algorithms),指包含签名和密钥交换算法的组合,通常独立列出、通过TLS扩展传输
当用户访问网络时,通过超文本传输协议(HyperText Transfer Protocol,HTTP)服务器插件或类似手段,将上述SSL版本和Cipher suites获取下来。
客户端进行HTTPS请求的过程中,必然会发送用户代理(User-agent),因此,此User-agent基于服务器插件之类的技术,可以轻松被记录下来。
步骤S203:判断该用户代理是否是常见的用户代理。若是,执行步骤S204;若否,执行步骤S207。
记录下来当前用户访问网络所使用的用户代理信息之后,可以将记录下来的用户代理信息与用户代理特征库中的信息进行查询比较,看是否有该用户代理的相关信息记录,当有时,认为是常见的用户代理,否则认为是不常见的用户代理。
步骤S204:将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行比对。
对于常见的User-agent,对用户代理信息中包含的各个用户代理特征信息项,一一进行比对,验证其一致性。若比对结果为各用户代理特征信息项均相符,执行步骤S205;若比对结果为各用户代理特征信息项中有任一项不相符,执行步骤S206。
可选的,也可以不必对全部的信息,而指定必选的比对信息,如果必选的比对信息各项均相符,则执行步骤S205;若必选的比对信息中有任一项不相符,执行步骤S206。
比如,当用户代理信息中包括SSL版本、Cipher suites信息时,将User-agent中包括的SSL版本、Cipher suites与用户代理特征库中记录的该用户代理的SSL版本、Ciphersuites进行比对。
可选的,当用户代理信息中还包括曲线、识别算法等信息时,将User-agent中包括的曲线、识别算法与用户代理特征库中记录的该用户代理的曲线、识别算法也进行比对。
可选的,浏览器等客户端使用的User-agent字符串中还可以包括浏览器标识、操作系统标识、加密等级标识、浏览器语言、渲染引擎、版本信息,但各个浏览器使用的User-agent字符串的格式内容也可能会有所不同。其中,对于浏览器标识,出于兼容等方面的考虑,很多浏览器的标识相同,其并不能说明浏览器的真实版本,真实版本信息在User-agent字串尾部。对于操作系统标识。标识了用户使用操作系统。加密等级标识可以用不同的字符表示,例如:N表示无安全加密,I表示弱安全加密,U表示强安全加密,等等。对于浏览器语言,可以在浏览器的设置项中制定不同的语言。对于渲染引擎,其格式为:渲染引擎/版本信息。对于版本信息,显示浏览器的真实版本信息,格式为:浏览器/版本信息。
可选的,当用户代理信息中还包括曲线、识别算法等信息时,将将User-agent中包括的曲线、识别算法与用户代理特征库中记录的该用户代理的曲线、识别算法也进行比对。
针对该User-agent,特别是针对User-agent表示的操作系统和浏览器的组合,可以通过网上的资料或者自行实验,获取其(默认的)支持的SSL版本和Cipher suites。
步骤S205:推定不是伪造的用户代理。
对于常见的用户代理,根据比对结果,即能确定用户代理信息的真实性,因此,在比对信息均相符合,确定不是伪造的用户代理。
步骤S206:确定为伪造的用户代理。
在比对信息中包含不相符合的信息时,推定是伪造的用户代理。
即如果根据比较,用户传递的User-agent和其传递的Cipher suites不符,可以推定为伪造User-agent。
步骤S207:记录用户代理信息到暂存特征库中。
如果是不常见或从未见过的User-agent,将其记录到暂存特征库中,即将该用户代理的特征入库,记录用户代理中包含的信息。当该用户代理的记录次数只有一次时,可以认为是暂时记录,当记录次数增多后,可以通过机器学习或者人工修订列表,判断该User-agent的默认的正确的SSL版本和cipher suites;学习修订后的用户代理信息存入用户代理特征库中,对以后出现的类似User-agent,特别是其表示的操作系统和浏览器的组合,即可参照常见的User-agent进行处理。
上述方法中,可以变通的,也可以将Cipher suites信息传递给上层的脚本程序,如超文本预处理器(Hypertext Preprocessor,PHP),使用上层脚本语言结合User-agent等其他信息进行识别。
基于同一发明构思,本发明实施例还提供一种浏览器用户代理识别系统,其结构如图3所示,该系统包括识别服务器31和客户端32。
识别服务器31,用于获取用户在网络访问请求过程中发送的用户代理信息;查询用户代理特征库中是否记录有该用户代理的用户代理信息;若有,将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;若无,将该用户代理信息记录到暂存特征库中。
客户端32,用于在网络访问请求过程中向识别服务器发送用户代理信息。
识别服务器31中设置浏览器用户代理识别装置来实现上述功能。
上述浏览器用户代理识别装置的结构如图4所示,包括:获取模块401、查询模块402、识别模块403和库生成模块404。
获取模块401,用于获取用户在网络访问请求过程中发送的用户代理信息。
查询模块402,用于查询用户代理特征库中是否记录有该用户代理的用户代理信息;若有,通知识别模块403;若无,通知库生成模块404。
识别模块403,用于将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;
库生成模块404,用于将获取的用户代理信息记录到暂存特征库中。
优选的,上述获取模块401,具体用于接收用户发送的安全套接层SSL的客户端握手消息;从客户端握手消息中获取携带的用户代理信息。
优选的,上述识别模块403,具体用于将获取的用户代理信息中包含的各用户代理特征信息逐一进行比对,若所有用户代理特征信息均对应相同时,确认相匹配,若有任何一个用户代理特征信息不相同时,确认不相匹配;其中,用户代理信息,包括下列用户代理特征信息中的至少一个:客户端支持的SSL版本、加密套件、曲线和签名算法。
优选的,上述库生成模块,还用于用户使用用户代理访问网络时,记录用户使用的用户代理信息到暂存特征库中;通过机器学习或人工修订列表的方式,对记录的同一用户代理的多个用户代理信息进行筛选识别,提取用户代理信息中的用户代理特征信息,形成该用户代理的正确的用户代理信息并保存。
本发明的上述方法、系统和装置,可用于网络投票等应用场景下,识别浏览器User-agent是否为伪造的用户代理,避免伪装投票行为,上述方法和系统可以显著提高伪装User-agent的难度。
上述实现方式具有如下优势:
难以察觉。一般用户意识不到此数据存在。同时,目前已经广泛使用SSL服务,用户使用SSL请求也是很正常的事情,在用户侧没有任何额外的动作。
难以伪造。伪造SSL的cipher suites理论上是可行的,至少比前述伪造用于识别用户User-agent的javascript脚本困难得多。
效率高。不需要客户额外做什么事情,即使用户无法或拒绝执行javascript,也可以使用。此方案可以节约客户端请求,减少开销。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种浏览器用户代理识别方法,其特征在于,包括:
获取用户在网络访问请求过程中发送的用户代理信息;
查询用户代理特征库中是否记录有该用户代理的用户代理信息;
若有,将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;
若无,则将获取的用户代理信息记录到暂存特征库中;
所述用户代理特征库的形成过程,包括:
用户使用用户代理访问网络时,记录用户使用的用户代理信息到暂存特征库中;
通过机器学习或人工修订列表的方式,对记录的同一用户代理的多个用户代理信息进行筛选识别,提取用户代理信息中的用户代理特征信息,形成该用户代理的正确的用户代理信息并保存;
所述获取用户在网络访问请求过程中发送的用户代理信息,具体包括:
接收用户发送的安全套接层SSL的客户端握手消息;
从所述客户端握手消息中获取携带的用户代理信息;
所述用户代理信息,包括下列用户代理特征信息中的至少一个:客户端支持的SSL版本、加密套件、曲线和签名算法。
2.如权利要求1所述的方法,其特征在于,所述将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配,判断是否相匹配的过程,具体包括:
将获取的用户代理信息中包含的各用户代理特征信息逐一进行比对,若所有用户代理特征信息均对应相同时,判定为匹配,若有任何一个用户代理特征信息不相同时,判定为不相匹配。
3.一种浏览器用户代理识别装置,其特征在于,包括:
获取模块,用于获取用户在网络访问请求过程中发送的用户代理信息;
查询模块,用于查询用户代理特征库中是否记录有该用户代理的用户代理信息;若有,通知识别模块;若无,通知库生成模块;
所述识别模块,用于将获取的用户代理信息与用户代理特征库中记录的用户代理信息进行匹配;当相匹配时,推定不是伪造的用户代理;当不匹配时,确定为伪造的用户代理;
所述库生成模块,用于将获取的用户代理信息记录到暂存特征库中;
所述库生成模块,还用于:
用户使用用户代理访问网络时,记录用户使用的用户代理信息到暂存特征库中;
通过机器学习或人工修订列表的方式,对记录的同一用户代理的多个用户代理信息进行筛选识别,提取用户代理信息中的用户代理特征信息,形成该用户代理的正确的用户代理信息并保存;
所述获取模块,具体用于:
接收用户发送的安全套接层SSL的客户端握手消息;
从所述客户端握手消息中获取携带的用户代理信息;
所述用户代理信息,包括下列用户代理特征信息中的至少一个:客户端支持的SSL版本、加密套件、曲线和签名算法。
4.如权利要求3所述的装置,其特征在于,所述识别模块,具体用于:
将获取的用户代理信息中包含的各用户代理特征信息逐一进行比对,若所有用户代理特征信息均对应相同时,判定为相匹配,若有任何一个用户代理特征信息不相同时,判定为不相匹配。
5.一种浏览器用户代理识别系统,其特征在于,包括:客户端和识别服务器;
所述客户端,用于在网络访问请求过程中向识别服务器发送用户代理信息;
所述识别服务器中包括如权利要求 3-4任一所述的浏览器用户代理识别装置。
CN201710245007.3A 2017-04-14 2017-04-14 一种浏览器用户代理识别方法、系统及装置 Active CN108737328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710245007.3A CN108737328B (zh) 2017-04-14 2017-04-14 一种浏览器用户代理识别方法、系统及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710245007.3A CN108737328B (zh) 2017-04-14 2017-04-14 一种浏览器用户代理识别方法、系统及装置

Publications (2)

Publication Number Publication Date
CN108737328A CN108737328A (zh) 2018-11-02
CN108737328B true CN108737328B (zh) 2021-08-06

Family

ID=63925085

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710245007.3A Active CN108737328B (zh) 2017-04-14 2017-04-14 一种浏览器用户代理识别方法、系统及装置

Country Status (1)

Country Link
CN (1) CN108737328B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111193691B (zh) * 2018-11-15 2022-05-24 中国电信股份有限公司 授权方法、系统和相关设备
CN109756479B (zh) * 2018-11-29 2021-03-23 武汉极意网络科技有限公司 浏览器中伪造请求检测方法及装置
CN113014454B (zh) * 2021-03-05 2022-06-14 中电积至(海南)信息技术有限公司 一种基于ssl、tls协议的用户代理标识及数量检测方法
CN117544322B (zh) * 2024-01-10 2024-03-22 北京雪诺科技有限公司 浏览器的辨识方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104283918A (zh) * 2013-07-05 2015-01-14 中国移动通信集团浙江有限公司 一种无线局域网终端类型获取方法及系统
WO2016082094A1 (en) * 2014-11-25 2016-06-02 Yahoo! Inc. Method and system for providing a user agent string database

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1155903C (zh) * 2001-07-02 2004-06-30 倚天资讯股份有限公司 利用浏览器询问程序状态或信息的方法
US8166014B2 (en) * 2003-05-02 2012-04-24 Yahoo! Inc. Detection of improper search queries in a wide area network search engine
US20110314077A1 (en) * 2010-06-16 2011-12-22 Serhat Pala Identification of compatible products for use with mobile devices
US8862777B2 (en) * 2011-04-01 2014-10-14 Verisign, Inc Systems, apparatus, and methods for mobile device detection
CN102722585B (zh) * 2012-06-08 2015-01-14 亿赞普(北京)科技有限公司 浏览器类型识别方法、装置及系统
CN105704177A (zh) * 2014-11-26 2016-06-22 阿里巴巴集团控股有限公司 一种ua识别方法、装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104283918A (zh) * 2013-07-05 2015-01-14 中国移动通信集团浙江有限公司 一种无线局域网终端类型获取方法及系统
WO2016082094A1 (en) * 2014-11-25 2016-06-02 Yahoo! Inc. Method and system for providing a user agent string database

Also Published As

Publication number Publication date
CN108737328A (zh) 2018-11-02

Similar Documents

Publication Publication Date Title
CN108737328B (zh) 一种浏览器用户代理识别方法、系统及装置
CN113574838A (zh) 通过客户端指纹过滤互联网流量的系统和方法
WO2017032263A1 (zh) 身份认证方法及装置
WO2022052630A1 (zh) 一种多媒体信息处理方法、装置、电子设备及存储介质
CN110086608A (zh) 用户认证方法、装置、计算机设备及计算机可读存储介质
US10324826B2 (en) Developer channel compliance
US10958657B2 (en) Utilizing transport layer security (TLS) fingerprints to determine agents and operating systems
CN101635714B (zh) 提高网络应用安全性的方法和系统
US20160021111A1 (en) Method, Terminal Device, and Network Device for Improving Information Security
CN110855676A (zh) 网络攻击的处理方法、装置及存储介质
CN103139200A (zh) 一种web service单点登录的方法
CN110691085B (zh) 登录方法、装置、密码管理系统及计算机可读介质
CN111193817B (zh) 自动注册设备序列号的方法、装置、计算机设备及存储介质
CN103401836A (zh) 一种用于判断网页是否被isp劫持的方法与设备
CN103310139A (zh) 一种输入验证方法和输入验证装置
CN103905194A (zh) 身份溯源认证方法及系统
CN110647641A (zh) 身份验证方法、装置、计算机设备和存储介质
CN108229180B (zh) 截图数据处理方法、装置和电子设备
CN111585995A (zh) 安全风控信息传输、处理方法、装置、计算机设备及存储介质
WO2017215650A1 (zh) 微端的自动登录方法、装置、程序及介质
CN108600259B (zh) 设备的认证和绑定方法及计算机存储介质、服务器
CN114218561A (zh) 一种弱口令检测方法、终端设备及存储介质
CN109088872A (zh) 带使用期限的云平台的使用方法、装置、电子设备及介质
CN112073418A (zh) 加密流量的检测方法、装置及计算机可读存储介质
CN103559430A (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
TA01 Transfer of patent application right

Effective date of registration: 20210507

Address after: Room 517, 5 / F, scientific research building, Sina headquarters, plot n-1 and n-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing 100193

Applicant after: XINGCHAO SHANYAO MOBILE NETWORK TECHNOLOGY (CHINA) Co.,Ltd.

Address before: 100193 7th floor, scientific research building, Sina headquarters, plot n-1, n-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing, 100193

Applicant before: SINA.COM TECHNOLOGY (CHINA) Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: Room 517, 5 / F, building 8, West District, yard 10, Xibeiwang East Road, Haidian District, Beijing 100085

Patentee after: Sina Finance mobile network technology (Beijing) Co.,Ltd.

Address before: Room 517, 5 / F, scientific research building, Sina headquarters, plot n-1 and n-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing 100193

Patentee before: XINGCHAO SHANYAO MOBILE NETWORK TECHNOLOGY (CHINA) CO.,LTD.

CP03 Change of name, title or address