网络安全(2) -- 关于一次XSS攻击-图片(img标签)的onerror事件
因为最近在学习web安全,出于好奇,尝试对CSDN进行了XSS注入,没想到真的成功了。
操作步骤:
直接找一篇博客,在底下评论
<img src="pic.gif" οnerrοr="javascript:this.src='/noPic.gif';" alt="pic" />
因为CSDN做了简单的转义,他会将注入的标签,去掉闭合性,也就是会把我注入的内容处理为:
<img src="pic.gif" οnerrοr="javascript:this.src='/noPic.gif';" alt="pic">
这样,注入的标签就失去了他的闭合性了,对一些普通的攻击就进行了防御,但是onerror事件是专门针对js出错的,所以,标签闭合性被破坏刚好触发了这个事件,所以,他会被执行,执行之后将img标签的src属性替换成我们想要的属性,然而我注入的这个地址,故意又是一个不能访问的地址,于是,就反复的触发这个onerror事件,最终导致浏览器堆栈溢出了。
说明:如果图片存在,但网络很不通畅,也可能触发 onerror。
解决方法:
1、用html转义,将<>转义成转义符,这样标签就编程了文本了(QQ空间的做法)
2、使用jsoup白名单过滤掉onerror关键字,让他不要在前台显示(这种更安全,因为转义还有可能被绕过)
网络安全(2) -- 关于一次XSS攻击-图片(img标签)的onerror事件相关推荐
- 图片(img标签)的onerror事件
打开网页时提示 Stack overflow at line: 0.我做了截图如下: 经过分析,发现网页中存在类似如下的代码: <img src="pic.gif" οner ...
- 图片(img标签)的onerror事件,你有用过嘛?
分析:特别注意 onerror,当图片不存在时,将触发 onerror,而 onerror 中又为 img 指定一个 NoPic.gif 图片.也就是说图片存在则显示 pic.gif,图片不存在将显示 ...
- %3c %3e 转换html,防止基本的XSS攻击 滤掉HTML标签
/** *防止基本的XSS攻击 滤掉HTML标签 *将HTML的特殊字符转换为了HTML实体htmlentities *将#和%转换为他们对应的实体符号 *加上了$length参数来限制提交的数据的最 ...
- 加载默认图片,如何避免img标签陷入onerror事件死循环
当图片加载失败的时候,我们可以利用onerror事件赋予它默认图片,但是问题来了,假如默认图片又不存在呢,即加载失败,这个时候就会陷入死循环. 为了避免死循环的情况,我们可以在执行完onerror事件 ...
- img标签的onerror事件来显示默认图片
有时,img标签中的src图片加载失败,原来的位置会加载一个碎片化图标. 怎样可以设置一个加载失败时的默认显示图片那? <img width="50px" name=&quo ...
- 了解与防御XSS攻击
一. XSS是什么 XSS攻击全称跨站脚本攻击(Cross Site Scripting),是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写 ...
- xss攻击-面向前端的安全攻击 ─=≡Σ(((つ•̀ω•́)つ 知己知彼百战百胜 web安全
文章目录 XSS简介 测试环境 XSS工具步骤与分类 XSS用到的一些HTML和JS HTML表单文本框介绍 探测xss 反射型XSS 常用的反射型XSS攻击方法 闭合标签 使用下拉菜单 使用隐藏输入 ...
- [网络安全提高篇] 一〇四.网络渗透靶场Oracle+phpStudy本地搭建万字详解(SQL注入、XSS攻击、文件上传漏洞)
当您阅读到该篇文章时,作者已经将"网络安全自学篇"设置成了收费专栏,首先说声抱歉.感谢这一年来大家的阅读和陪伴,这100篇安全文章记录了自己从菜鸡到菜鸟的成长史,该部分知识也花了很 ...
- [网络安全自学篇] 十八.XSS跨站脚本攻击原理及代码攻防演示(一)
这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步.前文分享了Python弱口令攻击.自定义字典生成,并构建了Web目录扫描器:本文将 ...
最新文章
- 深度学习模型之各种caffe版本(Linux和windows)的网址
- python的concat用法_Pandas串联操作concat()用法介绍
- ubuntu安装与配置nfs服务器
- 美团Android自动化之旅—生成渠道包
- Codevs 1025 选菜
- vijos 1071 01背包+输出路径
- HDU 3555: Bomb
- UE4 在游戏中使用Slate
- .NET 靠开源再“出圈”!
- VB6中SendKeys的基本应用
- 武汉理工大学合肥工业大学 计算机,合工大为什么从985降到211?附合肥工业大学211地位(合工大不是985)...
- java框架_2020年到了,你需要掌握的9大顶级Java框架
- 钉钉web版防撤回、屏蔽已读
- ReentrantReadWriteLock 可重入的读写锁
- 深度linux如何打开exe文件,在deepin中简单粗暴地执行exe程序
- HDB3码:快速上手步骤实例
- html中加js弹窗,前端html+css+js弹窗的实现
- 广义线性模型 matlab,基于Matlab的广义线性模型建模
- win10锁屏时间太短就关闭屏幕
- 计算机房要保持清洁 卫生,国家机房数据安全管理制度