XSS Challenge(1)
XSS Challenges
http://xss-quiz.int21h.jp/
Stage #1

注入alert(document.domain),先试一试输入后会返回什么;

返回在标签中,直接尝试输入payload;

Stage #2

测试一下返回;

可以发现,test返回在value属性里,注意闭合value属性的双引号即可;


Stage #3

测试一下返回情况;

通过观察源码我们可以发现一共POST了两个参数,p1和p2,通过测试发现p1被过滤了,于是用burp修改p2的值;


Stage #4

先测试一下返回;

发现有个隐藏的参数p3,尝试注入payload;

发现p3的值返回在value属性中,重新POST p3的参数,注意闭合双引号即可;


Stage #5


查看源码发现对输入的长度做了限制;
直接用burp传递参数即可;


Stage #6

先测试一下返回情况;

发现返回在value属性中,注意闭合;

发现未成功,查看源码,发现<、>被编码了,于是我们就无法闭合标签了,那么input标签里是否有什么可以利用的属性呢?

这些都是form中的属性,我们这里选onselect尝试注入;


注入成功,当我们选中表单的时候,就会触发payload;

Stage #7

测试返回;

发现返回在value属性中,尝试注入;


发现引号被过滤了,但是本身的value属性不带引号,那么我们不用引号即可;


Stage #8

测试一下返回;

发现返回了一个<a href></a>的标签,直接尝试注入payload;

点击链接;

Stage #9

测试返回;

可以注意到有两个参数,其中一个是p1,返回值在value里,经过测试引号、<、>等均被过滤,另一个参数charset,值为euc-jp,可以看出是一种日本的编码,这道题应该和编码相关;
自己想了很久没有头绪,去看看本题提示;

原来是要用UTF-7编码;


Stage #10

Hint:提示的意思应该是正则把domain过滤了;
那可以尝试双写绕过,先测试返回在何处;

返回在value里,注意闭合双引号;


Stage #11

Hint:过滤了script,on开头的和style;
经测试结果返回在value属性中;

由于过滤规则是将带on的词变成onxxx,所以双写没法绕过;
在script当中加tab绕过;


Stage #12

Hint:x00、x20、<、>、”、’等均被过滤;
因为返回值在value中,所以必须要先闭合引号才有用,然而现在双引号和单引号均被过滤,经过我花了很长时间的搜索,发现`在IE中可以充当引号的作用!


(未完待续~)
XSS Challenge(1)的更多相关文章
- XSS Challenge(2)
XSS Challenges http://xss-quiz.int21h.jp/ Stage #13 Hint:style attribute:要用到style属性,在style属性中有个expre ...
- xss框架(二)基础框架实现
简述 自上一篇博客介绍浏览器通信以来已经过去将近两个月了,兜兜转转挖了不少坑,也走了很多弯路.期间研究saml2.0和单点登录等技术都最后无疾而终. 只有xss框架这部分坚持了下来,这个框架还有很多事 ...
- xss攻击(跨站脚本)
原理跨站脚本(Cross site script,简称xss)是一种“HTML注入”,由于攻击的脚本多数时候是跨域的,所以称之为“跨域脚本”. 我们常常听到“注入”(Injection),如SQL注入 ...
- xss 学习(一)
存储型 .反射型.DOM 型这是最常见的三种分类: 存储型存储型XSS也叫持久型XSS,存储的意思就是Payload是有经过存储的,当一个页面存在存储型XSS的时候,XSS注入成功后,那么每次访问该页 ...
- XSS攻击(笔记)
XSS攻击 XSS概述 XSS即跨站脚本攻击,(Cross-Site Scripting, CSS),但是为了与层叠样式表(Cascading Style Sheets, CSS)缩写区分开来,所以命 ...
- hdu 6127---Hard challenge(思维)
题目链接 Problem Description There are n points on the plane, and the ith points has a value vali, and i ...
- XSS事件(一)
前言 最近做的一个项目因为安全审计需要,需要做安全改造.其中自然就包括XSS和CSRF漏洞安全整改.关于这两个网络安全漏洞的详细说明,可以参照我本篇博客最后的参考链接.当然,我这里并不是想写一篇安 ...
- XSS挑战赛(2)
进入第六关 简单判断过滤情况 <>script"'/ 查看源代码 可以看到第二个红框部分跟之前类似,闭合双引号尝试进行弹窗 "><script>ale ...
- XSS漏洞(跨站脚本)
不要轻信用户提交上来的数据alert消息太难看,因此开发一个aspx页面用来统一展示消息ShowMessage.ashx //主页将判断重定向到另一个页面 if (TextBox1.Text != & ...
随机推荐
- Java 类加载器解析及常见类加载问题
Java 类加载器解析及常见类加载问题 java.lang.ClassLoader 每个类加载器本身也是个对象--一个继承 java.lang.ClassLoader 的实例.每个类被其中一个实例加载 ...
- 详谈XSS防御方法
1.HttpOnly 严格的说,httponly并非为了对抗XSS,它解决的是XSS后的Cookie劫持攻击.Cookie设置了httponly之后,JavaScript读不到该cookie的值. ...
- docker中MySQL镜像数据,日志,配置持久化
Docker的MySQL8镜像, 实行数据持久化 version: '3.1' services: mysql-itoken-service-admin: restart: always image: ...
- PTA数据结构与算法题目集(中文) 7-3
PTA数据结构与算法题目集(中文) 7-3 树的同构 给定两棵树T1和T2.如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的.例如图1给出的两棵树就是同构的,因为我们把其中一 ...
- shell编写一个批量添加用户脚本
shell编写一个批量添加用户脚本 5.1问题 本例要求在虚拟机server0上创建/roo ...
- 【JavaScript】js02
正则对象. 声明: //var reg = new RegExp('', '');// i,g 修正符. // i,不区分大小写,g 全局匹配. //var reg = /\w/i; 方法: //ex ...
- 使用tap、Fragment等相关相关知识点。实现类似微信的界面
实验结果,可以实现通过左右活动来切换不同的界面.也可以通过点击不同的下方按钮来实现切换不同的界面. 自己也添加了相关的自己编写的小页面来展示相关的效果.主要的是对于碎片Fragment对于tap的相关 ...
- Python 1基础语法三(变量和标识符的区别)
一.字面量: 就是一个一个的值,如1.2.3.‘world’,就是它自己本身表达的字面值.字面意思,在程序中可以直接使用. 二.变量(variable): 可以用来保存字面量,变量本身没有任何意思:如 ...
- 7.2 java 类的定义和使用
/* * 类的定义: * 类是用来描述现实世界的事物的 * * 事物: * 属性 事物的描述信息 * 行为 事物能够做什么 * * 类是如何和事物进行对应的呢? * 类: * 成员变量 * 成员方法 ...
- Tomorrow - 地形生成(1)
原理很简单,请不要喷. 效果展示 种子输入框 种子为12345的地形 种子为23456的地形 代码展示 globalvar map random_set_seed(real(get_string ...