0x00

继续做xss吧

这次是xssgame

地址 http://www.xssgame.com/

一共八关 学到了很多东西

0x01

啥也没有

<svg/onload="alert(1)">

0x02

显然是这个点了

');alert(1)('       就行了  多个属性用分号间隔

换行回车也行

0x03

换图片的时候发现#1 这个东西 找了下显然是这个点

双引号没有成功 试了下单引号

#1.jpg' onload="alert(1)"  然后就是这样了

0x04

welcomewelcome下有个sign up  点击到singup下  signup?next=confirm 输入email之后到confirm下 自动跳转 confirm?next=welcome

一直是这样的循环  confirm下是一个自动跳转到welcome的

想到了伪协议 javascript:alert(1) 这就弹了

0x05

发现表单里还有两个隐藏的input

但是输入好像都不行

没辙看了wp 发现是一个angular js模板注入

ng-non-bindable这个下所有的属性都不会解析怪不得怎么闭合都没用

在campaign这个参数下

google出来的payload

{{x = {'y':''.constructor.prototype}; x['y'].charAt=[].join;$eval('x=alert(1)');}} 不能弹

但是wp给的payload可以

{{$eval(%27alert(1)%27)}}

两个隐藏的input的name参数都可以弹

0x06

还是angular模板 找了对应版本的注入payload

发现不行

单引号被转为实体字符了

试了一下get发送参数 发现会显示在form上

但是{会被吃掉

wp的意思是因为会经过模板的渲染 所以可以用实体字符

&lcub;用来代替{

&lcub;&lcub;a=%27constructor%27;b=&lcub;};a.sub.call.call(b[a].getOwnPropertyDescriptor(b[a].getPrototypeOf(a.sub),a).value,0,%27alert(1)%27)()}}

&lcub;&lcub;$eval(%27alert(1)%27)}}

0x07

这道题说的是csp的绕过

Content-Security-Policy:default-src http://www.xssgame.com/f/d9u16LTxchEi/ http://www.xssgame.com/static/

观察页面 可见?menu=YWJvdXQ=  后面的参数会被base64解码

<script src="jsonp?menu=about"></script>这个东西就比较有意思了

搜了一下jsonp xss 提到了jsonp有个callback这个参数可能导致xss

传参给menu经过base加密的就好了

<script src="jsonp?callback=alert(1)"></script>

0x08

csp和前一题没有区别

有两个表单发给不同的地方 set和transfer

transfer的amount参数要求为数字 如果不为数字则会被显示

像是一个xss的点

插入xss代码发现不允许弹框 因为csrf_token的问题

仔细观察可以发现set表单下有些东西

首先可以设置name

同时设置的东西是存在cookie里面的

这样就可以控制csrf_token

其次redirect是控制跳转的

这样就可以通过设置csrf_token然后跳转到transfer下弹框

set?name=csrf_token&value=xx&redirect=transfer?name=attacker&amount=xxx"><script>alert(1)</script>&csrf_token=xx

但是不知道为啥 如果符号不经过url编码就不能成功

0x0X

这次其实还是一般参考了wp

暂时也只能做得出来简单的xss了

但是还是学习了一些新的姿势

xss挑战赛小记 0x03(xssgame)的更多相关文章

  1. xss挑战赛小记 0x02(prompt(1))

    0x0O 上次搜xss挑战赛的时候 还找到了一个看上去难度更高的挑战赛 今天做了一下 学到了很多新东西 这个挑战赛能够在页面成功prompt(1)就算过关了 挑战地址 http://prompt.ml ...

  2. xss挑战赛小记 0x01(xsstest)

    0x00 今天在先知社区看到了一个xss挑战赛 结果发现比赛已经结束 服务器也关了 百度找了个xss挑战赛来玩一下 正好印证下xss的学习--- 地址     http://test.xss.tv/ ...

  3. 某xss挑战赛闯关笔记

    0x0 前言 在sec-news发现先知上师傅monika发了一个xss挑战赛的闯关wp([巨人肩膀上的矮子]XSS挑战之旅---游戏通关攻略(更新至18关)https://xianzhi.aliyu ...

  4. XSS挑战赛(3)

    查看关键代码: <?php ini_set("display_errors", 0); $str = $_GET["keyword"]; $str00 = ...

  5. XSS挑战赛(2)

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

  6. XSS挑战赛(4)

    16-20关 第十六关 关键代码为: <?php ini_set("display_errors", 0); $str = strtolower($_GET["ke ...

  7. XSS挑战赛(1)

    以前囫囵吞枣做过一遍,现在从头再来 第一关网址为:http://127.0.0.1/xss-labs-master/level1.php?name=test 而页面上显示了用户test,name可控, ...

  8. 先知xss挑战赛学习笔记

    xss游戏 游戏地址:http://ec2-13-58-146-2.us-east-2.compute.amazonaws.com/ LEMON参考wp地址 1. 文件上传 源码如下 <?php ...

  9. 有趣的游戏:Google XSS Game

    Google最近出了一XSS游戏: https://xss-game.appspot.com/ 我这个菜鸟看提示,花了两三个小时才全过了.. 这个游戏的规则是仅仅要在攻击网页上弹出alert窗体就能够 ...

随机推荐

  1. March 17 2017 Week 11 Friday

    Simplicity is the ultimate sophistication. 简约才是精巧到了极致. Recently I have spent a great number of time ...

  2. 解决svn中“工作副本已经锁定”,或者svn清理失败的解决方法

    刚开始遇到这个问题还以为是没有插网线的原因,客户端和服务器都在我的电脑上,但是更新和提交都执行不了,以为是没有插网线就没把这个小问题放在心上,今早上还是这样,就不得不解决一下了. 更新或者提交前要执行 ...

  3. 用户级线程demo

    http://blog.csdn.net/dabing69221/article/details/17426953 前言: 前几天复习了一下多线程,发现有许多网上讲的都很抽象,所以,自己把网上的一些案 ...

  4. SQL SERVER启动时间

    select sqlserver_start_time,* from sys.dm_os_sys_info

  5. centos 6.6 下yum安装部署zabbix2.4所遇到web安装页面无法打开的问题

    nginx配置zabbix下setup.php(web页面)无法显示,浏览器无法打开 1.检查系统是否安装nginx,以便解析html 已安装,安装方式为yum安装,可以解析其他页面 2.php没有完 ...

  6. [19/03/13-星期三] 数组_二维数组&冒泡排序&二分查找

    一.二维数组 多维数组可以看成以数组为元素的数组.可以有二维.三维.甚至更多维数组,但是实际开发中用的非常少.最多到二维数组(我们一般使用容器代替,二维数组用的都很少). [代码示例] import ...

  7. selenium定位学习回顾

    之前已经专门学过了定位,但后来因为浏览器比较方便,可以直接复制xpath和css进行定位,个人觉得自己快遗忘了这块,所以专门来回顾一下, 顺便记录一下,以便后期查看. 进行web页面自动化测试,对页面 ...

  8. EntityFrameWork简单操作 EF数据上下文对象操作数据增删改差及批处理

    /// <summary> /// EF针对 留言数据库 的 数据上下文对象!!!! /// </summary> static LeaveWordBoradEntities ...

  9. C# Response 下载

    //TransmitFile实现下载 protected void Button1_Click(object sender, EventArgs e) { /* 微软为Response对象提供了一个新 ...

  10. Es6的那些事

    现在看招聘网站上的要求,作为前端er~都要熟悉甚至精通(滑稽脸)es6,项目中也经常用,啥let,const,尤其是用react的同学,肯定对解构赋值不会陌生,今天逛淘宝前端的博客,看到一篇名为Es6 ...