当前位置: 首页 > news >正文

XSS跨站--原理和分类

本文主要内容

原理

        XSS漏洞产生原理?
        XSS漏洞危害影响?

分类

        反射型、存储型、DOM型
手法

        XSS平台使用
        XSS工具使用
        XSS结合其他漏洞

靶场搭建

pikachu 靶场搭建(完整版)-CSDN博客https://blog.csdn.net/weixin_51446936/article/details/117789696

[1]XSS跨站漏洞原理


        本质,产生层面

                函数类,漏洞操作对应层,危害影响,浏览器内核版本等

XSS漏洞的本质与产生层面

XSS(跨站脚本攻击)的本质是攻击者通过注入恶意脚本到可信页面中,使得用户浏览器执行非预期的代码。其产生层面主要是Web应用程序对用户输入的数据没有进行充分的过滤和验证,导致攻击者可以将恶意脚本注入到动态页面中。

XSS漏洞的产生原理

当动态页面中插入的内容含有特殊字符(如<)时,用户浏览器会将其误认为是插入了HTML标签,当这些HTML标签引入了一段JavaScript脚本时,这些脚本程序就将会在用户浏览器中执行。XSS漏洞的产生主要与以下几个方面有关:

  • 输入层面:用户输入的数据未经过滤直接被插入到HTML页面中。

  • 输出层面:服务器将用户输入的数据未经转义直接输出到HTML页面。

  • 函数类:一些输出函数(如alertprint等)如果使用不当,也可能导致XSS漏洞。

XSS漏洞的类型

XSS漏洞主要分为以下三种类型:

(1)存储型XSS
  • 数据存储与渲染 :当用户提交数据(如评论、用户名、个人简介等)到服务器时,服务器没有对这些数据进行严格的过滤和转义,而是直接将这些数据存储到数据库中。之后,当其他用户访问该页面时,服务器从数据库中取出这些数据并直接渲染到网页中。

  • 恶意脚本执行 :如果攻击者在提交数据时插入了恶意脚本代码(如 <  script>alert("XSS")</script),这些代码就会被存储到数据库中。当其他用户访问该页面时,浏览器会将这些恶意脚本代码当作正常的HTML代码解析并执行,从而导致XSS攻击。

