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窗体就能够 ...
随机推荐
- 关于selenium无法定位动态元素的解决方法
今天在写一个关于登录的自动化脚本时,在对元素定位时总会报下面的错:
- C语言 条件编译(if )
#include <stdio.h> #define NUM -1 int main(int argc, const char * argv[]) { #if NUM > 0 pri ...
- Android(java)学习笔记53:局部内部类
1. 局部内部类 /* 局部内部类 A:可以直接访问外部类的成员 B:在局部位置,可以创建内部类对象,通过对象调用内部类方法,来使用局部内部类功能 面试题: 局部内部类访问局部变量的注意事项? A:局 ...
- 2018.9.17 面试问题-----如何对List集合中的元素进行排序?
Collections对List集合中的数据进行排序 有时候需要对集合中的元素按照一定的规则进行排序,这就需要用到 Java中提供的对集合进行操作的工具类Collections,其中的sort方法 先 ...
- 四、IntelliJ IDEA 之 HelloWorld 项目创建及相关配置文件介绍
咱们通过创建一个 Static Web 项目大致了解了 IntelliJ IDEA 的使用界面,接下来,趁着这个热乎劲,咱们来创建第一个 Java 项目“HelloWorld”,进入如下界面: 如上图 ...
- mybatis学习记录三——SqlMapConfig.xml相关参数详解
5 SqlMapConfig.xml mybatis的全局配置文件SqlMapConfig.xml,配置内容如下: properties(属性) settings(全局配置参数) ty ...
- Android学习笔记_44_apk安装、反编译及防治反编译
一.APK安装 1.首先需要AndroidManifest.xml中加入安装程序权限: <!-- 安装程序权限 --> <uses-permission android:name=& ...
- 【题解】洛谷P1445 [Violet]樱花 (推导+约数和)
洛谷P1445:https://www.luogu.org/problemnew/show/P1445 推导过程 1/x+1/y=1/n! 设y=n!+k(k∈N∗) 1/x+1/(n!+k)=1 ...
- Xshell的使用
1. Xshell 连接 xshell 新建会话,主机地址,填下图中 inner addr 里的地址 然后输入用户名,勾选记住用户名,确定 输入密码 密码输入正确后即可连接成功 ...
- Javascript文件中的控制器II
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...