CN115695050B - 点击劫持攻击的防范方法、装置、电子设备及存储介质 - Google Patents
点击劫持攻击的防范方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115695050B CN115695050B CN202211727849.XA CN202211727849A CN115695050B CN 115695050 B CN115695050 B CN 115695050B CN 202211727849 A CN202211727849 A CN 202211727849A CN 115695050 B CN115695050 B CN 115695050B
- Authority
- CN
- China
- Prior art keywords
- access
- user
- trusted
- visiting
- csp
- 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
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种点击劫持攻击的防范方法、装置、电子设备及存储介质,涉及计算机技术领域,其中所述点击劫持攻击的防范方法包括:从日志中获取至少一个访问用户的访问请求;基于各访问请求,确定可信访问列表;可信访问列表中包括各访问用户中的可信访问用户及非可信访问用户;基于可信访问列表,确定内容安全策略CSP。上述方法中,由于可信访问列表中包括各访问用户中的可信访问用户及非可信访问用户;因此针对可信访问用户及非可信访问用户可以确定出不同的内容安全策略,实现针对不同的访问用户进行不同内容安全策略的点击劫持攻击防范;由于各访问用户都对应不同的内容安全策略,因此用户无法查看其他访问用户的信息,保证用户的数据安全。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种点击劫持攻击的防范方法、装置、电子设备及存储介质。
背景技术
点击劫持(Click jacking)攻击技术又称为界面伪装攻击(UI redress attack ),是一种视觉上的欺骗手段。攻击者使用一个或多个透明的iframe覆盖在一个正常的网页上,然后诱使用户在该网页上进行操作。当用户在不知情的情况下点击透明的iframe页面时,用户的操作已经被劫持到攻击者事先设计好的恶意按钮或链接上,攻击者通过Clickjacking攻击,使用户的利益受到危害。
相关技术中解决click jacking攻击的方案,主要为基于浏览器的安全策略以及服务端下发的规则来提升安全性,具体使用的技术方案为以下两种方式:1)x-frame-options头部设置对应的参数,从而拦截iframe,不允许iframe加载;2)使用内容安全策略(Content Security Policy,CSP)进行安全防护。
但是,利用x-frame-options头部只能全部拒绝iframe加载,或者只能添加单个地址白名单以解决click jacking攻击问题;利用CSP时,任意用户通过技术手段就可以直接看到白名单地址,会给用户带来数据安全风险。因此,如何在保证用户数据安全的情况下,针对多个来源地址进行click jacking攻击防范是亟待解决的问题。
发明内容
针对现有技术存在的问题,本发明实施例提供一种点击劫持攻击的防范方法、装置、电子设备及存储介质。
本发明提供一种点击劫持攻击的防范方法,包括:
从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;
基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;
基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
可选地,所述基于各所述访问请求,确定可信访问列表,包括:
针对每一个所述访问用户,读取所述访问请求中的目标字段;所述目标字段用于表征所述访问用户的地址信息;
将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表;所述预设地址信息数据库中存储有至少一个所述可信访问用户的地址信息。
可选地,所述将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表,包括:
在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配成功的情况下,将所述访问用户确定为所述可信访问用户;
在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配失败的情况下,将所述访问用户确定为所述非可信访问用户。
可选地,所述基于所述可信访问列表,确定内容安全策略CSP,包括:
针对每一个所述访问用户,在所述访问用户为所述可信访问用户的情况下,针对所述访问用户确定第一CSP;
其中,所述第一CSP包括为所述访问用户添加的第一响应头;所述第一响应头用于表示允许在所述目标网页显示所述访问用户的网页。
可选地,所述基于所述可信访问列表,确定内容安全策略,包括:
针对每一个所述访问用户,在所述访问用户为所述非可信访问用户的情况下,针对所述访问用户确定第二CSP;所述第二CSP包括为所述访问用户添加的第二响应头;所述第二响应头用于表示在所述访问用户与所述目标网页同域名的情况下,允许在所述目标网页显示所述访问用户的网页。
可选地,所述访问用户利用超文本传输协议或超文本传输安全协议向所述目标网页发送所述访问请求。
本发明还提供一种点击劫持攻击的防范装置,包括:
获取模块,用于从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;
第一确定模块,用于基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;
第二确定模块,用于基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述点击劫持攻击的防范方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述点击劫持攻击的防范方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述点击劫持攻击的防范方法。
本发明提供的点击劫持攻击的防范方法、装置、电子设备及存储介质,通过从日志中获取至少一个访问用户的访问请求,然后基于各访问请求,确定可信访问列表;由于可信访问列表中包括各访问用户中的可信访问用户及非可信访问用户;因此,针对可信访问用户及非可信访问用户,可以确定出不同的内容安全策略,从而实现了针对不同的访问用户(即多个来源的地址)进行不同内容安全策略的click jacking攻击防范;同时,由于每一个访问用户都对应不同的内容安全策略,因此,用户无法通过任一内容安全策略,查看其他访问用户的信息,从而保证了用户的数据安全。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的点击劫持攻击的防范方法的流程示意图之一;
图2是本发明提供的点击劫持攻击的防范方法的流程示意图之二;
图3是本发明提供的点击劫持攻击的防范装置的结构示意图;
图4是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于更加清晰地理解本申请各实施例,首先对一些相关的背景知识进行如下介绍。
由于HTML框架能够被通过iframe框架的方式在其他网页中显示网页,因此形成了一个安全风险点。攻击者可以用隐藏的透明层覆盖原始网页,并使用期自己的Javascript和UI元素。恶意攻击者通过多种诱骗方式来让用户来访问恶意页面,该页面在肉眼可见就像用户知道并信任的站点,但实际其有很多隐藏的UI。用户在不不知情的情况下点击了页面元素并期待得到他想要的内容,但其实攻击者的恶意脚本已经运行。
受害者访问攻击者的网站是为了与可见的用户界面进行通信,但无意中与隐藏的UI进行了交互。恶意攻击者会使用隐藏页面通过在网页上策略性地放置隐藏元素来诱骗人们做他们不想做的事情。
相关技术中解决click jacking攻击的方案,主要为基于浏览器安全策略以及服务端下发的规则来提升安全性,具体使用的技术方案为x-frame-options头部或CSP策略。具体如下:
a)利用x-frame-options头部防范click jacking攻击
参数可以为deny,SAMEORIGIN或allow-from。
(1)设置为deny,则为全部拦截,不允许iframe加载,无法满足功能上的业务需求。
(2)设置为SAMEORIGIN,只允许针对本域名的iframe嵌套,不允许其他域名。无法满足功能上的业务需求。
(3)设置为allow-from,后面可以给单个统一资源定位***(Uniform ResourceLocator,URL)加白,允许该URL以iframe方式嵌套加载页面。但该条目只能添加一条,且诸多浏览器不支持该选项值,无法满足功能上需要开启多个域名的业务需求。
b)使用CSP防范click jacking攻击
可以使用Content-Security-Policy:frame-ancestors $uri1 $uri2
即,如果您希望允许特定$uri1→$uri2将您的网站嵌入iframe并禁止所有其他uri,可以设置本选项。
但该方案的问题是:
(1)任意用户只要打开该域名,通过技术手段就可以直接看到哪些域名或URL在白名单中。该白名单为使用该***的用户名单,在SaaS场景下为其一部分客户列表,由此引发了一个新的信息泄露风险。
(2)泄露的域名中,很多为企业内部办公域名。泄露会对企业的客户带来一定程度的安全风险。
针对上述存在的技术问题,为了在保证用户数据安全的情况下,针对多个来源地址进行click jacking攻击防范,本发明实施例提供一种点击劫持攻击的防范方法、装置、电子设备及存储介质。
下面结合图1至图2对本发明提供的点击劫持攻击的防范方法进行具体描述。图1是本发明提供的点击劫持攻击的防范方法的流程示意图之一,参见图1所示,包括步骤101-步骤103,其中:
步骤101、从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页。
首先需要说明的是,本发明的执行主体可以是能够防范点击劫持攻击的任何电子设备,例如可以为智能手机、智能手表、台式电脑、手提电脑等任何一种。
在本实施例中,首先需要从***访问日志中获取至少一个访问用户的访问请求。访问用户是指为了访问指定目标网页的访问用户,访问用户的表现形式可以是域名、URL地址等。
实际应用中,从***访问日志中获取至少一个访问用户的访问请求的方式有多种,例如实时从***访问日志中主动拉取访问用户的访问请求;也可以设置时间阈值,经过预设时长主动拉取访问用户的访问请求;也可以通过订阅消息等方式被动获取访问用户的访问请求。本发明对访问用户的访问请求的获取方式不做具体限定。
需要说明的是,访问请求用于在目标网页显示访问用户的网页;实际应用中,访问请求可以是iframe请求。执行主体可以解析访问请求中的header中的sec-fetch-dest字段,确定该字段的值是否为iframe或frame;若是,则确定该访问请求用于在目标网页显示访问用户的网页。
步骤102、基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户。
在本实施例中,在获取到各访问用户访问目标网页的访问请求之后,需要基于各访问请求,确定各访问用户是否为可信访问用户。实际应用中,可以将可信访问用户设置白名单。
可选地,针对可信访问用户,该访问用户可以利用超文本传输协议(Hyper TextTransfer Protocol,http)或超文本传输安全协议(Hypertext Transfer ProtocolSecure,https)向目标网页发送访问请求。
具体地,针对白名单域名(即上文提及的可信访问用户),允许其使用http或https方式进行请求。同时支持多级子域名,只要主域名符合白名单,即针对本请求添加白名单。
步骤103、基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
在本实施例中,在确定出可信访问列表后,需要针对可行访问列表中的可信访问用户和非可信访问用户,确定不同的CSP策略。
也就是说,针对每一个访问用户,都对应有不同的CSP策略,从而保证用户的数据安全。
可以理解的是,CSP策略指的是内容安全策略,为了缓解很大一部分潜在的跨站脚本问题,浏览器的扩展程序***引入了内容安全策略(CSP)的一般概念。这将引入一些相当严格的策略,会使扩展程序在默认情况下更加安全,开发者可以创建并强制应用一些规则,管理网站允许加载的内容。
本发明提供的点击劫持攻击的防范方法,通过从日志中获取至少一个访问用户的访问请求,然后基于各访问请求,确定可信访问列表;由于可信访问列表中包括各访问用户中的可信访问用户及非可信访问用户;因此,针对可信访问用户及非可信访问用户,可以确定出不同的内容安全策略,从而实现了针对不同的访问用户(即多个来源的地址)进行不同内容安全策略的click jacking攻击防范;同时,由于每一个访问用户都对应不同的内容安全策略,因此,用户无法通过任一内容安全策略,查看其他访问用户的信息,从而保证了用户的数据安全。
可选地,在本发明实施例一种可能的实现方式中,所述基于各所述访问请求,确定可信访问列表,具体可以通过以下步骤1)至步骤2)实现:
步骤1)、针对每一个所述访问用户,读取所述访问请求中的目标字段;所述目标字段用于表征所述访问用户的地址信息;
步骤2)、将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表;所述预设地址信息数据库中存储有至少一个所述可信访问用户的地址信息。
在本实施例中,在从日志中获取到各访问用户的访问请求之后,针对每一个访问用户,需要读取访问请求中用于表征访问用户地址信息的目标字段。
实际应用中,目标字段可以承载于访问请求中的referer字段,目标字段例如可以是访问用户的URL。
可以理解的是,在浏览器/服务器(B/S)架构的业务***中,标准http协议会发送referer字段,以便浏览器/服务器获取本次访问请求的来源信息,告诉服务器该访问请求是从哪个页面链接过来的。
在读取到访问请求中的目标字段之后,需要将目标字段中的地址信息与预设地址信息数据库进行匹配,并基于匹配结果确定可信访问列表。
其中,预设地址信息数据库中存储有至少一个可信访问用户的地址信息。
可选地,所述将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表,具体通过以下步骤2.1)至步骤2.2)实现:
步骤2.1)、在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配成功的情况下,将所述访问用户确定为所述可信访问用户;
步骤2.1)、在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配失败的情况下,将所述访问用户确定为所述非可信访问用户。
在上述实施方式中,针对每一个访问用户,通过读取访问请求中的目标字段,并将目标字段中访问用户的地址信息与预设地址信息数据库进行匹配,从而可以确定出访问用户是可信访问用户或非可信访问用户,以便于后续针对不同的访问用户确定不同的CSP策略,进而在保证用户数据安全的同时,实现针对多个来源的地址进行不同内容安全策略的click jacking攻击防范。
可选地,所述基于所述可信访问列表,确定内容安全策略CSP,具体可以通过方式实现:
首先需要说明的是,执行主体可以基于中间件Nginx灵活的脚本语法为访问用户确定不同的CSP。
方式1、针对每一个所述访问用户,在所述访问用户为所述可信访问用户的情况下,针对所述访问用户确定第一CSP;
其中,所述第一CSP包括为所述访问用户添加的第一响应头;所述第一响应头用于表示允许在所述目标网页显示所述访问用户的网页。
实际应用中,在基于referer字段中的URL与预设地址信息数据库进行匹配,确定出访问用户为可信访问用户的情况下,需要针对该访问用户确定第一CSP。
具体地,需要借助Nginx的map函数进行变量赋值,从而实现对可信访问用户的域名颁发第一CSP,即第一CSP用于将本次访问请求的访问用户加白。
例如:可信访问用户的访问请求可以表示为:https://*aaaaa.com/;
则需要借助Nginx的map函数添加第一响应头,生成第一CSP,其中,第一CSP可以标识为:
Content-Security-Policy ''frame-ancestors'' 'self';
https://*aaaaa.com/;''
在上述第一CSP中,第一响应头用于表示允许在目标网页显示访问用户的网页,第一响应头表示为:
Content-Security-Policy ''frame-ancestors'' 'self';
需要说明的是,以下是为可信用户的访问请求(http|https)://.*aaaaa\.com/以及(http|https)://.*bbbbb\.com/添加第一响应头的具体实现方式:
map $http_referer $csp_header {
default "frame-ancestors 'self';";
"~(http|https)://.*aaaaa\.com/" "frame-ancestors 'self' $http_referer;";
"~(http|https)://.*bbbbb\.com/" "frame-ancestors 'self'$http_referer;";
"~(http|https)://10\.10\.10\.10/" "frame-ancestors 'self' $http_referer;";
}
add_header Content-Security-Policy "$csp_header";
在上述实施方式中,通过为可信访问用户添加的第一响应头,可以使非白名单地址(非可信访问用户)使用iframe方式请求目标网页时,无法正常加载。
同时,借助Nginx的map函数,结合正则表达式,实现可信访问用户(白名单)单一匹配,并将结果非公开性的返回;每个可信访问用户只能看到其自己的域名,无法获取其他访问源的信息;有效保证了访问源的信息安全性。
方式2、针对每一个所述访问用户,在所述访问用户为所述非可信访问用户的情况下,针对所述访问用户确定第二CSP;所述第二CSP包括为所述访问用户添加的第二响应头;所述第二响应头用于表示在所述访问用户与所述目标网页同域名的情况下,允许在所述目标网页显示所述访问用户的网页。
首先需要说明的是,无论针对可信访问用户或非可信访问用户,需要将所有访问请求均加载x-frame-options请求头部,值设置为SAMEORIGIN,即add_header X-Frame-Options SAMEORIGIN;默认情况下可以很好地保证安全性。
在访问用户是非可信访问用户的情况下,需要返回Content-Security-Policy "frame-ancestors 'self';"即只允许本域名使用iframe方式加载。
在上述实施方式中,在访问用户是非可信访问用户的情况下,只允许本域名使用iframe方式加载,从而保证了访问源的信息安全性。
通过上述方式1和方式2,实现了针对不同的访问用户(即多个来源的地址)进行不同内容安全策略的click jacking攻击防范,同时保证了访问源的信息安全性。
图2是本发明提供的点击劫持攻击的防范方法的流程示意图之二,参见图2所示,包括步骤201-步骤207,其中:
步骤201、从日志中获取至少一个访问用户的访问请求;其中,访问用户为访问目标网页的用户,访问请求用于在目标网页显示访问用户的网页。
步骤202、针对每一个访问用户,读取访问请求中的目标字段;其中,目标字段用于表征访问用户的地址信息。
步骤203、将地址信息与预设地址信息数据库中存储的各可信访问用户的地址信息进行匹配,判断是否匹配成功。若是,执行步骤204至步骤205;若否,执行步骤206至步骤207。
步骤204、将访问用户确定为可信访问用户。
步骤205、针对访问用户确定第一CSP;其中,第一CSP包括为访问用户添加的第一响应头;第一响应头用于表示允许在目标网页显示访问用户的网页。
步骤206、将访问用户确定为非可信访问用户。
步骤207、针对访问用户确定第二CSP;其中,第二CSP包括为访问用户添加的第二响应头;第二响应头用于表示在访问用户与目标网页同域名的情况下,允许在目标网页显示访问用户的网页。
下面对本发明提供的点击劫持攻击的防范装置进行描述,下文描述的点击劫持攻击的防范装置与上文描述的点击劫持攻击的防范方法可相互对应参照。图3是本发明提供的点击劫持攻击的防范装置的结构示意图,如图3所示,该点击劫持攻击的防范装置300,包括:获取模块301、第一确定模块302及第二确定模块302,其中:
获取模块301,用于从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;
第一确定模块302,用于基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;
第二确定模块303,用于基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
本发明提供的点击劫持攻击的防范装置,通过从日志中获取至少一个访问用户的访问请求,然后基于各访问请求,确定可信访问列表;由于可信访问列表中包括各访问用户中的可信访问用户及非可信访问用户;因此,针对可信访问用户及非可信访问用户,可以确定出不同的内容安全策略,从而实现了针对不同的访问用户(即多个来源的地址)进行不同内容安全策略的click jacking攻击防范;同时,由于每一个访问用户都对应不同的内容安全策略,因此,用户无法通过任一内容安全策略,查看其他访问用户的信息,从而保证了用户的数据安全。
可选地,所述第一确定模块302,进一步用于:
针对每一个所述访问用户,读取所述访问请求中的目标字段;所述目标字段用于表征所述访问用户的地址信息;
将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表;所述预设地址信息数据库中存储有至少一个所述可信访问用户的地址信息。
可选地,所述第一确定模块302,进一步用于:
在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配成功的情况下,将所述访问用户确定为所述可信访问用户;
在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配失败的情况下,将所述访问用户确定为所述非可信访问用户。
可选地,所述第二确定模块303,进一步用于:
针对每一个所述访问用户,在所述访问用户为所述可信访问用户的情况下,针对所述访问用户确定第一CSP;
其中,所述第一CSP包括为所述访问用户添加的第一响应头;所述第一响应头用于表示允许在所述目标网页显示所述访问用户的网页。
可选地,所述第二确定模块303,进一步用于:
针对每一个所述访问用户,在所述访问用户为所述非可信访问用户的情况下,针对所述访问用户确定第二CSP;所述第二CSP包括为所述访问用户添加的第二响应头;所述第二响应头用于表示在所述访问用户与所述目标网页同域名的情况下,允许在所述目标网页显示所述访问用户的网页。
可选地,所述访问用户利用超文本传输协议或超文本传输安全协议向所述目标网页发送所述访问请求。
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行点击劫持攻击的防范方法,该方法包括:从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的点击劫持攻击的防范方法,该方法包括:从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的点击劫持攻击的防范方法,该方法包括:从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (7)
1.一种点击劫持攻击的防范方法,其特征在于,包括:
从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;
基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;
基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击;
其中,所述基于所述可信访问列表,确定内容安全策略CSP,包括:
针对每一个所述访问用户,在所述访问用户为所述可信访问用户的情况下,针对所述访问用户确定第一CSP;其中,所述第一CSP包括为所述访问用户添加的第一响应头;所述第一响应头用于表示允许在所述目标网页显示所述访问用户的网页;
针对每一个所述访问用户,在所述访问用户为所述非可信访问用户的情况下,针对所述访问用户确定第二CSP;所述第二CSP包括为所述访问用户添加的第二响应头;所述第二响应头用于表示在所述访问用户与所述目标网页同域名的情况下,允许在所述目标网页显示所述访问用户的网页。
2.根据权利要求1所述的点击劫持攻击的防范方法,其特征在于,所述基于各所述访问请求,确定可信访问列表,包括:
针对每一个所述访问用户,读取所述访问请求中的目标字段;所述目标字段用于表征所述访问用户的地址信息;
将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表;所述预设地址信息数据库中存储有至少一个所述可信访问用户的地址信息。
3.根据权利要求2所述的点击劫持攻击的防范方法,其特征在于,所述将所述地址信息与预设地址信息数据库进行匹配,基于匹配结果确定所述可信访问列表,包括:
在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配成功的情况下,将所述访问用户确定为所述可信访问用户;
在所述地址信息与预设地址信息数据库中存储的所述可信访问用户的地址信息匹配失败的情况下,将所述访问用户确定为所述非可信访问用户。
4.根据权利要求1所述的点击劫持攻击的防范方法,其特征在于,所述访问用户利用超文本传输协议或超文本传输安全协议向所述目标网页发送所述访问请求。
5.一种点击劫持攻击的防范装置,其特征在于,包括:
获取模块,用于从日志中获取至少一个访问用户的访问请求;所述访问用户为访问目标网页的用户;所述访问请求用于在所述目标网页显示所述访问用户的网页;
第一确定模块,用于基于各所述访问请求,确定可信访问列表;所述可信访问列表中包括各所述访问用户中的可信访问用户及非可信访问用户;
第二确定模块,用于基于所述可信访问列表,确定内容安全策略CSP;所述CSP用于防范针对所述目标网页的点击劫持攻击;
其中,所述第二确定模块,进一步用于:
针对每一个所述访问用户,在所述访问用户为所述可信访问用户的情况下,针对所述访问用户确定第一CSP;其中,所述第一CSP包括为所述访问用户添加的第一响应头;所述第一响应头用于表示允许在所述目标网页显示所述访问用户的网页;
针对每一个所述访问用户,在所述访问用户为所述非可信访问用户的情况下,针对所述访问用户确定第二CSP;所述第二CSP包括为所述访问用户添加的第二响应头;所述第二响应头用于表示在所述访问用户与所述目标网页同域名的情况下,允许在所述目标网页显示所述访问用户的网页。
6.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述点击劫持攻击的防范方法。
7.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述点击劫持攻击的防范方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211727849.XA CN115695050B (zh) | 2022-12-31 | 2022-12-31 | 点击劫持攻击的防范方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211727849.XA CN115695050B (zh) | 2022-12-31 | 2022-12-31 | 点击劫持攻击的防范方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115695050A CN115695050A (zh) | 2023-02-03 |
CN115695050B true CN115695050B (zh) | 2023-04-07 |
Family
ID=85057516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211727849.XA Active CN115695050B (zh) | 2022-12-31 | 2022-12-31 | 点击劫持攻击的防范方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115695050B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067385A (zh) * | 2012-12-27 | 2013-04-24 | 深圳市深信服电子科技有限公司 | 防御会话劫持攻击的方法和防火墙 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10432662B2 (en) * | 2015-04-30 | 2019-10-01 | Oath, Inc. | Method and system for blocking malicious third party site tagging |
CN110278207B (zh) * | 2019-06-21 | 2023-04-07 | 深圳前海微众银行股份有限公司 | 一种点击劫持漏洞检测方法、装置及计算机设备 |
CN111092910B (zh) * | 2019-12-30 | 2022-11-22 | 深信服科技股份有限公司 | 数据库安全访问方法、装置、设备、***及可读存储介质 |
CN113395234B (zh) * | 2020-03-12 | 2024-05-28 | 腾讯科技(深圳)有限公司 | 推广信息的流量劫持检测方法及装置 |
CN113158187B (zh) * | 2021-03-26 | 2022-12-23 | 杭州数梦工场科技有限公司 | 检测点击劫持的方法及装置、电子设备 |
-
2022
- 2022-12-31 CN CN202211727849.XA patent/CN115695050B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067385A (zh) * | 2012-12-27 | 2013-04-24 | 深圳市深信服电子科技有限公司 | 防御会话劫持攻击的方法和防火墙 |
Also Published As
Publication number | Publication date |
---|---|
CN115695050A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10164993B2 (en) | Distributed split browser content inspection and analysis | |
US9900346B2 (en) | Identification of and countermeasures against forged websites | |
US10826872B2 (en) | Security policy for browser extensions | |
US20190327265A1 (en) | Quarantining malicious injected code | |
US8353036B2 (en) | Method and system for protecting cross-domain interaction of a web application on an unmodified browser | |
US11824878B2 (en) | Malware detection at endpoint devices | |
US8826411B2 (en) | Client-side extensions for use in connection with HTTP proxy policy enforcement | |
US10574697B1 (en) | Providing a honeypot environment in response to incorrect credentials | |
Lekies et al. | The Unexpected Dangers of Dynamic {JavaScript} | |
US11770385B2 (en) | Systems and methods for malicious client detection through property analysis | |
US10778687B2 (en) | Tracking and whitelisting third-party domains | |
US20190222587A1 (en) | System and method for detection of attacks in a computer network using deception elements | |
Kaur et al. | Browser fingerprinting as user tracking technology | |
EP3518135B1 (en) | Protection against third party javascript vulnerabilities | |
Suri et al. | An approach to perceive tabnabbing attack | |
Franken et al. | Exposing cookie policy flaws through an extensive evaluation of browsers and their extensions | |
US20240256668A1 (en) | Detecting and Preventing Installation and Execution of Malicious Browser Extensions | |
CN116484338A (zh) | 数据库访问方法及装置 | |
Chorghe et al. | A survey on anti-phishing techniques in mobile phones | |
Wedman et al. | An analytical study of web application session management mechanisms and HTTP session hijacking attacks | |
US10686834B1 (en) | Inert parameters for detection of malicious activity | |
CN115695050B (zh) | 点击劫持攻击的防范方法、装置、电子设备及存储介质 | |
Cvitić et al. | Defining cross-site scripting attack resilience guidelines based on BeEF framework simulation | |
Zaheri et al. | Leakuidator: Leaky resource attacks and countermeasures | |
Zhu | Security of CORS on LocalStorage |
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 |