XSS漏洞简介

Posted 流星安全

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XSS漏洞简介相关的知识,希望对你有一定的参考价值。

0x01.什么是XSS

全称:Cross Site Script

中文名称:跨站脚本

按英文缩写应该是CSS,为了与层叠样式表CSS做区分,安全行业就取名为XSS。

XSS是客户端安全的头号大敌,常见的危害有:盗取cookie,钓鱼,制造蠕虫等。

XSS其实是客户端代码的注入,通常注入代码是JAVAScript

区别于命令注入,SQL注入等服务端代码注入

概念:黑客通过 ‘HTML注入’ 篡改网页,插入恶意脚本,当用户在浏览网页时,实现控制用户浏览器行为的一种攻击方式。


0x02.xss的分类

  • 存储型

  • 反射性

  • DOM型


存储型:一般在查看留言,看评论的时候触发。

下面我们分析下存储型XSS的攻击过程:


1.用户打开浏览器,访问了嵌入xss脚本的页面

2.浏览器向web应用程序请求页面。

3.页面中的留言存储在数据库中,需要web应用程序查询数据库

4.数据库会将携带xss脚本的留言返回给web应用程序

5.web应用程序返回给浏览器

6.显示在浏览器上,触发XSS。

这里xss脚本是存储在数据库中,那么是什么时候保存到数据库中的呢?。肯定是黑客构造XSS脚本并写入到数据库中。

1.黑客精心构造XSS脚本提交给web应用程序。

2.web应用程序将恶意留言保存到数据库中。

3.其他用户或者管理员在查看留言时就跟前面展示的一样触发XSS。

存储型xss关键点:xss脚本内容是存储在数据库中

XSS漏洞简介


反射型:一般需要我们访问携带XSS脚本的链接触发,xss在URL的参数中,比如通过邮件,聊天工具发送链接,只要我们打开这个链接就触发了XSS,反射型xss可以在链接中明显的看到xss脚本。

下面我们分析反射性XSS的攻击过程:

  1. 用户访问问含有xss脚本的链接

  2. 浏览器向后端web程序发送请求

  3. 后端web程序将URL中的XSS数据脚本写入响应页面

  4. 返回给浏览器

  5. 浏览器渲染响应页面,触发XSS

  6. XSS漏洞简介


DOM型:与反射型需要访问携带XSS脚本的链接触发,xss脚本在URL的哈希中。

下面我们分析DOM型XSS的攻击过程:

1.用户访问含有XSS脚本的链接

2.浏览器通过JAvascript从URL中提取XSS的脚本内容

3.写入DOM中触发XSS


0x03.三种XSS比较


以上是关于XSS漏洞简介的主要内容,如果未能解决你的问题,请参考以下文章

XSS漏洞攻防

Pikachu漏洞练习平台实验——XSS

Xmind XSS导致RCE漏洞复现

漏洞自动化验证之XSS篇

原创干货 | XSS漏洞解析与挖掘

Web安全学习笔记 XSS漏洞分析上