【Web安全从入门到放弃】02_跨站脚本漏洞

02_跨站脚本漏洞

【Web安全从入门到放弃】01_暴力破解漏洞

跨站脚本漏洞概述

  1. XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。
  2. XSS是一种发生在Web前端的漏洞,所以其危害的对象也主要是前端用户。
  3. XSS漏洞可以用来进行钓鱼攻击、钓鱼攻击、前端js挖矿、用户cookie获取。 甚至可以结合浏览器自身的漏洞对用户主机进行远程控制等

流程图:

在这里插入图片描述

跨站脚本漏洞常见类型及测试流程

危害:存储型>反射型> DOM型
●反射型
交互的数据一般不会被存在在数据库里面,一次性,所见即所得, 一般出现在查询类页面等。
●存储型
交互的数据会被存在在数据库里面,永久性存储, 一般出现在留言板,注册等页面。
●DOM型
不与后台服务器产生数据交互,是一种通过DOM操作前端代码输出的时候产生的问题, 一次性也属于反射型。

XSS漏洞形成的原因:

在这里插入图片描述

形成XSS漏洞的主要原因是程序对输入和输出的控制不够严格,导致“精心构造”的脚本输入后,在输到前端时被浏览器当作有效代码解析执行从而产生危害。

跨站脚本漏洞测试流程:

①在目标站点上找到输入点,比如查询接口,留言板等;
②输入一组"特殊字符+唯一识别字符”, 点击提交后,查看返回的源码,是否有做对应的处理;
③通过搜索定位到唯一字符,结合唯一字符前后语法确认是否可以构造执行js的条件 ( 构造闭合) ;
④提交构造的脚本代码(以及各种绕过姿势) ,看是否可以成功执行,如果成功执行则说明存在XSS漏洞;

TIPS :
1.一般查询接容易出现反射型XSS ,留言板容易出现存储型XSS ;
2.由于后台可能存在过滤措施,构造的script可能会被过滤掉,而无法生效,或者环境限制了执行(浏览器) ;
3通过变化不同的script ,尝试绕过后台过滤机制;

反射型XSS ( get&post )演示和原理分析

GET和POST典型区别:
GET是以url方式提交数据;
POST是以表单方式在请求体里面提交;

GET方式的XSS漏洞更加容易被利用,一般利用的方式是将带有跨站脚本的URL伪装后发送给目标
而POST方式由于是以表单方式提交,无法直接使用URL方式进行攻击,如何利用?

存储型XSS演示和与原理分析

存储型XSS漏洞跟反射型形成的原因一样,不同的是存储型XSS下攻击者可以将脚本注入到后台存储起来,构成更加持久的危害,因此存储型XSS也称“永久型”XSS。

Dom型XSS演示和原理分析

在这里插入图片描述

通过JavaScript ,可以重构整个HTML文档。您可以添加、移除、改变或重排页面上的项目。要改变页面的某个东西, JavaScript就需要获得对HTML文档中所有元素进行访问的入口。这个入口,连同对HTML元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的( DOM )。所以,你可以把DOM理解为一个一个访问HTML的标准编程接口。

Dom型XSS漏洞基本不会涉及到后端代码。

XSS的危害-获取cookie的原理和实验演示

GET方式的XSS获取Cookie:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AnQ_xiao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值