(2)反射型XSS
  • 数据输入与输出 :用户在访问一个网页时,通过URL参数、表单提交等方式向服务器发送数据。服务器在处理这些数据后,将数据直接嵌入到返回的网页内容中。

  • 恶意脚本注入 :如果攻击者构造了一个包含恶意脚本代码的URL(如 http://exam  ple.com/search?q=<script>alert("XSS")</script>),当用户访问这个URL时,服务器会将URL中的参数值(<script>al  ert("XSS")</script>)直接嵌入到返回的网页中。浏览器在解析这个网页时,就会执行恶意脚本代码。

(3)DOM型XSS
  • 客户端脚本操作 :DOM型XSS主要发生在客户端的JavaScript代码中。当JavaScript代码从URL参数、表单输入等地方获取数据,并将这些数据动态地插入到DOM中时,如果没有进行适当的过滤和转义,就可能会导致XSS漏洞。

  • 恶意脚本触发 :例如,JavaScript代码通过 document.getElementById("res  ult").innerHTML = location.search 将URL参数直接插入到页面的DOM中。如果攻击者构造了一个包含恶意脚本代码的URL(如 http://examp  le.com/page.html?data=<script>ale  rt("XSS")</sc ript>),当用户访问这个页面时,JavaScript代码会将恶意脚本代码插入到DOM中,浏览器在解析DOM时就会执行恶意脚本代码。

XSS漏洞的操作对应层

XSS漏洞的操作对应层主要在客户端,即用户的浏览器。攻击者通过注入恶意脚本,使得用户的浏览器执行这些脚本,从而达到攻击目的。不过,XSS漏洞的产生也可能涉及到服务器端,如存储型XSS中,服务器将恶意脚本存储到数据库中。

浏览器内核版本对XSS漏洞的影响

不同浏览器内核版本对XSS漏洞的防护能力有所不同。一些现代浏览器内置了XSS防护机制,如Chrome的XSS Auditor,能够在一定程度上阻止XSS攻击。然而,攻击者可能会绕过这些防护机制,或者利用浏览器的某些漏洞来实施攻击。因此,用户应及时更新浏览器版本,以提高安全性。

        基本危害

1. 对用户的影响

  • 窃取敏感信息 :攻击者可以通过注入恶意脚本,窃取用户的敏感信息,如用户名、密码、Cookie等。这些信息可以用来冒充用户身份进行恶意操作。

  • 劫持用户会话 :攻击者通过窃取用户的会话令牌或Cookie,能够劫持用户的会话,实施未经授权的操作,如修改账户信息、发表言论等。

  • 恶意操作 :攻击者可以在用户浏览器中执行恶意脚本,例如发起DDoS攻击、改变用户设置、执行未授权操作等,从而对用户和网站造成实际损害。

2. 对网站的影响

  • 篡改网页内容 :攻击者可以通过注入恶意脚本,修改网页上的内容,向用户展示虚假信息、欺骗性的广告、恶意链接等,影响用户的体验和信任。

  • 网页挂马 :攻击者可以在网站页面中植入恶意软件下载链接或自动下载脚本,当用户访问该页面时,浏览器会在用户不知情的情况下自动下载并安装恶意软件。

  • 数据篡改与服务拒绝 :攻击者可能会篡改页面内容或者植入钓鱼链接,进一步欺骗用户。此外,大规模自动化工具也可以同时发起多个请求,从而造成服务拒绝(DoS)的效果,让正常用户无法访问网站。

  • 提升权限 :如果攻击者能够成功利用XSS漏洞,在具有管理员权限的页面上执行恶意脚本,就有可能获取管理员的权限,对网站进行全面的控制。

[2]XSS漏洞分类

反射型
        发包 x=hello => x.php =>回包     --# 非持续型攻击
存储型
        发包 x=hello => x.php =>写到数据库某个表 => x.php =>回显   --# 持续型攻击
dom型
        发包 x=hello  => 本地浏览器静态前端代码 =x.php     --# 本地js直接执行

 --#反射型XSS的脚本被解析的地方是浏览器,而存储型XSS的脚本被解析的地方是服务器,

DOM型XSS脚本被解析的地方也是浏览器,所以DOM型又叫DOM反射型XSS,但是反射型XSS需要联网而DOM型不需要

[3]XSS常规攻击手法

        平台,工具,结合其他等

        实际场景:留言或者是购买商品,留下跨站脚本代码,管理员查看的时候,会触发恶意代码,此时用户可以拿到管理权限干坏事

        XSS免费平台

                用于直观观察受到攻击的用户

XSS平台-XSS测试网站-仅用于安全免费测试https://xssaq.com/

        XSS免费工具

                kali安装beef

kali安装beef_kali安装beef工具-CSDN博客https://blog.csdn.net/weixin_43847838/article/details/110312851

总结:XSS漏洞被称为钓鱼漏洞的原因,要满足诸多条件,比如浏览器不禁止,用户存储了cookie,管理员要点击指定网页,而且以存储型XSS为主


http://www.mrgr.cn/news/100269.html

相关文章:

  • 第七讲 | list的使用及其模拟实现
  • java—12 kafka
  • 【专题三】二分查找(2)
  • UOJ 228 基础数据结构练习题 Solution
  • 第一部分:git基本操作
  • 皖维 大病救助办理手续说明
  • IOT项目——DIY 气象站
  • 【深度强化学习 DRL 快速实践】逆向强化学习算法 (IRL)
  • Shell 脚本入门:从零开始写自动化脚本
  • QT窗口相关控件及其属性
  • 再来1章linux 系列-11 系统的延迟任务及定时任务 ,名单,at ,crontab,mail;/etc/at.allow,/etc/at.deny
  • 使用spring boot vue 上传mp4转码为dash并播放
  • 【深度强化学习 DRL 快速实践】深度确定性策略梯度算法 (DDPG)
  • 【深度强化学习 DRL 快速实践】近端策略优化 (PPO)
  • 【FreeRTOS】事件标志组
  • C语言实现对哈希表的操作:创建哈希表与扩容哈希表
  • Mysql日志undo redo binlog relaylog与更新一条数据的执行过程详解
  • 软考中级-软件设计师 知识点速过1(手写笔记)
  • 大模型应用开发之LLM入门
  • 计算机组成原理-408考点-数的表示