有意思的游戏: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月前
|
SQL 存储 安全
Play Framework的安全面纱:揭开隐藏在优雅代码下的威胁
【8月更文挑战第31天】Play Framework 是一款高效、轻量级的 Web 开发框架,内置多种安全特性,助力开发者构建安全稳定的应用。本文详细介绍 Play 如何防范 SQL 注入、XSS 攻击、CSRF 攻击,并提供安全的密码存储方法及权限管理策略,通过具体示例代码展示实施步骤,助您有效抵御常见威胁。
51 0
|
XML JSON JavaScript
Python实战:获取bing必应壁纸首页的每日一图(仅做学习用)
Python实战:获取bing必应壁纸首页的每日一图(仅做学习用)
272 0
Python实战:获取bing必应壁纸首页的每日一图(仅做学习用)
|
算法 前端开发 小程序
五子棋html游戏代码与算法介绍
五子棋html游戏代码与算法介绍
196 0
五子棋html游戏代码与算法介绍
|
算法 小程序 Java
java GUI记忆纸牌游戏(memorize game)
首先,一个小程序的制作要考虑的首先是程序界面的布局;其次是算法的设计,实现基本功能;然后再添加其他功能。然后就是Bug以及细节的处理;最后就是制作嵌入帮助开发系统。
134 0
|
Web App开发 移动开发 前端开发
2048 根本停不下来的开源HTML5游戏
2048是现在开始火起来的一个HTML5小游戏。这个游戏借鉴了有名的手机游戏1024。
331 0
2048 根本停不下来的开源HTML5游戏
|
BI 开发工具 Android开发
和iPhone玩家对战吧,Google Play游戏服务将支持iOS平台
Google今天在游戏开发者大会上宣布了若干与Google Play游戏服务的相关更新,其中和游戏玩家关系最大的也许就是Google Play Game Services将支持iOS平台,这也就意味着回合制和实时多人游戏将同时支持Android和iOS,以后这两个平台的玩家也就可以互动了。显然,这对于游戏开放商也是个好消息——让原本被割裂的用户参与到同场竞技中来。
307 0
和iPhone玩家对战吧,Google Play游戏服务将支持iOS平台
|
云安全 存储 运维
Life is a game! 年度游戏“黑马”的云上安全
客户企业关键词 2600万 全球玩家 单款游戏收入超 10亿美金 152个国家游戏畅销榜 TOP 1
Life is a game! 年度游戏“黑马”的云上安全
|
Web App开发 JavaScript
Firefox 4网页演示:宣布Web O’Wonder的奇迹
Web’O Wonder   Firefox 4来临,为网站开发人员带来一系列强大功能。   为了列举所有新的技术特征,我们把几种WEB放在一起演示。每周你将看到一对演示版,直到演示火狐4.0。您可以在线观看,在我们有名的新视频网站(Web O’Wonder)看前三个版本的演示。
705 0
|
图形学
Unity游戏开发常用的一些函数用法
Unity游戏开发常用函数 本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) Chinar —— 心分...
1759 0