XSS漏洞概述

205 阅读3分钟

XSS 跨站点脚本

跨站脚本漏洞概述

XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。

XSS是一种发生在Web前端的漏洞,所以其危害的对象也主要是前端用户。

XSS漏洞可以用来进行钓鱼攻击、钓鱼攻击、前端js挖矿、用户cookie获取。甚至可以结合浏览器自身的漏洞对用户主机进行远程控制等

可以通过前端javascript实现的一些功能都可以通过xss实现

image.png

image.png

存储型和反射型的区别:

  • 存储型XSS:攻击者将恶意脚本存储在目标网站的数据库或文件中。当其他用户访问包含恶意脚本的页面时,服务器会将恶意脚本从数据库中检索出来并返回给用户的浏览器执行。
  • 反射型XSS:恶意脚本作为URL参数或其他用户输入的一部分传递给服务器。服务器会将这个恶意脚本作为响应的一部分返回给用户的浏览器,然后浏览器解析并执行该脚本。

存储型XSS和反射型XSS的区别在于恶意脚本的存储位置和触发方式。 存储型XSS将恶意脚本存储在服务器上,而反射型XSS将恶意脚本作为输入直接传递给服务器。

受影响的用户在存储型XSS中是通过访问带有恶意脚本的页面来受到攻击,而在反射型XSS中是通过点击或访问特定的恶意链接来触发攻击。

反射型和DOM型的区别

  • 反射型XSS:攻击者构造一个看似正常的URL,当用户点击或访问该URL时,恶意代码作为服务器响应的一部分被返回给用户的浏览器,并且浏览器会执行这段恶意代码。这种攻击方式的特点是恶意代码在服务器响应中反射回用户的浏览器,然后进行执行。
  • DOM型XSS:攻击者通过修改网页的DOM结构来注入和执行恶意代码。它不涉及到服务器返回恶意代码,而是直接在用户浏览器执行过程中修改网页的DOM结构,从而触发恶意代码的执行。

DOM型XSS的攻击方式主要是利用客户端脚本的运行环境中存在的安全漏洞,通过修改DOM结构并执行恶意脚本来实施攻击。这种攻击方式通常通过跨站脚本(Cross-Site Scripting)漏洞进行注入,但与反射型XSS不同的是,DOM型XSS不需要服务器的响应来触发攻击。

image.png

1:在目标站点上找到输入点,比如查询接口,留言板等; ② 输入一组“特殊字符+唯一识别字符”,点击提交后,查看返回的源码,是否有做对应的处理;

③ 通过搜索定位到唯一字符,结合唯一字符前后语法确认是否可以构造执行js的条件(构造闭合);

④提交构造的脚本代码(以及各种绕过姿势),看是否可以成功执行,如果成功执行则说明存在XSS漏洞;

TIPS:

1.一般查询接口容易出现反射型XSS,留言板容易出现存储型XSS;

2.由于后台可能存在过滤措施,构造的script可能会被过滤掉,而无法生效,或者环境限制了执行(浏览器);

3.通过变化不同的script,尝试绕过后台过滤机制;