朋友组织了一场xss
live,安全
一直是开发中不可忽视的一部分。而xss
作为web开发中最常见的攻击手段,防范是必然的。基于web浏览器tricks,JavaScript的发展,npm等开源项目漏洞,web注入等会让开发者越来越防不胜防。
本次总结基于耗子的xss-demo,以及自己对xss的理解和知识的吸收。感兴趣的同学可以先去试试,这里就不在累赘提供答案了。 欢迎探讨更多Web安全
相关话题。
插入执行标签
- script
- img onerror触发
- iframe srcdoc触发
标签等提前闭合(截断)
1 | <style> |
input的type,在type之前可以重写为image,通过onerror
注入
ES6 tag标签
1 | <script>alert`1`</script> |
转义字符仍可执行
- script标签可执行
base64
的html代码片段 - onerror可执行 转义为 html 10进制, 16进制的代码片段
- url转义为 html 10进制, 16进制 仍可执行, url的定义可获取其他域下的资源文件
1 | scheme:[//[user:password@]host[:port]][/]path[?query][#fragment] |
svg不闭合也执行
查看 0x07
正则替换不靠谱
防护
这样总结对我更好的理解,也明白为什么最后是通过替换不同的字符来做处理。 Web安全
路很长,需要持续关注。