有意思的游戏:Google XSS Game

Google最近出了一个XSS的游戏:

https://xss-game.appspot.com/

我这个菜鸟看提示,花了两三个小时才全过了。。

这个游戏的规则是只要在攻击网页上弹出alert窗口就可以了。

题目页面是在iframe里嵌套的展现的,那么父窗口是如何知道iframe里成功弹出了窗口?

是这样子实现的:

题目页面加载了这个js,改写了alert函数,当alert被调用时,向parent发送一个消息。

https://xss-game.appspot.com/static/game-frame.js

/* If we're being iframed, let the parent know our URL */
/* Kids: don't do this at home! */
parent.postMessage(window.location.toString(), "*");

/* Override window.alert */
var originalAlert = window.alert;
window.alert = function(s) {
  parent.postMessage("success", "*");
  setTimeout(function() {
    originalAlert("Congratulations, you executed an alert:\n\n"
      + s + "\n\nYou can now advance to the next level.");
  }, 50);
}

然后父窗口注册了一个EventListener来接收这个消息:

https://xss-game.appspot.com/static/game.js

window.addEventListener("message", function(event) {

  if (!window.location.origin) {
    window.location.origin = window.location.protocol + "//"
        + window.location.hostname
        + (window.location.port ? ':' + window.location.port: '');
  }

  if (event.origin == window.location.origin && event.data == "success") {
    userOpenedAlert = true;
    levelSolved();
    return;
  }

最下面是题目的答案。如果想自己玩游戏的,慎拉下。

题目的答案:

Level1:
<script>alert(1)</script>
Level2:
<input onmouseover="alert(1)">

Level3:

https://xss-game.appspot.com/level3/frame#3.jpg' onload="alert(1)">

Level4:

3');alert('1

Level5:

https://xss-game.appspot.com/level5/frame/signup?next=javascript:alert(1)

Level6:

重点是前面要有一个空格。

​ https://www.google.com/jsapi?callback=alert

游戏过关之后,google给出了一个xss的文档:

https://www.google.com/about/appsecurity/learning/xss/index.html

时间: 2024-09-03 05:34:39

有意思的游戏:Google XSS Game的相关文章

游戏-Google beta testing的相关问题

问题描述 Google beta testing的相关问题 由于自己项目组的游戏没有做OBB分包,想先借用其他组的游戏作google beta testing的调研,了解一下整体流程,但不知道会不会我上传了其他组的游戏导致其他组自己无法上架google play,事关公司利益,还请大神出手相助~

探讨 使用GWT 做一个web游戏。如何设计一个web游戏。

如果要是做一个富客户端的程序. 使用GWT做还是不错的. 想着除了GMail之外.还可以做点什么.发现其实网络游戏貌似可以试验下.   想着在一个web里面要处理多个javascript的代码.而且要效率很好.   最好还要把javaScript和css进行压缩.   并不是直接编写js.速度快就是关键.写完了之后的维护也很重要.   通过java的类的设计和java代码本身的单元测试.在发布GWT应用之前进行单元测试.   而且java的类可以更好的进行语法的校验.和对象的封装.   我是这样

jQuery实现的五子棋游戏实例_jquery

本文实例讲述了jQuery实现的五子棋游戏.分享给大家供大家参考.具体如下: 这是一款非常不错的代码,就是人工智能方面差了一点 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999

玩儿游戏也能学编程?12个学习编程的游戏化平台

近来人们日益认识到编程的重要性,并发现它逐渐成为简历上另一种不可或缺的技能.本文将会介绍一些有助于通过游戏化学习编程的教学平台. 基于以上原因,有越来越多关注未来趋势的人注意到了编程,也因此我们能看到,目前出现了许许多多旨在通过直观有益的方式教授编程的教学平台.为了达成目的,他们采用了游戏化的教学方式. ◆ ◆ ◆ Codecademy 订阅: 免费  语言: HTML/CSS, Python, PHP, Ruby, APIs, Javascript, jQuery 针对级别: 初学者 这个平台

About.me 模式新玩家:“游戏英雄榜” Player.me 开始内测

摘要: 一两年前异常火爆的网络身份证 About.me 可以说开创了一种极简的线上展示方式,除了 About.me 本身的线上个人名片形式之外,其他类似的玩家也开始诞生,比如乐队版的 Onesheet.移动应 一两年前异常火爆的"网络身份证" About.me 可以说开创了一种极简的线上展示方式,除了 About.me 本身的"线上个人名片"形式之外,其他类似的玩家也开始诞生,比如乐队版的 Onesheet.移动应用版的 App.net 等等,而且在 About.m

腾讯资深产品经理谈敏捷开发于游戏

敏捷开发思想谈敏捷的原则 敏捷开发其实并没有标准型的流程.SCRUM也只是众多衍生体中的一个.实际上就算是SCRUM的实际使用也情况千差万别.所以首先,请大家有这么个概念: 敏捷开发绝对不是一套一成不变的标准化流程.而更多的是一种自适应,自我优化的流程优化理念. 并没有一定的流程,而是需要大家有对任何自己觉得不对的,不正确的,效率低下的事情的警觉性,和将之提出来并进一步改正的行动力. 其次,敏捷之于游戏开发,则更要体现人对游戏本身品质的把握,而非对各种文档的审核,这就是和传统软件开发区别最大的地

爱游戏精品指南第53期

忍者下落前言:苹果iPhone资深玩家以及正版软件 用户对于苹果App Store限时免费与冰点降价应用可谓是情有独钟,随着苹果iOS系统平台 应用数量的不断增长,每日的限时免费与冰点降价应用也愈加增多.在这些琳琅 满目的苹果iOS应用中,究竟哪些游戏最好玩呢?就请您关注 蚕豆网开辟的全新栏目--爱游戏精品指南,我们每天都为您推荐最吸引人的苹果iPhone游 戏,帮您节省宝贵的时间与金钱![忍者下落](Ninja Fall Down)水墨风格的动作休闲游戏,考验玩家操作的游戏,规则很简单,控制左

EA首席设计师:免费游戏的成功源于人性弱点

在GCD欧洲上育碧BlueByte工作室的<Settlers Online>首席设计师托伊特 韦德曼(Teut Weidemann)直白地说:"免费网游的成功在于利用了人性的弱点.从本质上讲,发觉了一些可以在玩家身上充分牟利的方面,并在这些方面全力以赴,唯利是图." 作为一个告诫,韦德曼说,最首要的,开发者必须制作有意思的游戏来吸引玩家.然后,一旦有用户在那里,所要做的工作就是将游戏货币化,要不然游戏就无法继续下去.这是一场不寻常的.坦诚的关于如果利用人的心理等一些手段来牟

谷歌招聘游戏产品经理意欲拓展游戏业务

北京时间4月26日上午消息,谷歌周一发布的一则招聘信息显示,该公司正在招募一名游戏产品经理,借此拓展游戏业务. 去年7月曾有报道称,谷歌向美国社交游戏开发商Zynga投资1亿美元,为一款名为谷歌游戏(Google Games)的产品做准备.谷歌甚至还招募了游戏行业元老马克·德罗拉(Mark Deloura),他曾经在育碧(Ubisoft).索尼和任天堂等多家游戏公司任职.不过,在谷歌任职4个月后,德罗拉已经辞职,并出任THQ副总裁. 周一上午,谷歌LinkedIn主页上发布的一条招聘启事显示,该