当前位置:网站首页>XSS测试
XSS测试
2022-08-03 20:58:00 【抱小猫】
目录
实验
level2
我们首先进行<script>alert(1)</script>测试,发现不行

查看代码,可以看见我们上传的代码被包含在双引号里面

我们尝试绕过双引号 :"><script>alert(1)</script><" ,成功了,可以看见双引号被我们闭合了


level3
我们首先尝试level2的绕过方法,果然双引号被限制了,

换成单引号试试呢,成功了


成功的原因:我们查看源码,发现在双引号前面有一个单引号进行闭合操作,且没有对单引号进行编码。所以我们可以使用单引号进行闭合

level4
我们还是先用<script>alert(1)</script>测试一下

可以看出这个页面过滤了尖括号,那我们换一个不用尖括号的onclik测试


测试成功
level5
我们先用aaa" οnclick="alert(1) 和 <script>alert(1)</script> 测试,可以看出这次是将onclick/script函数加上下划线,使其失效


那我们再测试一下尖括号是否过滤,很明显尖括号没有进行过滤

那我们可以尝试换一个不常用的函数进行测试页面是否过滤
如:aa"> <a href="javascript:alter(1)">bbb</a>


为什么这个JavaScript没有被过滤呢,我们需要查看一下源码

原来,源码中过滤script是带上了前面的尖括号,然而JavaScript中script前没有尖括号,所以不符合条件。没有过滤成功,一般使用正则表达式做过滤限制更好。
level6
先使用aaa" οnclick="alert(1) 和 <script>alert(1)</script>测试该页面的规则

可以看出依旧是使用下划线使函数失效,我们继续查看尖括号是否过滤

尖括号没有过滤,我们继续使用a标签尝试绕过

虽然JavaScript没有过滤但是href被过滤了,那怎么办了,我们再试一下大小写是否可以绕过
如:aaa" ONCLICK="alter(1),绕过成功


level7
通过前面几题,我们可以猜到前面的方法应该都不行,我们先试一下aaa" οnclick="alert(1)

可以看出,这个页面去掉了on使其函数失效,这时我们可以尝试双写的方式绕过aaa" oonnclick="alert(1),成功了


level8
我们先测试一下aaa" οnclick="alert(1),发现被过滤了

查看源码可以知道这个过滤了很多可以使用的标签,我们用编码测试一下

我们将javascript:alert(1)进行实体编码后提交,绕过成功了


level9
这个网页需要填含有http://的网址,我们使用百度网页链接测试可以成功,我们还是测试一下是否可以实体编码:javascript:alert(1)//http://,其中在http://前面的//是用于注释掉后面的http://
编码后:javascript:alert(1)//http://
成功了:


level10
首先可以看网页上的代码:

可以看出我们的输入框被隐藏了,我们可以尝试着将type的属性改变一下:keyword=abc&t_link=bcd&T_history=cde&t_sort=def" type="text"

我们将一个输入框显示出来后就可以在后面加上点击事件了:
keyword=abc&t_link=bcd&t_history=cde&t_sort=def" type="text" οnclick="alert(1)

level11
我们首先查看此关卡的限制,可以得到可以提交t_sort的数据被限制了,所以我们尝试使用HTTP_REFERER这个进行绕过
referer:说明了从哪个页面访问的服务

我们首先在referer中提交:bbb" type="text" οnclick="alert(1)
成功了

level12
查看源码,可以发现这个关卡和上一个相似

我们选择在user_agent上提交测试:bbb" type="text" οnclick="alert(1)


level13
查看源码,可以看出此关卡传输cookie中设置了user

所以我们在上传时需要加上user=
user=callme bbb" type="text" οnclick="alert(1)

成功了


边栏推荐
- leetcode 268. Missing Numbers (XOR!!)
- 【使用 Pytorch 实现入门级的人工神经网络】
- 卷起来!阿里高工携 18 位高级架构师耗时 57 天整合的 1658 页面试总结
- 尚医通项目总结
- Edge box + time series database, technology selection behind Midea's digital platform iBuilding
- 9月1日起我国给予多哥等16国98%税目产品零关税待遇
- Linux操作Jmeter(附带:关于连接上redis无法进行写入操作的问题),JMeter配置多用户进行压力测试
- 字节跳动软件测试岗,前两面过了,第三面HR天坑,结局透心凉...
- 华为设备配置VRRP与BFD联动实现快速切换
- Leetcode 125. Verify palindrome string
猜你喜欢

Likou 59 - Spiral Matrix II - Boundary Judgment

5 款漏洞扫描工具:实用、强力、全面(含开源)

小朋友学C语言(1):Hello World

CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统

Often forget HiFlow 】 【 check-in?Use tencent cloud scenario connector to remind you every day.

好朋友离职了,一周面试了20多场,我直呼内行

canvas螺旋动画js特效

太香了! 阿里 Redis 速成笔记, 从头到尾全是精华!

肝完 Alibaba 这份面试通关宝典,我成功拿下今年第 15 个 Offer

Advantages and Disadvantages of Blind and Buried Via PCB Stacked Via Design
随机推荐
小朋友学C语言(3):整数、浮点数、字符
2022/08/03 学习笔记 (day23)多线程(补充)
Why BI software can't handle correlation analysis
461. 汉明距离
Android build error: Plugin with id ‘kotlin-android‘ not found.
2022.8.2
leetcode 072. 求平方根
在树莓派上搭建属于自己的网页(3)
glusterfs build and use
化算力为战力:宁夏中卫的数字化转型启示录
Zero trust, which has been popular for more than ten years, why can't it be implemented?
CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统
2022-8-3 第七组 潘堂智 锁、多线程
idea2021.1.3版本如何启动多个客户端程序
有趣的opencv-记录图片二值化和相似度实现
Five Steps to Detect and Control Shadow IT
ES6解构赋值--数组解构及对象解构
tRNA修饰2-甲基胞嘧啶(m2C)|tRNA修饰m2G (N2-methylguanosine)
基于data.table的tidyverse?
通关剑指 Offer——剑指 Offer II 009. 乘积小于 K 的子数组