CTF--game1

一、原题:

二、步骤:

1.先打开Burp Suite,然后玩一轮游戏先:

2.查看游戏结束时该页面的Burp Suite抓包:

发现该URL中,socre=50,sign=zMNTA===

猜测zMNTA===为BASE64加密

3.对zMNTA为===进行BASE64解密:

未解密成功

4.查看游戏结束时该页面的源码:

发现上图红色框住的几段代码,的确是进行了Base64加密

var sign = Base64.encode(score.toString());

这行代码的作用:是将一个名为 score 的变量值进行 Base64 编码,并将结果存储在 sign 变量中

因此猜测是对score进行了Base64加密

5.对score进行Base64加密:

50的Base64加密为:NTA=

而sign为:zMNTA===

因此猜测sign是由zM、score的密文、==组成

6.构造新的URL:

①将score改为99999,对99999进行Base64加密:

score=99999

sign=zMOTk5OTk===

②新旧URL页面:

(1)旧的URL:

http://117.72.52.127:19903/score.php?score=50&ip=120.231.107.210&sign=zMNTA===

(2)新的URL:

http://117.72.52.127:19903/score.php?score=99999&ip=120.231.107.210&sign=zMOTk5OTk===

7.得到flag:flag{66437a570e2dae3446f1480344c982fb}

三、一些思路

该题是一个小游戏,游戏目的不就是要闯关成功吗?如何闯关成功呢?作者无任何提示,那么默认其分数需要达到一个上限值,也就是最高分。

如果选择跑脚本,就可以发现游戏分数达到3000即闯关成功。此处的99999远远超过3000,因此该分数也可视为闯关成功。

所以我们要对score进行修改,而在URL中,还发现了一个Base64加密,也与score息息相关。

故此题的关键点为:score,Base64

四、相关知识点:

基础编码系列:从Base16到Base100的加密与转换原理-优快云博客

<think>好的,用户正在寻找关于Bugku CTF Game1的解题思路或writeup。首先,我需要回忆一下这个题目的相关信息。记得Bugku的题目通常涉及Web安全、逆向工程、密码学等方向,但具体到Game1可能需要进一步确认。根据用户提供的参考引用,特别是引用[2]提到了访问链接http://120.24.86.145:8006/test/1p.html并利用Burp Suite抓包,这可能与Web类的题目有关,比如HTTP头注入、参数篡改或XSS等。 接下来,我需要检查用户提供的引用内容是否有直接相关的信息。引用[2]提到使用Burp Suite拦截跳转到主站的请求,这可能涉及检查HTTP响应头、重定向问题或隐藏参数。引用[3]涉及XSS利用,但不确定是否与Game1直接相关。可能需要考虑题目是否涉及用户代理(User-Agent)篡改或类似的技巧。 另外,用户提供的引用[1]是关于WHUCTF的writeup,可能不直接相关,但CTF的解题方法可能有共通之处。例如,快速排序的例子中提到的分治思想可能在逆向工程中有所应用,但这里可能需要更具体的Web解题步骤。 可能的解题步骤包括:访问题目链接,查看页面源代码寻找注释或隐藏表单;使用工具如Burp Suite拦截请求,检查响应头或Cookie中的线索;尝试参数篡改,比如GET或POST参数;检查是否有JavaScript代码混淆需要解密;或者涉及编码转换,如Base64、十六进制等。 需要确保回答的结构清晰,分步骤引导用户,并引用相关资源。同时,根据用户提供的引用,引用[2]中的Burp Suite抓包是关键步骤,可能涉及拦截后修改请求或分析响应。此外,可能存在需要绕过某种验证或利用特定漏洞的情况,比如修改Referer头或User-Agent来获取flag。 最后,生成相关问题时要围绕CTF解题常见方法,如工具使用、漏洞类型、调试技巧等,帮助用户进一步深入学习。</think>关于Bugku CTF Game1的解题思路,根据已有公开的Writeup和CTF常见技巧,以下是关键分析步骤: ### 一、题目特征与初步分析 1. **题目类型判断** 根据引用[2]中提到的HTTP跳转和Burp Suite抓包操作,可推测该题属于**Web安全类题目**,可能涉及HTTP协议操作、参数篡改或响应头分析。 2. **工具准备** - 使用浏览器开发者工具(F12)查看网页源码、网络请求 - 通过Burp Suite拦截HTTP请求/响应[^2] - 编码工具(如CyberChef)处理Base64/十六进制数据 --- ### 二、关键解题步骤 1. **访问初始链接** 打开题目链接(如`http://xxx.xxx.xxx/test/1p.html`)后,页面可能直接跳转至其他地址。此时需要: - 通过Burp Suite拦截响应包 - 检查响应头中的`Location`字段或HTML中的JavaScript跳转代码 2. **绕过跳转限制** 在拦截的响应中寻找以下可能性: ```http HTTP/1.1 302 Found Location: /mainpage.html X-Flag: Bugku{This_Is_A_Fake_Flag} <!-- 可能存在隐藏头部 --> ``` 或HTML中隐藏的注释: ```html <!-- Hint: flag=base64_decode("QnVna3V7R2FtZTFfSXNFYXN5fQ==") --> ``` 3. **编码与加密分析** 若发现经过编码的字符串(如Base64): ```python import base64 print(base64.b64decode("QnVna3V7R2FtZTFfSXNFYXN5fQ==").decode()) # 输出:Bugku{Game1_IsEasy} ``` --- ### 三、典型漏洞类型 1. **HTTP头注入** 修改请求头字段(如`X-Forwarded-For`)尝试绕过IP限制[^3]。 2. **前端代码审计** 检查JavaScript中可能的验证逻辑绕过: ```javascript if(document.cookie.indexOf("admin")==-1){ window.location.href = "/error"; // 尝试伪造cookie: admin=1 } ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值