XSS(Cross Site Scripting)跨站脚本攻击,恶意攻击者插入恶意Html或Script等脚本代码到用户浏览的web网页上,当用户浏览该页之时,因WEB应用程序对用户输入过滤不足,嵌入其中Web里面的恶意脚本代码会被执行,从而达到恶意攻击用户的目的。
由于HTML代码和客户端JavaScript脚本能在受害者主机上的浏览器任意执行,这样等同于完全控制了WEB客户端的逻辑,在这个基础上,黑客可以轻易地发起Cookie窃取,会话劫持,钓鱼欺骗等各种各样的攻击。
形成XSS的主要原因:程序对输入和输出的控制不够严格,导致恶意脚本输入后,在输到前端时被浏览器当作有效代码解析执行从而产生危害。
反射型XSS:非持久性XSS,这种攻击往往具有一次性。攻击者将具有攻击性的链接等触发性脚本发送给用户,欺骗用户点击等操作触发XSS代码并访问了服务器,服务器接受该用户的请求并进行处理,然后把带有XSS的代码发送给用户,用户浏览器解析执行代码,触发XSS漏洞。
网站的搜索栏、用户登录入口、输入表单等地方,常用来窃取客户端cookies或钓鱼欺骗。
存储型XSS:持久化XSS,比反射型XSS更具有威胁性。攻击脚本将被永久的存放在目标服务器的数据库或文件中。这是利用起来最方便的跨站类型,跨站代码存储于服务端(比如数据库中)容易造成蠕虫,盗窃cookie。
评论区、留言区、个人信息、订单信息 、站内信、网页即时通讯、私信、意见反馈、搜索框、当前目录、图片属性、白盒测试(代码审计)…
基于文档对象模型Document Objeet Model,DOM)的一种漏洞。DOM( Document object model),使用DOM能够使程序和脚本能够动态访问和更新文档的内容、结构和样式(例如:html的内容,结构和样式)。
并且DOM型XSS是基于JS上的,并不需要与服务器进行交互。其通过修改页面DOM节点数据信息而形成的XSS跨站脚本攻击。不同于反射型XSS和存储型XSS,基于DOM的XSS跨站脚本攻击往往需要针对具体的
JavaScript DOM代码进行分析,并根据实际情况进行XSS跨站脚本攻击的利用。
盗取cookie:
页面跳转:
盗取cookie并请求服务器:
img标签
`
a标签
aa
aa
aa
aa
aa
input标签
form标签
iframe标签
svg标签
还有很多标签:例如:标签,标签,标签...
- 1
五、XSS的防御
形成XSS漏洞的主要原因是程序对输入和输出的控制不够严格,导致恶意脚本输入后,在输到前端时被浏览器当作有效代码解析执行从而产生危害。
因此在XSS漏洞的防范上,一般会采用输入过滤和输出转义的方式。
输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;
输出转义:根据输出点的位置对输出到前端的内容进行适当转义;
防御方法有很多种,具体问题,具体分析!
防御参考: -
XSS(跨站脚本攻击)漏洞解决方案
XSS(跨站脚本)漏洞详解之XSS跨站脚本攻击漏洞的解决
xss(跨站脚本攻击)漏洞原理实战
-
相关阅读:
第七章 查找 九、B+树
js对象属性描述符
ES6生成器(Generator)和迭代器(Iterator)
怎样才能上传百度文库,上传百度文库的操作步骤和技巧
数据库基础——4.select语句
【小白必看】网络安全(黑客)0基础学习笔记
leetcode难度:困难773. 滑动谜题
RTMP握手协议及lal RTMP握手实现解析
三维模型3DTile格式轻量化压缩处理工具常用几款软件介绍
《linux程序设计》笔记第一章
-
原文地址:https://blog.csdn.net/qq_37432174/article/details/127990321