首页 > 其他分享 >Web系列-前端游戏

Web系列-前端游戏

时间:2024-05-26 22:44:16浏览次数:16  
标签:Web 游戏 gameScore 前端 xhr 地址 web

Web系列-前端游戏

在CTF比赛web题目中,出题人为了添加趣味性,常有将web小游戏作为题目的,本篇博客会将自己遇到的web前端游戏题目记录在这里。

[NewStarCTF 2023 公开赛道]游戏高手

是一个飞机大战的游戏

image-20240524162709035

题目说100000分就给flag,F12看看游戏游戏代码

image-20240524163437607

在app_v2.js中找到关键代码

//游戏结束
function gameover(){
    if(gameScore > 100000){
        var xhr = new XMLHttpRequest();
        xhr.open("POST", "/api.php", true);
        xhr.setRequestHeader("Content-Type", "application/json");
        xhr.onreadystatechange = function() {
        if (xhr.readyState === 4 && xhr.status === 200) {
            var response = JSON.parse(xhr.responseText);
            alert(response.message);
        }
        };
        var data = {
            score: gameScore,
        };
        xhr.send(JSON.stringify(data));
    }
	alert("成绩:"+gameScore);
	gameScore=0;  
	curPhase =PHASE_READY;  
	hero = null;
	hero = new Hero();  	    
}

在第一个if函数下一个断点

image-20240524165721767

用控制台修改一下gameScore的值

image-20240524165836551

看一下此时的gameScore

image-20240524165935325

让程序再次跑起来,就会弹出flag

image-20240524170031502

flag{b68271de-e57f-43e2-b8df-d08b3e5ca6ee}

这道题比较简单,应该是个签到题。

第九届中海洋心安竞赛-贪吃蛇

web页面中的贪吃蛇小游戏

image-20240524171634632

F12查看一些源代码,发现了wasm

image-20240524172007586

这里来了解一下wasm:Wasm,即 WebAssembly,是一种二进制指令格式,旨在作为一种高效的、适用于多种编程语言的编译目标,使其能够在现代Web浏览器中运行。WebAssembly 的出现为在 Web 上运行复杂、高性能的应用提供了新的可能性,补充了 JavaScript 在某些场景下的不足。

官方wp说这个题用CE能做,但是我试了几次,找不到关键数据。

还是用Cetus,针对 WebAssembly 应用的作弊器:https://github.com/Qwokka/Cetus

image-20240524173525605

此时score是0,用Cetus搜索0,CO选择EQ,EQ是等于的意思,也就是搜在内存中,值为0的地址,这里可以看道搜到292121个结果。

这时候我们得一分,再筛选这292121个地址上的值为1的地址。

image-20240524173915994

可以看道此时只剩下124个地址了。再次得一分,再次筛选此时值为2的地址。

image-20240524174005208

只剩下两个地址了,把这两个地址添加到bookmarks中,进行修改

image-20240524174117709

可以看到当我们修改了之后flag就出来了

2024年5月26日


标签:Web,游戏,gameScore,前端,xhr,地址,web
From: https://www.cnblogs.com/xiaochange/p/18214454

相关文章

  • Render Web Content in Native
    RenderWebContentinNativePowerShellStudio2024streamlinesembeddingmodernwebcontentwithenhancedWebView2support,includingimproveddesignertools.PowerShellStudiobySAPIENisanIntegratedScriptingEnvironment(ISE)designedspecif......
  • 无界(wujie)微前端子应用elementUI时,dialog中使用Select、TimePicker等组件,弹出框位置
    无界(wujie)微前端子应用elementUI时,dialog中使用Select、TimePicker等组件,弹出框位置可能会异常,如图:解决方法参考:public/index.html文件1、body中加style="position:relative"2、script中加if(window.__POWERED_BY_WUJIE__){Document.documentElement.classList.add(“i......
  • 流式响应Web小工具实践
    作为一位拥有多年经验的老程序员,我对于提升Web应用性能和用户体验有些兴趣。今天,我要和大家聊聊一个非常实用的技术——流式响应(StreamingResponse)。首先,流式响应到底是什么呢?简单来说,它允许服务器将数据逐步发送给客户端,而不是等到所有数据都准备好后再一次性发送。这种方式非......
  • 【免费Web系列】大家好 ,今天是Web课程的第六天点赞收藏关注,持续更新作品 !
        这是Web第一天的课程大家可以传送过去学习 http://t.csdnimg.cn/K547r后端Web实战(IOC+DI)前言Web开发的基础知识,包括Tomcat、Servlet、HTTP协议等,我们都已经学习完毕了,那接下来,我们就要进入Web开发的实战篇。在实战篇中,我们将通过一个案例,来讲解Web开发的核心......
  • (读后分享)移动Web前端高效开发实战:HTML 5 + CSS 3 + JavaScript + Webpack + React Nat
    链接:pan.baidu.com/s/1tIHXj9HmIYojAHqje09DTA?pwd=jqso提取码:jqsoHTML5新特性与应用:介绍HTML5的新特性,包括语义化标签、本地存储、设备兼容、连接特性等,并讲解如何在移动Web前端开发中充分利用这些特性提升用户体验。CSS3样式与动画设计:详细讲解CSS3的样式设计和动画效果,包......
  • springmvc 前端向后端发送http请求报错“HTTP状态 405 - 方法不允许”
    如图我使用前端向后端发送文件时报错,405方法不允许,于是我就检查了前后端的method方法设置是否一致?  检查后发现明明前后端请求方式一致,都是post遵循文件上传的方式。这个问题令我十分苦恼,最后发现原来是前端提交form表单时设置的选项之间存在逗号,原则是每一项之间都不应......
  • 地下城游戏(leetcode)
    个人主页:Lei宝啊 愿所有美好如期而遇地下城游戏https://leetcode.cn/problems/dungeon-game/description/图解+分析:代码classSolution{public:intcalculateMinimumHP(vector<vector<int>>&vv){introw=vv.size(),col=vv[0].size();......
  • WebGIS开发常见的开源框架及其区别与联系
    WebGIS(网络地理信息系统)是指工作在Web网上的GIS,是传统的GIS在网络上的延伸和发展,具有传统GIS的特点,可以实现空间数据的检索、查询、制图输出、编辑等GIS基本功能,同时也是Internet上地理信息发布、共享和交流协作的基础。简单来说,WebGIS即是Web+GIS,可以通过浏览器进行GIS数据处......
  • 前端性能优化总结
    1.图片懒加载原理  图片懒加载也叫延迟加载,只加载当前屏幕的图片,可视区域外的图片不会进行加载,只有当屏幕滚动的时候才加载。特点:提高网页加载速度减少后台服务器压力提升用户体验原理:将图片地址存储到data-xxx属性上判断图片是否在可视区域如果在,就设置图片src绑定......
  • 快速上手Flask:构建轻量级Web应用的完整指南
    ......