xss的绕过方式

2023-11-16

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一.xss的类型以及常用标签  
  • 二.xss常用绕过
  • 总结


前言

xss(cross-site-scripting)中文:跨站脚本攻击  常年位于owasp top ten,可见他的地位。

基于javascript完成恶意攻击,javascript使用灵活 他可控制网页的行为 操作html、css、和浏览器,所以他的危害性特别大,了解并学习xss原理对于防范xss攻击意义重大。


提示:以下是本篇文章正文内容,下面案例可供参考

一、xss的类型及常用标签

xss有三种类型,分别是:

1.反射型:    非持久型  一次性攻击

2.存储型:    持久型   伴随数据存在

3.DOM型:   基于文档对象模型

                      

常用标签:      html里   js里
   <iframe>   alert 
<textarea>  window.location
  <img>    location.href
<script>    on类型:onsubmint、onerror、onmouseout、onclick等

                                                         

                                       

                                           

                                         

二、xss常用绕过

1.大小写绕过

注意在html里不区分大小写 所以标签如果别过滤 可以采用大小写绕过的方式

代码如下(示例):

<script>alert(“xss”);</script>
<ScRipt>ALeRt(“XSS”);</sCRipT>

2.空格/回车(换行符)/Tab

当过滤掉了Javascript等敏感字符串时就对字符串进行添加空格,换行或tab,此处利用js自身的性质:js通常用分号结尾,当解析到完整语句并且行尾存在换行符的情况下就可以忽略掉分号,若解析确定不是完整语句,则会继续处理,直到语句结束或出现分号。

例如下列语句,我们利用空格将语句分隔成了两部分,解析引擎解析确定到的不是完整的语句,JavaScript则会继续进行处理直到这个语句结束,利用换行符和tab同理

代码如下(示例):

<img src="java  script:alert(‘xss‘);" width=100>

或者

<img src="javascript:  alert(‘xss‘);" width=100>

3.堆叠绕过

类似于 输出为 为变量$str

$str2=str_replace("script","",$str);
$str3=str_replace("on","",$str2);
$str4=str_replace("src","",$str3);
$str5=str_replace("data","",$str4);
$str6=str_replace("href","",$str5);

 可以采用oonn避开过滤 机制是吧中间的on过滤了

4.事件绕过

就是加入一些事件  此方法可绕过大部分SRC域名过滤器,它允许将事件替换为任何标签中可用的事件类型,例如onblur,onclick

事件 描述
onclick 在用户使用鼠标左键点击对象时触发
ondblclick 用户双击对象时触发
onmousedown 用户用任何鼠标按键单击对象时触发
onmouseenter/onmouseover 用户将鼠标指针移动到对象内时触发
onmouseleave/onmouseout 用户将鼠标移出对象边界时触发
onmousemove 用户将鼠标划过对象时触发
onmouseup 用户在鼠标位于对象之上时释放鼠标按钮触发
onmousewheel 鼠标滚轮按钮旋转时触发
onpaste 用户粘贴数据以便从剪切板向文档传输数据在目标对象上时触发
onpropertychange 在对象上发生对象属性更改时触发
onkeydown 用户按下键盘按键时触发
onerror 装载文档或图像的过程中发生错误时触发
onload 加载完毕自动触发

5.伪协议绕过

利用 在a标签里插入 javascript:   伪协议

6.前端抓包绕过

过滤严格的函数可能也会将标签进行严格控制,但是如果用其他形式表示标签,脚本仍能解析却可以绕过过滤

编码绕过不太常见,网上找了张图供大家参考


总结

xss危险程度很高 一般用于盗取各类账号,控制企业数据,盗取企业的重要的商业资料,非法转账,强制发送邮件,网站挂马之类的。所以 掌握xss原理 就可以更好的预防这种危害。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

