关于 target="_blank"漏洞的分析
- 创建: 于 八月 30, 2016
关于 target="_blank"漏洞的分析 一、漏洞详情:
首先攻击者能够将链接(指向攻击者自己控制的页面的,该被控页面的js脚本可以对母页面进行部分权限操控,如跳转:opener.location)存储在应用上,并展现给受害者,诱导受害者点击,才能继续后续攻击;
漏洞根源:浏览器支持该功能; 二、防御方法: 有两种方法: 1、在用户输入链接的文本编辑器内和跳转链接时,将链接内容自动添加 rel=noopener特性(该特性不同浏览器支持情况不同,可以对不同浏览器添加不同的特性,如火狐还需添加 noreferrer特性;在一些老浏览器里面不支持这个属性,就可以通过js 手动设置 opener 为 null 来解决:
var newWnd = window.open();
newWnd.opener = null;
newWnd.location = url;
2、在处理点击链接时,不在新窗口打开,而是在老窗口刷新(a标签不加target="_blank" ;但该方法可能和国内用户使用习惯有冲突) 另,该漏洞属于浏览器漏洞,彻底杜绝的方法只能是浏览器不支持该特性;以上方法只是减少我们应用带给用户的风险,但如果其他应用存在该问题,用户依然会遭到钓鱼攻击,从而泄漏用户的各种信息;我们查看了百度、阿里等现有应用,均存在此问题;综上,个人觉得该漏洞的修复需求对我们并不高;
-------------------------------分割线-----------------------------------
今天看到知道创宇前端公众号有关于这个漏洞的分析,
再拿出来对比一下
关于 target="_blank"漏洞的分析的更多相关文章
- target='_blank' 安全漏洞
有关 target="_blank" 的安全缺陷 可能大家在写网页的时候经常给超链接加个属性 target="_blank",意思就是在浏览器新的窗口打开此超链 ...
- target="_blank" 导致的钓鱼攻击
挺久的漏洞,之前没仔细看现在看了下 直接构建实验环境: test1.html: <!DOCTYPE html> <html> <head> <meta cha ...
- jsp中target="_blank"的用法
对于点击查询按钮或a标签等,打开一个新页面并显示结果的做法如下: 1.form表单: 在form标签上加target="_blank"后,点击搜索按钮,显示查询结果时会打开一个新页 ...
- target="_blank"
target="_blank":出现在<a target="_blank" href="http://">中,在开发中,在一个系 ...
- [web安全]Web应用漏洞攻击分析与防范
网站攻击主要分为以下几类: (1) sql注入攻击 SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.它是利 ...
- wkwebview a target="_blank" 打不开链接的解决方案
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigatio ...
- Google发布SSLv3漏洞简要分析报告
今天上午,Google发布了一份关于SSLv3漏洞的简要分析报告.根据Google的说法,该漏洞贯穿于所有的SSLv3版本中,利用该漏洞,黑客可以通过中间人攻击等类似的方式(只要劫持到的数据加密两端均 ...
- HTML <base> 标签的 target 属性 —— <base target="_blank" />
为页面上所有链接规定默认目标: <head> <base target="_blank" /> </head> <body> < ...
- <base target="_blank"/>
<base target=_blank> 是将基本链接的目标框架都改为新页打开
随机推荐
- python 爬虫入门----案例爬取上海租房图片
前言 对于一个net开发这爬虫真真的以前没有写过.这段时间学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup. ...
- lvs_dr
lvs_dr 实验需求(4台虚拟机) eth0 192.168.1.110 单网卡 client(可以使用windows浏览器代替,但会有缓存影响) eth0 192.168.1.186 单网卡 di ...
- 【sed & awk 第二版笔记】以州和人名排列_P38
[root@nhserver1 02]# cat listJohn Daggett, 341 King Road, Plymouth MAAlice Ford, 22 East Broadday, R ...
- 【转】SHELL variables default value, ${var:-DEFAULT}和${var=DEFAULT}的一点区别
${var:-DEFAULT}和${var=DEFAULT}的区别: ${var:-DEFAULT} If var not set or is empty, evaluate expression a ...
- Java自学能学会吗?最新Java高级学习路线
就好像一千个人心中有一千个哈利波特一样,这个答案不绝对也不唯一,Java好学但自学的确阻力有些大,作为一门技术语言,它所蕴含的智慧绝对不是靠几本XX入门,XX框架之类的书所能概括,自学Java你要做好 ...
- IIS与Apache禁止IP地址直接访问网站
一.IIS 防止恶意域名指向解决方法 首先单击"开始"-"设置"-"控制面板"-"管理工具",找到"Inter ...
- String str="abc";和String str2=new String("abc");有什么区别?
- python3,进程间的通信
本文来源于python 3.5版本的官方文档 multiprocessing模块为进程间通信提供了两种方法: 1.进程队列queue The Queue class is a near clone o ...
- 原生JS实现图片轮播
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JAVA 二进制基础
主要内容 1.十进制二进制互转 2.二进制的位运算 3.JDK内置的进制转换 4.JAVA中的进制 十进制二进制互转 57 111001 二进制的位运算:优点:特定情况下,计算方便,被支持面广泛. ① ...