前端安全之初识XSS

文章首发于我的博客:查看原文

文章是学习了慕课网老师视频整理,视频地址:Web安全-XSS

文末有惊喜哦

一、什么是XSS?

XSS(Cross-site scripting),跨站脚本,一种在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。这类攻击通常包含了HTML以及用户端脚本语言。

二、XSS的攻击方式

攻击有什么用??=> 1、盗用cookie等,获取敏感信息;2、 破坏页面结构;3、其他~

2.1 反射型

发出请求时,XSS代码出现在URL中,作为输入提交到服务器,服务器端解析后响应,XSS代码随响应内容一起返回给浏览器,最后浏览器解析响应XSS代码。这个过程像一次反射,所以称为反射型XSS。

这里要注意的有几个点:

  1. XSS代码出现在URL中;
  2. 服务端解析响应
  3. 浏览器解析代码

这里的XSS代码通常是CSS,javascript或者HTML片段。

2.2 存储型

存储型XSS和反射型XSS的差别在于提交的代码会存储在服务端(数据库、内存、文件系统等),下次请求目标页面时,无需再次提交XSS代码。

比如,当你访问一个人的博客时(不要搞我!),你去他的文章下面添加一些评论,这些评论一般都会存下来,如果他的博客没有作什么处理,那么,一个简单的XSS攻击就算生效了:

2.2.1 插入html片段:

当你在评论中插入了一个 ==img== 标签,由于图片路径找不到,所以就会执行==onerror==方法,这样,onerror中的js脚本就被触发了,每次当用户访问到这篇文章,加载到这条评论时,都会触发这个弹窗。这样,一次简单的XSS就算生效了

  

向页面中插入一个按钮,诱导用户进行操作,进而被攻击了~