XSS Challenges

http://xss-quiz.int21h.jp/

Stage #13

  Hint:style attribute;要用到style属性,在style属性中有个expression属性可以来完成,但是只能是IE6以下的浏览器才支持;

  将浏览器切换到IE5兼容模式,然后输入payload

Stage #14

  Hint:对url、script、eval、expression做了过滤,将这些单词转换成xxx,我们无法通过大小写、双写绕过,但是可以用注释绕过;

Stage #15

  Hint:document.write();

  查看返回;

  发现直接返回在<script>标签中,直接输入payload;

  查看源码发现<、>被编码了,因为返回直接是在script标签中,所以我们可以通过编码绕过,script可以执行编码过的内容,这里我们采用unicode编码;

Stage #16

  Hint:多了一个过滤,将\x转换成\\x;好像我之前的方法同样适用;

Stage #17

  Hint:多字节字符以及要用旧版IE,先测试一下返回;

  两个参数均返回在value属性中,注意闭合引号;

  发现引号被过滤,<、>也均被过滤,那么考虑直接用onmouseover等属性来代替<、>,根据提示本题存在宽字节漏洞,又因为本题存在两个参数,那么我们将第一个value的后面的引号用宽字节吃掉,后面的value的第一个引号就会变成第一个value第一个引号的闭合引号,我们直接在第二个参数输入payload即可;

  发现未成功,原理应该是对的,此处可能是IE版本的缘故;

Stage #18

  Hint:ascii高比特位的问题,去查了一下原来在IE8之前,浏览器会将8位的二进制只取7位来解释!先测试一下返回;

  返回在value属性中,先试一下正常闭合引号的payload;

  可以发现引号、<、>均被过滤了,那么我们试着改变其ASCII码的高位;

  • <的16进制是3C,二进制是0011 1100,那么将高位的0改成1后变成1011 1100,即BC;
  • >同理变成BE;
  • “同理变成A2;

  最后因为IE版本的问题并没有成功;

  END~

XSS Challenge(2)的更多相关文章

  1. XSS Challenge(1)

    XSS Challenges http://xss-quiz.int21h.jp/ Stage #1 注入alert(document.domain),先试一试输入后会返回什么: 返回在标签中,直接尝 ...

  2. xss框架(二)基础框架实现

    简述 自上一篇博客介绍浏览器通信以来已经过去将近两个月了,兜兜转转挖了不少坑,也走了很多弯路.期间研究saml2.0和单点登录等技术都最后无疾而终. 只有xss框架这部分坚持了下来,这个框架还有很多事 ...

  3. xss攻击(跨站脚本)

    原理跨站脚本(Cross site script,简称xss)是一种“HTML注入”,由于攻击的脚本多数时候是跨域的,所以称之为“跨域脚本”. 我们常常听到“注入”(Injection),如SQL注入 ...

  4. xss 学习(一)

    存储型 .反射型.DOM 型这是最常见的三种分类: 存储型存储型XSS也叫持久型XSS,存储的意思就是Payload是有经过存储的,当一个页面存在存储型XSS的时候,XSS注入成功后,那么每次访问该页 ...

  5. XSS攻击(笔记)

    XSS攻击 XSS概述 XSS即跨站脚本攻击,(Cross-Site Scripting, CSS),但是为了与层叠样式表(Cascading Style Sheets, CSS)缩写区分开来,所以命 ...

  6. hdu 6127---Hard challenge(思维)

    题目链接 Problem Description There are n points on the plane, and the ith points has a value vali, and i ...

  7. XSS事件(一)

    前言 ​ 最近做的一个项目因为安全审计需要,需要做安全改造.其中自然就包括XSS和CSRF漏洞安全整改.关于这两个网络安全漏洞的详细说明,可以参照我本篇博客最后的参考链接.当然,我这里并不是想写一篇安 ...

  8. XSS挑战赛(2)

    进入第六关 简单判断过滤情况 <>script"'/ 查看源代码 可以看到第二个红框部分跟之前类似,闭合双引号尝试进行弹窗 "><script>ale ...

  9. XSS漏洞(跨站脚本)

    不要轻信用户提交上来的数据alert消息太难看,因此开发一个aspx页面用来统一展示消息ShowMessage.ashx //主页将判断重定向到另一个页面 if (TextBox1.Text != & ...

随机推荐

  1. JUnit白盒测试之基本路径测试:三次找到假球

    前言 记录一次软件测试课程的课后作业,作业内容是白盒测试中的基本路径测试,步骤如下 分析程序的控制流 计算环形复杂度 找出基本路径 设计测试用例 执行测试用例(要求使用JUnit) 作业要求 使用白盒 ...

  2. 关于swift使用CocoaPods倒入三方库的framework后父类倒入子类无法继承的问题

    今天开发项目的时候遇到这么一个问题在使用cocoapods倒入了三方库后我在BaseController中倒入三方库,其余controller继承自basecontroller,然而在继承的子类中无法 ...

  3. dis反汇编查看实现

    dis库是python(默认的CPython)自带的一个库,可以用来分析字节码 >>> import dis >>> def add(a, b = 0): ... ...

  4. 1047 Student List for Course (25分)

    Zhejiang University has 40,000 students and provides 2,500 courses. Now given the registered course ...

  5. Nginx知多少系列之(五)Linux下托管.NET Core项目

    目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...

  6. Java第二天,类的概念,属性和方法的使用

    上文中我们已近说到过了,Java是一种面向对象的编程语言,对象是用类来创建的,就比如世界上有无数个父亲,但是他们都有一个共同的属性--男人.也就是说某个父亲这个对象属于男人这个类.类是Java必不可少 ...

  7. postman 工具接口测试

    一.get:请求多个参数时,需要用&连接 eg:http://api.***.cn/api/user/stu_info?stu_name=小黑&set=女   eg:接口请求参数放在b ...

  8. 28.5 Integer-- int的包装类

    * 由于基本数据类型只能做一些简单的操作和运算,所以Java为我们封装了基本数据类型,为每种基本数据类型提供了包装类 * 包装类就是封装了基本数据类型的类,为我们提供了更多复杂的方法和一些变量 * * ...

  9. Error: opening registry key 'Software\JavaSoft\Java Runtime Environment' could not find java.dll

    Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'Error: could not find java.d ...

  10. Apache SkyWalking

    Apache SkyWalking 什么是 SkyWalking SkyWalking 是观察性分析平台和应用性能管理系统. 提供分布式追踪.服务网格遥测分析.度量聚合和可视化一体化解决方案. 支持J ...