04. XSS漏洞原理

04. XSS漏洞原理

XSS漏洞原理(上)

弹窗是怎么实现的?
案例

在这里插入图片描述

在这里插入图片描述

攻击利用

在这里插入图片描述

什么是XSS?
  • XSS(Cross Site Scripting):跨站脚本攻击,为了不和层叠样式表(Cascading Style Sheets)的缩写CSS混合,所以改名为XSS。
  • XSS原理:攻击者在网页中嵌入客户端脚本(通常是JavaScript的恶意脚本),当用户使用浏览器加载被嵌入恶意代码的网页时,恶意脚本代码就会在用户的浏览器中执行,造成跨站脚本攻击。
XSS的危害
  • 盗取cookie

  • 网络钓鱼

  • 植马挖矿

  • 刷流量

  • 劫持后台

  • 篡改页面

  • 内网扫描

  • 制造蠕虫

在这里插入图片描述

常出现的场景
  • 重灾区:评论区、留言区、个人信息、订单信息
  • 针对型:站内信、网页即时通讯、私信、意见反馈
  • 存在风险:搜索框、当前目录、图片属性
XSS的分类
  • 反射型XSS
  • 存储型XSS
  • DOM型XSS(属于特殊的反射型XSS)
反射型XSS
反射型XSS
  • 反射型XSS 是非持久性、参数型的跨站脚本,恶意代码并没有保存在目标网站,通过引诱用户点击一个链接到目标网站的恶意链接来实施攻击的。
  • 出现场景:多出现在搜索框或者输入框。

在这里插入图片描述

反射型XSS——利用流程

在这里插入图片描述

XSS漏洞原理(下)

反射型XSS(续)
反射型XSS——案例

在这里插入图片描述

在这里插入图片描述

存储型XSS
存储型XSS
  • 恶意代码被保存在目标网站的服务器中,这种攻击具有较强的稳定性和持久性
  • 比较常见的场景是,黑客写下一篇含有恶意Javascript代码的博客文章,文章发表后,所有访问该博客的用户,都会在他们的浏览器中执行这段恶意js代码

在这里插入图片描述

存储型XSS——代码分析

在这里插入图片描述

存储型XSS——利用分析
存储型XSS案例

在这里插入图片描述

DOM型XSS
DOM型XSS——什么是DOM?
  • DOM,全称Document Object Model(文档对象模型),是W3C推荐的一种独立于平台和语言的标准,定义了访问HTML和XML文档的标准
  • Dom即windows对象下内置的document对象

在这里插入图片描述

DOM型XSS
  • DOM-XSS简单去理解就是输出点在DOM,属于特殊的反射性XSS

在这里插入图片描述

常用的DOM方法
方法描述
getElementById()返回带有指定ID的元素
getElementsByTagName()返回包含带有指定标签名称的所有元素的节点列表(集合/节点数组)
getElementsByClassName()返回包含带有指定类名的所有元素的节点列表
appendChild()把新的子节点添加到指定节点
removeChild()删除子节点
replaceChild()替换子节点
insertBefore()在指定的子节点前面插入新的子节点
createAttribute()创建属性节点
createElement()创建元素节点
createTextNode()创建文本节点
getAttribute()返回指定的属性值
setAttribute()把指定属性设置或修改为指定的值
DOM型XSS——代码分析

在这里插入图片描述

DOM型XSS——利用

在这里插入图片描述

三种类型的比较
XSS类型存储型反射型DOM型
触发过程1、黑客构造XSS脚本 2、正常用户访问携带XSS脚本的页面正常用户访问携带XSS脚本的URL正常用户访问携带XSS脚本的URL
数据存储服务器URLURL
谁来输出后端Web应用程序后端Web应用程序前端Javascript
输出位置HTTP响应中HTTP响应中动态构造的DOM节点中
是否持久
防御方式
防御方式
  • 对用户的输入进行合理验证

    对特殊字符(如<、>、’、”等)以及

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值