xss挑战赛小记 0x03(xssgame)
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的意思是因为会经过模板的渲染 所以可以用实体字符
{用来代替{
{{a=%27constructor%27;b={};a.sub.call.call(b[a].getOwnPropertyDescriptor(b[a].getPrototypeOf(a.sub),a).value,0,%27alert(1)%27)()}}
{{$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)的更多相关文章
- xss挑战赛小记 0x02(prompt(1))
0x0O 上次搜xss挑战赛的时候 还找到了一个看上去难度更高的挑战赛 今天做了一下 学到了很多新东西 这个挑战赛能够在页面成功prompt(1)就算过关了 挑战地址 http://prompt.ml ...
- xss挑战赛小记 0x01(xsstest)
0x00 今天在先知社区看到了一个xss挑战赛 结果发现比赛已经结束 服务器也关了 百度找了个xss挑战赛来玩一下 正好印证下xss的学习--- 地址 http://test.xss.tv/ ...
- 某xss挑战赛闯关笔记
0x0 前言 在sec-news发现先知上师傅monika发了一个xss挑战赛的闯关wp([巨人肩膀上的矮子]XSS挑战之旅---游戏通关攻略(更新至18关)https://xianzhi.aliyu ...
- XSS挑战赛(3)
查看关键代码: <?php ini_set("display_errors", 0); $str = $_GET["keyword"]; $str00 = ...
- XSS挑战赛(2)
进入第六关 简单判断过滤情况 <>script"'/ 查看源代码 可以看到第二个红框部分跟之前类似,闭合双引号尝试进行弹窗 "><script>ale ...
- XSS挑战赛(4)
16-20关 第十六关 关键代码为: <?php ini_set("display_errors", 0); $str = strtolower($_GET["ke ...
- XSS挑战赛(1)
以前囫囵吞枣做过一遍,现在从头再来 第一关网址为:http://127.0.0.1/xss-labs-master/level1.php?name=test 而页面上显示了用户test,name可控, ...
- 先知xss挑战赛学习笔记
xss游戏 游戏地址:http://ec2-13-58-146-2.us-east-2.compute.amazonaws.com/ LEMON参考wp地址 1. 文件上传 源码如下 <?php ...
- 有趣的游戏:Google XSS Game
Google最近出了一XSS游戏: https://xss-game.appspot.com/ 我这个菜鸟看提示,花了两三个小时才全过了.. 这个游戏的规则是仅仅要在攻击网页上弹出alert窗体就能够 ...
随机推荐
- python接口测试-项目实践(七)脚本优化
七 脚本优化:重复代码的提取成函数:与项目接口相关的都封装到一个类中:添加手工验证脚本,增加输入值的判断逻辑 将所有与该项目接口相关的封装成类 class ProjectApi: #3个数据源接口 d ...
- sql server 数据库还原后sa连接不上原因
手动创建了一个同名数据库,然后还原以前或者别人的备份,还原虽然成功了,但是在VS中连接不上,原因可能是: 数据库的所有者中没有添加sa,方法即在数据库名上右击,然后选择文件,在所有者中添加上sa,应该 ...
- (转)python with as的用法
源地址https://www.cnblogs.com/DswCnblog/p/6126588.html With语句是什么? 有一些任务,可能事先需要设置,事后做清理工作.对于这种场景,Python的 ...
- UNIX PIPES 管道原稿
40年前,Unix操作系统横空出世,Unix不仅仅带来了一个操作系统,还创造C语言,Socket,开源,黑客等等文化,这些文化影响着整个计算机世界的文明,直到今天. 如果说Unix是计算机文明中最伟大 ...
- CodeForces 30C Shooting Gallery 简单dp
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qq574857122/article/details/36944227 题目链接:点击打开链接 给定 ...
- MariaDB修改端口号
修改端口号 打开my.ini文件
- js正则判断日期
//****************************************************************************// Function ID : Commo ...
- 【洛谷P3959】[NOIP2017] 宝藏
宝藏 题目链接 首先,打了一个prim,得了45分 #include<iostream> #include<cstring> #include<cstdio> #i ...
- 【luogu P1962 斐波那契数列】 题解
题目链接:https://www.luogu.org/problemnew/show/P1962 给你篇dalao的blog自己看吧,把矩阵快速幂的板子一改就OK #include <algor ...
- 简析--HashCode
内容转载自:http://www.cnblogs.com/szlbm/p/5806226.html 哈希表 在了解HashCode之前,我们先来认识一下哈希表; 散列表(Hash table,也叫哈希 ...