记录一次有意思的XSS过滤绕过
我的朋友赵一天今晚给我发了一个站,跟我说他xss绕不过去,让我试试。我正好无事,就帮她看看咯。
通过赵一天发我的站点,说实话,我自己学到了很多东西,感谢大佬的教诲。今天分享出来:
站点:xxx.com/sou
当我尝试:
xxx.com/souaaaa
我们查看源码或者f12 Ctrl+f搜索aaaa:
颇为震惊,搜索结果有400多条。。
首先是我们发现第一处利用是<input>标签,下面的都是href=""中利用
继续往下看看aaaa还在哪些标签里面:
下面大部分都是a标签。。
继续往下看:
我们发现aaaa在我们的js中。
ok我们整理好了,我们输入的aaaa在input,a和js中输出了。
现在我们以input元素为例子尝试去xss攻击:
首先我先尝试闭合标签:
然后查看源码:
真刺激,我们输入的>被转义成了全角的>
无法利用了
换个姿势我们还能" onxx=
我们试试:
查看源码:
没有对onxxx进行过滤,庆幸的是咱们可以onxxx
这里就用onmouseover了。那么我们直接 "%20οnmοuseοver=alert(1)"
我们发现没有弹窗。。看看怎么回事吧。。
""(1)""
观察发现,过滤了alert这个弹窗事件,括号变成了中午的括号:
我这里采取的措施:把alert事件改成
过滤了alert
我们尝试其他弹窗方法,confirm和prompt,因为过滤了括号,所以使用``(反引号进行利用):
尝试:
查看源码:
prompt没被过滤掉,反引号被过滤了。。头大了 。
然后我尝试对其进行各种编码再次查看源码:
变成这个样子,现在我们来总结下我们的过滤问题:
1.全局的过滤了(),当攻击者输入()将会转义成中文的括号
2.当攻击者对()进行编码处理直接不显示信息被过滤
3.当攻击者输入>会被转义成全角的>
首先从这里看来我们无法明面上进行弹窗xss了。。
那么我们使用另一种思路
从onxxx=下手
onxxx=内容=<script>内容</script>
我首先选择document节点,因为过滤了()所以我不能document.getElementById(id)肯定会被过滤。。。
那么我现在想加载document还想要不被过滤?怎么做? 选择一个不使用()的不就可以了吗。
我尝试:看看是否可以
除了这种方法我们还有其他办法执行吗?
答案是肯定有:" οnmοuseοver="var ccc=11111;document.body.innerHTML=ccc//
成功闭合
对于xss我们的感觉就是必须得弹窗,这里没弹窗,我们的目标,不弹窗誓不罢休:
我们知道location.hash这个属性
今天我们要讲解一个新知识点,docuemt.URL
document.URL属性包含页面完整的URL比如:{协议}://{用户名}:{密码}@{主机名}:{端口号}/{路径}/{文件}?{参数}
他的功能和location.hash类似,我们可以#xss payload利用:
我们如下:" οnmοuseοver=document.body.innerHTML=document.URL "#<img src=1 οnerrοr=alert(1)>
在最新版本IE下:
为什么我不用var xx=xss payload;document.body.innerHTML=xx是因为<>被转义了。。
现在这是一种弹窗方式,还有一种就是JS下的。
JS下的弹窗,我首选location.href:
简直了到处过滤
没办法了还是使用我们之前的姿势吧:"; document.body.innerHTML=document.URL// #<img src=1 οnerrοr=alert(123)>
JS下利用
记录学习下,蛮有意思的。。。如果有其他思路欢迎留言。
转载于:https://www.cnblogs.com/piaomiaohongchen/p/10084573.html
记录一次有意思的XSS过滤绕过相关推荐
- XSS攻击绕过过滤方法大全(转)
XSS攻击绕过过滤方法大全(约100种) 文章目录 XSS攻击绕过过滤方法大全(约100种) 1.XSS定位器 2.XSS定位器(短) 3.无过滤绕过 4.利用多语言进行过滤绕过 5.通过JavaSc ...
- xss绕过字符过滤_IE8 xss filter bypass (xss过滤器绕过)
简要描述: IE 8 XSS 过滤器绕过.感谢@Sogili牛为本绕过通用性实现上提供的tricks. 详细说明: 1. 在IE8中,可以通过 <?import> + 的方式来构成一个XS ...
- 【Pikachu】漏洞练习平台做题记录+原理解析(2.2)XSS姿势和技巧
前言 Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞. 如果你是一个Web渗透测试学习人员且正发愁没有合适的靶场进行练习,那么Pikachu可能正合你意. pikach ...
- XSS过滤绕过速查表
写在前面: 第一次翻译长篇文档,如有疏漏还请各位大牛指正.OWASP的这篇速查表虽然时间比较久了,但还在更新,所以还是翻译出来了.翻译完发现里面还是有一些值得借鉴的思路,用来涨知识还是可以的.由于篇幅 ...
- XSS插入绕过一些方式总结
0x00前言 我们友情进行XSS检查,偶然跳出个小弹窗,其中我们总结了一些平时可能用到的XSS插入方式,方便我们以后进行快速检查,也提供了一定的思路,其中XSS有反射.存储.DOM这三类,至于具体每个 ...
- xss编码绕过详解(更像是在介绍实体编码和JS编码的解析过程)
xss编码绕过详解(更像是在介绍实体编码和JS编码的解析过程) 注:本文通过研究各种情况下实体编码和JS编码是否生效,进而总结了哪些情况下能够进行编码后,javascript代码依然能够正常执行. 解 ...
- java 防XSS过滤处理过滤器
防止XSS攻击的过滤器 import com.XX.utils.StringUtils;import javax.servlet.*; import javax.servlet.http.HttpSe ...
- (28)【xss工具绕过】xss之burpsuite、前端、字典……
目录 burpsuite抓包 方法一:对数据进行模糊测试 方法二:安装插件,进行xss漏洞检测 XSS Validator 前端绕过 X-frame被忽略情况 原理: 取值: 利用: 使用DOM型XS ...
- spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,定时任务案例...
本文介绍spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,定时任务案例 集成swagger--对于做前后端分离的项目,后端只需要提供接口访问,swagger提供了接口 ...
最新文章
- hibernate教程--常用配置和核心API
- android系统可以破吗,你的手机系统破到什么程度?一键查安卓漏洞
- css划上去变长,Css3如何实现鼠标移上变长特效?(图文+视频)
- html设置数组的方法,js改变原数组的方法有哪些?
- 指针学习4--合成析构函数做了什么
- AcWing 116. 飞行员兄弟(二维指数型枚举)
- 为什么要序列化Serialization
- mysql建表语句转oracle_MYSQL事务他快你慢,都是你自己惹的祸
- linux java 栈_JVM 与 Linux 的内存关系详解
- 服务器系统启用flash,如何在Windows Server 2016中启用Adobe Flash Player
- 十分钟django后台 simpleui -含自定义后台首页
- 写函数,计算传入函数的字符串中,数字、字母、空格 以及 其他内容的个数,并返回结果
- VMware虚拟机中Windows11无法连接网络
- 【图文】实操更换系统盘
- 单元测试(01) 调试过程中遇到 Method isEmpty in android.text.TextUtils not mocked
- hwd分别是长宽高_长宽高是什么意思
- 笔记本高分辨软件兼容问题,字体太小或模糊
- Golang 项目配置文件读取之 viper 实践
- 雄关漫道真如铁,而今迈步从头越【我的2017】
- 【杰理AC695X】7脚屏PWM控制亮度
热门文章
- html实现横向轮播,js实现横向轮播效果
- 学委作业管理系统c语言,c语言大作业-学生信息管理系统.doc
- 计算机监控防误,计算机监控防误操作系统专利_专利申请于2007-10-25_专利查询 - 天眼查...
- SQL Server高级查询之T-SQL编程(存储过程)
- 计算机安装时的用户权限,如何设置win10系统使得电脑在安装软件前需要管理员的权限...
- D进制A+B(20)
- 穿上马甲就没认出polya定理之典型题目手环
- 后缀自动机线性构造方法
- Wannafly挑战赛19:C. 多彩的树(状压+容斥)
- 后缀数组(bzoj 1031: [JSOI2007]字符加密Cipher)