xss的绕过方式 的相关文章

  • 阻止 TensorFlow 访问 GPU? [复制]

    这个问题在这里已经有答案了 有没有一种方法可以纯粹在CPU上运行TensorFlow 我机器上的所有内存都被运行 TensorFlow 的单独进程占用 我尝试将 per process memory fraction 设置为 0 但未成功
  • 从 Django 调用 Postgres SQL 存储过程

    我正在开发一个带有 Postgresql 数据库的 Django 项目 我编写了一个可以在 Postgres 上完美运行的存储过程 现在我想从 Django 1 5 调用该存储过程 我已经编写了代码 但它提示错误 CREATE FUNCTI
  • 在 Pandas 中,如何从基于另一个数据框的数据框中删除行?

    我有 2 个数据框 一个名为 USERS 另一个名为 EXCLUDE 他们都有一个名为 电子邮件 的字段 基本上 我想删除 USERS 中包含 EXCLUDE 中包含电子邮件的每一行 我该怎么做 您可以使用boolean indexing
  • ctypes 错误:libdc1394 错误:无法初始化 libdc1394

    我正在尝试将程序编译为共享库 我可以使用 ctypes 在 Python 代码中使用该库 使用以下命令该库可以正常编译 g shared Wl soname mylib O3 o mylib so fPIC files pkg config
  • Pyqt-如何因另一个组合框数据而更改组合框数据?

    我有一个表 有 4 列 这 4 列中的两列是关于功能的 一个是特征 另一个是子特征 在每一列中 所有单元格都有组合框 我可以在这些单元格中打开txt 我想 当我选择电影院作为功能时 我只想看到子功能组合框中的电影名称 而不是我的 数据 中的
  • Pandas dataframe:每批行的操作

    我有一个熊猫数据框df我想计算每批行的一些统计信息 例如 假设我有一个batch size 200000 对于每批batch sizerows 我想要一列的唯一值的数量ID我的数据框 我怎样才能做这样的事情呢 这是我想要的一个例子 prin
  • 如何在Python中高效地添加稀疏矩阵

    我想知道如何在Python中有效地添加稀疏矩阵 我有一个程序 可以将大任务分解为子任务 并将它们分配到多个 CPU 上 每个子任务都会产生一个结果 一个 scipy 稀疏矩阵 格式为 lil matrix 稀疏矩阵尺寸为 100000x50
  • 如何根据 HTTP 请求使用 Python 和 Flask 执行 shell 命令并流输出?

    下列的这个帖子 https stackoverflow com questions 15092961 how to continuously display python output in a webpage 我能够tail f网页的日志
  • 迭代列表的奇怪速度差异

    我创建了两个重复两个不同值的长列表 在第一个列表中 值交替出现 在第二个列表中 一个值出现在另一个值之前 a1 object object 10 6 a2 a1 2 a1 1 2 然后我迭代它们 不对它们执行任何操作 for in a1 p
  • Pandas 堆积条形图中元素的排序

    我正在尝试绘制有关某个地区 5 个地区的家庭在特定行业赚取的收入比例的信息 我使用 groupby 按地区对数据框中的信息进行排序 df df orig groupby District Portion of income value co
  • 使用 Conda 更新特定模块会删除大量软件包

    我最近开始使用 Anaconda Python 发行版 因为它提供了许多开箱即用的数据分析库 使用 conda 创建环境和安装软件包也轻而易举 但是当我想更新 Python 本身或任何其他模块时 我遇到了一些严重的问题 我事先被告知我的很多
  • 为什么我应该使用 WSGI?

    使用 mod python 一段时间了 我读了越来越多关于 WSGI 有多好的文章 但没有真正理解为什么 那么我为什么要切换到它呢 有什么好处 这很难吗 学习曲线值得吗 为了用 Python 开发复杂的 Web 应用程序 您可能会使用更全面
  • 使用 NLP 进行地址分割

    我目前正在开发一个项目 该项目应识别地址的每个部分 例如来自 str Jack London 121 Corvallis ARAD ap 1603 973130 输出应如下所示 street name Jack London no 121
  • 以编程方式使用 Sphinx 特定指令解析 .rst 文件

    我希望能够在 Python 中解析基于 sphinx 的 rst 以便进一步处理和检查 就像是 import sphinx p sphinx parse path to file rst do something with p 似乎在 do
  • 从 python 检测 macOS 中的暗模式

    我正在编写一个 PyQt 应用程序 我必须添加一个补丁 以便在启用暗模式的 Macos 上可以读取字体 app QApplication Fix for the font colours on macos when running dark
  • 附加两个具有相同列、不同顺序的数据框

    我有两个熊猫数据框 noclickDF DataFrame 0 123 321 0 1543 432 columns click id location clickDF DataFrame 1 123 421 1 1543 436 colu
  • 从列表python的单个列表中删除子列表

    我已经经历过从列表列表中删除子列表 https stackoverflow com questions 47209786 removing sublists from a list of lists 但当我为我的数据集扩展它时 它不适用于我
  • bs4 `next_sibling` VS `find_next_sibling`

    我在使用时遇到困难next sibling 并且类似地与next element 如果用作属性 我不会得到任何返回 但如果用作find next sibling or find next 然后就可以了 来自doc https www cru
  • python 日志记录会刷新每个日志吗?

    当我使用标准模块将日志写入文件时logging 每个日志会分别刷新到磁盘吗 例如 下面的代码会将日志刷新 10 次吗 logging basicConfig level logging DEBUG filename debug log fo
  • 如何使用Python保存“完整的网页”而不仅仅是基本的html

    我正在使用以下代码来使用 Python 保存网页 import urllib import sys from bs4 import BeautifulSoup url http www vodafone de privat tarife r

