xss过waf的小姿势

今天看大佬的视频学到了几个操作

首先是拆分发可以用self将被过滤的函数进行拆分

如下图我用self将alert拆分成两段依然成功执行

9c6b7e1ac7ca492b86f41c01b2fb30b8.png

 然后学习另一种姿势

<svg id="YWxlcnQoIlhTUyIp"><img src=1 οnerrοr="window['ev'+'al'](atob(document.getElementsByTagName('svg')[0].id))">

这里payload的意思是将eval拆分然后解码执行svg标签里的内容 解读如下

这里img src onerror的意思是加载一个链接加载失败就执行下面的操作

d6d25acf33a74573a5fb5cb186812b21.png

 

然后这个atob()是解码base64

43bd75c6ba3b4ec8bf1b72c5cc13898a.png

可以看见解码出来时alert(xss) 

然后已经知道eval是用来执行操作的window['ev'+'al']是将eval拆分类似self

d526e87786044c5aa1bec52065d8b794.png

c309d947a2ab4ca08a2d291c6cb91438.png 

 self也是同理

f15766e1be714148ae5560de6118aa8f.png

 

现在来分析下面的

(atob(document.getElementsByTagName('svg')[0].id))">

是用什么操作我们用console.log看看他输出的是不是我们理解的意思 这里在payload加上

7c956f83bcaa4951a32bef5016fa0e1b.png

可以看见是和我们想的一样 获取svg第一行第一个id的值然后base64解码 并输出 用eval就可以执行alert的操作

0e4978086c7c44139154f41110ad7332.png

 

接下来这个是用iframe加载伪协议 然后在伪协议增加脏字符来绕过

a28682a5d5bc44e3986cfb40251f9495.png

可以看到这里console.log的内容成功打印出来

这里的脏字符是换行的意思

42f1580083e44ad29c20ee2a2e30180b.png

 

&#13;

这里是将换行符进行ascii码然后再html实体化编码用此脏字符绕过对javascript检测

可以看见这里直接换行是成功也是成功的同理

2b77cd8e7b8a458591e30529b644b9e2.png

也可以将换行符换成tab键 这里tab键加密之后是

&#9;

90ac7b347ff44e41b05358f11dd6763f.png

然后就是师傅写的一个靶场

cce7372587254e2999318d0efad687cd.png

从这里可以看到将括号替换成了空让alert无法执行 然后将内容输出在注释符后 让输出无法执行操作被注释掉 看起来十分的无解

450c79cb501441b3b32b6c4d1c847ae5.png

 

但是解开也十分简单这里直接使用换行符并进行url编码

%0a

然后括号用反引号代替就可以执行操作了

e80af797453341fda7ba2748088c99b0.png

换行之后就可以逃逸掉 注释符了也是一样成功执行 经过今天学习我发现xss绕过方法千奇百怪许多冷门标签等等都可以如果有写错的地方往大佬们纠正 qq3661629617

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/499343.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解Java泛型及其在实际编程中的应用

第1章&#xff1a;泛型的起源与重要性 大家好&#xff0c;我是小黑&#xff0c;在Java里&#xff0c;泛型&#xff08;Generics&#xff09;是一种不可或缺的特性&#xff0c;它允许咱们在编码时使用类型&#xff08;Type&#xff09;作为参数。这听起来可能有点绕&#xff0c…

单细胞Seurat - 细胞聚类(3)

本系列持续更新Seurat单细胞分析教程&#xff0c;欢迎关注&#xff01; 维度确定 为了克服 scRNA-seq 数据的任何单个特征中广泛的技术噪音&#xff0c;Seurat 根据 PCA 分数对细胞进行聚类&#xff0c;每个 PC 本质上代表一个“元特征”&#xff0c;它结合了相关特征集的信息。…

【网站项目】424学报稿件管理系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

ModStartCMS v8.1.0 图片前端压缩,抖音授权登录

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用&#xff0c;支持后台一键快速安装&#xff0c;让开发者能快的实现业务功能开发。 系统完全开源&#xff0c;基于 Apache 2.0 开源协议&#xff0c;免费且不限制商业使用。 功能特性 丰富的模块市…

[LeetCode]143.重排链表

143. 重排链表 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/reorder-list/description/ 题目 示例 解题思路 寻找链表中点 链表逆序 合并链表 注意到目标链表即为将原链表的左半端和反转后的右半端合并后的结果。 这样我们的任务即可划分为三步&a…

React入门之React_使用es5和es6语法渲染和添加class

React入门 //react的核心库 <script src"https://cdn.jsdelivr.net/npm/react17/umd/react.development.js"></script> //react操作dom的核心库&#xff0c;类似于jquery <script src"https://cdn.jsdelivr.net/npm/react-dom17/umd/react-dom.…

微信干货知识分享:自动回复

信息太多回复太慢 回复新好友不及时 号太多&#xff0c;携带多个手机太重 今天给大家分享一下微信的隐藏功能 自动通过好友 有新的好友请求时&#xff0c;系统会自动通过好友&#xff0c;以免处理其他工作时错过客户。 通过好友自动回复 当微信号在系统登录&#xff0c;被动…

adb下载安装及使用教程

adb下载安装及使用教程 一、ADB的介绍1.ADB是什么&#xff1f;2.内容简介3.ADB常用命令1. ADB查看设备2. ADB安装软件3. ADB卸载软件4. ADB登录设备shell5. ADB从电脑上发送文件到设备6. ADB从设备上下载文件到电脑7. ADB显示帮助信息 4.为什么要用ADB 二、ADB的下载1.Windows版…

深度学习 精选笔记(7)前向传播、反向传播和计算图

学习参考&#xff1a; 动手学深度学习2.0Deep-Learning-with-TensorFlow-bookpytorchlightning ①如有冒犯、请联系侵删。 ②已写完的笔记文章会不定时一直修订修改(删、改、增)&#xff0c;以达到集多方教程的精华于一文的目的。 ③非常推荐上面&#xff08;学习参考&#x…

欢迎参与2024年 OpenTiny 开源项目用户调研

&#x1f389; 欢迎参与 OpenTiny 开源项目的用户调研 &#x1f389; &#x1f4e3; 调研背景 随着 OpenTiny 开源项目的不断发展&#xff0c;我们一直致力于为开发者提供高质量的 Web 前端开发解决方案。为了更好地满足用户需求&#xff0c;提升项目的实用性和易用性&#x…

【Maven】Maven 基础教程(二):Maven 的使用

《Maven 基础教程》系列&#xff0c;包含以下 2 篇文章&#xff1a; Maven 基础教程&#xff08;一&#xff09;&#xff1a;基础介绍、开发环境配置Maven 基础教程&#xff08;二&#xff09;&#xff1a;Maven 的使用 &#x1f60a; 如果您觉得这篇文章有用 ✔️ 的话&#…

Sanctuary AI旗下世界上首个采用Carbon驱动的人形通用机器人Phoenix最新演示视频

Phoenix&#xff0c;作为世界上首个采用Carbon驱动的人形通用机器人&#xff0c;展现了一种开创性和独特的AI控制系统&#xff0c;赋予了机器人接近人类的智能水平。这一革命性的Carbon系统能够将自然语言无缝转化为现实世界中的实际行动&#xff0c;从而赋予Phoenix跨足多个行…