xss过waf的小姿势

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

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

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

然后学习另一种姿势

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

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

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

然后这个atob()是解码base64

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

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

self也是同理

现在来分析下面的

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

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

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

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

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

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

&#13;

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

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

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

&#9;

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

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

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

%0a

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

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

相关推荐
青山是哪个青山12 小时前
LangChain 学习笔记(四):Message 与提示词模板
笔记·学习·langchain
hsjiasb13 小时前
FreeRTOS学习(二十六)——动态内存管理heap_1到heap_5
stm32·单片机·学习·学习笔记·freertos
崇子嵘13 小时前
基于zynqMP15eg的linux驱动学习
学习
知识分享小能手15 小时前
线性代数学习教程,从入门到精通,向量组的线性相关性 — 完整知识点梳理(7)
学习·线性代数·机器学习
上海安当技术15 小时前
诊断接入认证:安当CAS如何堵住汽车网络安全的物理后门
网络·web安全·汽车·access·secure·安当cas·诊断接入认证
ze^015 小时前
【软考信息安全】第2章 网络攻击原理与常用方法
网络·web安全·网络安全
Shell运维手记15 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
FakeOccupational16 小时前
【电路笔记 STM32】Cortex-M7 内核上的数据缓存(D-Cache)结构+MPU+DMA&Cache+STM32CubeMX配置
笔记·stm32·缓存
动词ing16 小时前
【学习笔记】C语言(数组指针与指针数组+字符数组+函数+参数传递+字符串作为形参+递归函数+指针函数+回调函数+结构体嵌套+内存动态分配函数)
c语言·笔记·学习
云水一下18 小时前
零基础玩转bWAPP靶场(四十六):XSS - Reflected (AJAX/JSON)
web安全·ajax·json·xss·bwapp·reflected