XSS漏洞基础学习

XSS漏洞

cross-site scripting

跨站脚本攻击

一、XSS原理

1、攻击者会在web页面中插入一些恶意的脚本代码(通常是HTML代码和JS脚本)。当用户浏览该页面的时候,那么嵌套在该页面的代码就会执行,因此会达到攻击用户的目的
基本的xss漏洞代码
<script>alert('xss')</script>
<img src='./smile.jpg' onmouseover='alert(/xss/)’>
<input type="text" onclick="alert(/xss/)"> 
 
2、用户浏览被XSS注入过的网页,浏览器就会解析这段代码,就被攻击了。因为浏览器当中有JavaScript解析器,浏览器不会判断代码是否恶意,只要符合语法规则,就直接解析了

3、攻击对象:   对象大多为用户,网站管理员。
             攻击点一般是网站url还有微博,网页留言板,聊天室等收集用户输入的地方。

二、XSS类型

反射型(ctrl+4)
反射型也称为非持久型,这种类型的脚本是最常见的,也是使用最为广泛的一种,主要用于将恶意的脚本附加到URL地址的参数中。

数据流量:浏览器---->后端---->浏览器

流程:客户端(浏览器)注入恶意的XSS漏洞代码,并发送请求到服务端,后端解析并返回带有XSS漏洞攻击的页面到浏览器上
存储型
持久性,代码是存储在web服务器中的,比如在个人信息或发表文章等地方插入代码,如果没有过滤或者过滤不严,那么这些代码将存储在服务器中,用户访问该页面的时候触发代码执行。这种XSS比较危险,容易造成蠕虫、盗窃cookie。每一个访问特定页面的用户,都会受到攻击。

数据流量走向:浏览器—>后端—>数据库—>后端—>浏览器

流程:客户端(浏览器)通过发送博客或者留言评论输入恶意的XSS漏洞代码,浏览器将请求发送请求到服务端,服务端将这段代码保存到数据库中,当用户访问这个页面时,数据库中保存的代码会被后端进行解析,并且发送到客户端的浏览器上,实现攻击

DOM型
DOM是一个树状的模型,js可以对树中的文档对象进行修改,而改变页面的元素,dom型xss就是通过函数获取到输入的值,然后拼接到代码中,如果包含恶意代码,则当js代码执行去改变页面元素的时候会导致恶意代码被执行,从而发生xss。

和反射型xss及存储型xss不同的是,DOM型xss不经过服务端,只在前端执行
(前面说过放射型xss需要把数据发送到后端解析,在回到浏览器显示出来)

数据流量:URL—>浏览器

三、靶场

  • dvwa靶场

  • pikachu靶场

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值