随机推荐

  • 写博客有哪些好用的工具和软件?

    写博客有哪些好用的工具和软件 在各种平台上写文章 要有一个好用的编辑器 使用简单方便 不用花很多时间排版 能预览效果等 此外 文章还需要配图片 动图和视频等 所以需要好用的截图软件 视频录制和剪辑软件 本文介绍我自己使用的软件和工具 本人认
  • mysql 重复下单_你的项目是如何处理重复请求/并发请求的?

    你的项目是如何处理重复请求 并发请求的 对于一些用户请求 在某些情况下是可能重复发送的 如果是查询类操作并无大碍 但其中有些是涉及写入操作的 一旦重复了 可能会导致很严重的后果 例如交易的接口如果重复请求可能会重复下单 重复的场景有可能是
  • GD32,在电源电路VDD VDDA VREF+/-参考设计

    GD32 在电源电路参考设计 https bbs 21ic com icview 2568876 1 9 html 资料来源于微信公众号 life and family 更多相关资料可以关注下该公众号 对于GD32 在电源电路设计方面的一些
  • C语言中volatile关键字,简单说明

    C语言中volatile关键字 如 define GPIO1 DR volatile unsigned int 0x0209C000 数据寄存器 每一位代表一个GPIO的0或1 一句话 使用volatile修饰后 会强制你每次引用GPIO寄
  • epoll移植到windows的可行性研究

    1 各有千秋 linux作为高效稳定的操作系统 部署在大量的服务器上 epoll在linux下 一个高性能的网络IO模型 在服务端领域发挥着重要的作用 但在开发效率上 windows以及visual studio系列因其良好的用户体验而更受
  • rabbitmq 添加用户和设置最大权限,也是解决mq报socket关闭异常

    此方式也是解决整合mq后 自己添加用户后 mq报socket关闭异常 1 安装完可视化mq后台后 直接http localhost 15672 进入 2 默认帐号密码 guest guest 3 首先添加用户 tags设置为admin 最大
  • OpenGL纹理贴图相关基本概念

    1 纹理贴图之所以复杂是因为矩形的纹理数据需要被合理地映射到非矩形的区域上面 纹理就是数据的数组 例如颜色数据亮度数据alpha数据等 纹理的单个数据值 被叫做纹理元素 英文叫做texual 初学者会本能地把纹理当成二维图像 但是纹理也可以
  • JavaScript的外部引入方式

    document writeln hello world
  • 聊聊数据库中的 savepoint

    从全局二级索引讲起 故事要从全局二级索引开始讲起 当我们构建了一个全局二级索引之后 一条逻辑上的数据插入 就会变成两条物理上的数据插入 一条插入到主表 另一条插入到索引表 为了保证主表和索引表数据的一致性 我们往往需要开启分布式事务 再并行
  • keil5 Device Database 灰色问题

    使用 keil5 安装 GD 软件包后打开工程依然无法搜索到对应的芯片型号 GD32F450 The Project references device files or libraries that are not installed D
  • 一个类的实例是另一个类的属性python_Python 的类其实是一个特殊的对象

    Python 中的类是一个特殊的对象 Python 中一切皆对象 class AAA 定义的类属于类对象 obj1 AAA 属于实例对象 在程序运行时 类同样会被加载到内存 类是一个特殊的对象 类对象 类对象在内存中只有一份 使用一个类可以
  • 60-200-072-使用-命令-MySQL使用mysqldumpslow分析慢查询日志文件

    1 概述 因为直接分析日志文件是个体力活 因此mysql为我们提供了相关工具mysqldumpslow来对慢查询日志文件进行分析 2 mysqldumpslow命令 访问次数最多的10条sql语句 usr local mysql bin m
  • fedora18 从文本模式启动而不是图形界面启动

    在之前的linux版本中 如果想要启动操作系统后直接进入文本模式 那就要修改 etc inittab这个文件 把其中的5改成3即可 可是 linux2 6 貌似是 内核之后 这个文件就改了 它不再控制着系统的默认启动模式了 如果在fedor
  • vant-weapp 组件 样式的覆盖(一)

    最近在小程序开发中使用到 vant weapp 组件 但有些样式不符合自己的项目要求 需要对样式进行覆盖 以DropdownMenu组件为例 需求是用户选择菜单项 菜单文字变成 橙色 样式的修改 就是以权重高的 覆盖权重低的
  • “Docker Content Trust + 镜像签名”,打造安全的 Kubernetes 供应链!

    出品丨Docker公司 ID docker cn 编译丨小东 每周一 三 五晚6点10分 与您不见不散 说在前面 两周前 我们分享了一篇名为 镜像扫描 基于策略的镜像提升 打造安全的 Kubernetes 供应链 的文章 它主要介绍了 Do
  • 利用BaseMultiItemQuickAdapter打造二、三级级菜单

    去网上找了下资料 然后自己整理了下二级 三级菜单的实现 直接上代码 Recyclerview记得要导包 implementation com android support recyclerview v7 28 0 0 一 首先在app下的
  • AI赋能的判定机制的倾向性

    最近忙着论文的事情 没有时间写一些技术博客 而且CSDN的图床经常出现问题 也懒得整理了 今天也是说些闲话 讨论下对未来AI赋能的判定机制的一些思考 什么是AI赋能的判定机制 主要其实就是 基于机器智能的技术手段 来代替人类评判事情 可以举
  • 最全的整理:毫米波雷达在检测、分割、深度估计等多个方向的近期工作及简要介绍

    前情回顾 在之前 我已经有介绍过毫米波雷达在2D视觉任务上的一些经典网络 自动驾驶中雷达与相机融合的目标检测工作 多模态目标检测 整理 Naca yu的文章 知乎 总结概括而言 其本质上都是对视觉任务的一种提升和辅助 主要的工作在于如何较好
  • 一些官方的github地址

    阿里巴巴开源github地址 https github com alibaba 腾讯开源github地址 https github com Tencent 奇虎360github地址 https github com Qihoo360 小米
  • xss的绕过方式

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 xss的类型以及常用标签 二 xss常用绕过 总结 前言 xss cross site scripting 中文 跨站脚本攻击 常年位于owasp top