ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

跨站脚本攻击XSS

2019-12-01 18:51:34  阅读:222  来源: 互联网

标签:脚本 XSS 跨站 Based DOM 用户 反射 页面


XSS简介

跨站脚本攻击,英文全称是Cross Site Scrit,本来缩写是CSS,但是为了和层叠样式表(Cascading Style Sheet, CSS)有所区别,所以在安全领域叫做"XSS".

XSS攻击,通常是指黑客通过"HTML注入"篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击.在一开始,这种攻击的演示案例是跨域的,所以叫做"跨站脚本".但是发展到今天,是否跨域已经不再重要.

那么什么是XSS呢?看看下面的例子:
假设一个页面把用户输入参数直接输出到页面上:

<?php 
$input = $_GET["param"];
echo "<div>".$input."</div>";
?>

在正常情况下,用户向param提交的数据会展示到页面中,比如提交:

http://www.a.com/test.php?param=这是一个测试!

但是如果提交一段HTML代码:

http://www.a.com/test.php?param=<script>alert(/xss/)</script>

会发现,alert(/xss/)在当前页面执行了.
用户输入的Script脚本已经被写入页面中,而这显然是开发者所不希望看到的.上面这个例子,就是XSS的第一种类型:反射型XSS.
XSS根据效果的不同可以分成如下几类.

反射型XSS

反射型XSS只是简单地把用户输入的数据"反射"给浏览器.也就是说,黑客往往需要诱使用户"点击"一个恶意链接,才能攻击成功.反射型XSS也叫做"非持久"

存储型XSS

存储型XSS会把用户输入的数据"存储"在服务器端.这种XSS具有很强的稳定性.比较常见的一个场景就是,黑客写下一篇包含恶意JavaScript代码的博客文章,文章发表后,所有访问该博客的用户,都会在它们的浏览器中执行这段恶意的JavaScript代码.黑客把恶意的脚本保存到服务端,所以这种XSS攻击就叫做"存储型XSS".

DOM Based XSS

实际上,这种类型的XSS并非按照"数据是否保存在服务器端"来划分,DOM Based XSS从效果上来说也是反射型XSS.单独划分出来,是因为DOM Based XSS的形成原因比较特别.通过修改页面的DOM节点形成的XSS,称之为DOM Based XSS

标签:脚本,XSS,跨站,Based,DOM,用户,反射,页面
来源: https://www.cnblogs.com/jlfw/p/11967076.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有