攻防世界1.新手练习区
字数 2958 2025-08-24 10:10:13

攻防世界新手练习区WEB安全挑战解析

1. view_source

目标:获取网页源代码中的flag

解题步骤

  1. 访问目标URL
  2. 发现右键被禁用
  3. 使用浏览器开发者工具(F12)查看页面源代码
  4. 在源代码中找到flag

关键点

  • 当网页禁用右键时,可使用F12或Ctrl+U查看源代码
  • flag格式:cyberpeace{32位MD5值}

flagcyberpeace{0f3a3e4ab8c8664f3cf40d4240ec7b53}

2. robots

目标:利用robots协议发现隐藏文件

解题步骤

  1. 访问目标URL
  2. 尝试访问/robots.txt文件
  3. 发现提示的隐藏文件路径
  4. 访问该隐藏文件获取flag

关键点

  • robots.txt是搜索引擎爬虫协议文件
  • 常见路径:/robots.txt
  • 可能包含网站不希望被索引的敏感文件路径

flagcyberpeace{577d71f33e261f53ee278275e3de3de3}

3. backup

目标:利用备份文件泄露获取flag

解题步骤

  1. 访问目标URL
  2. 尝试常见备份文件名:
    • index.php~
    • index.php.bak
  3. 下载并查看备份文件内容
  4. 在文件中找到flag

关键点

  • 开发人员可能遗留备份文件在服务器上
  • 常见备份文件后缀:.bak, ~, .old, .backup
  • 也可使用目录遍历工具扫描

flagCyberpeace{855A1C4B3401294CB6604CCC98BDE334}

4. cookie

目标:从HTTP cookie中获取flag

解题步骤

  1. 访问目标URL
  2. 检查HTTP响应头中的cookie信息
  3. 根据提示访问cookie.php
  4. 检查响应头获取flag

关键点

  • 使用开发者工具查看网络请求
  • 关注Set-Cookie头和响应头信息
  • 可能需要检查多个页面的响应头

flagcyberpeace{6504b9e7b01f8a97949a68d32982ce70}

5. disabled_button

目标:绕过禁用按钮获取flag

解题步骤

  1. 访问目标URL
  2. 发现按钮被禁用无法点击
  3. 使用开发者工具检查按钮元素
  4. 移除disabled属性
  5. 点击按钮获取flag

关键点

  • HTML元素的disabled属性会阻止交互
  • 前端验证可以被绕过
  • 修改DOM元素属性是常见绕过方法

flagcyberpeace{0b19b9abb6aea292154a6499abb172e6}

6. weak_auth

目标:通过弱密码爆破获取flag

解题步骤

  1. 访问目标URL
  2. 尝试任意账号密码登录
  3. 发现提示需要使用admin账号
  4. 使用工具(如Burp Suite)爆破admin密码
  5. 成功登录获取flag

关键点

  • 常见弱密码:123456, admin, password等
  • 可使用字典进行爆破
  • 注意网站是否有防爆破机制

flagcyberpeace{f5a9342401aee62a8ea8d22cb9362cc9}

7. simple_php

目标:通过PHP类型转换漏洞获取flag

解题步骤

  1. 分析源代码逻辑:
    • 参数a需要等于0又不等于0
    • 参数b需要大于1234且不是数字
  2. 构造特殊payload:
    • a=任意非数字字符(如'a'),PHP会转换为0但本身不为0
    • b=1235a,数值比较时会转换为1235但is_numeric检测不通过
  3. 提交payload获取flag

关键点

  • PHP弱类型比较特性
  • =====的区别
  • is_numeric()函数检测
  • 类型转换漏洞利用

flagCyberpeace{647E37C7627CC3E4019EC69324F66C7C}

8. get_post

目标:发送GET和POST请求获取flag

解题步骤

  1. 访问目标URL
  2. 发送GET请求带参数a=1
  3. 发送POST请求带参数b=2
  4. 获取flag

关键点

  • GET请求可通过URL直接发送
  • POST请求需要使用工具(如curl、Postman)或HTML表单
  • HTTP请求方法差异

flagcyberpeace{f63d796525d81be9a436ed31d1ef7c51}

9. xff_referer

目标:伪造HTTP头信息获取flag

解题步骤

  1. 分析题目要求:
    • 需要特定X-Forwarded-For头
    • 需要特定Referer头
  2. 使用工具修改请求头:
    • 添加X-Forwarded-For: 123.123.123.123
    • 添加Referer: https://www.google.com
  3. 发送请求获取flag

关键点

  • X-Forwarded-For用于标识客户端原始IP
  • Referer表示请求来源
  • 头部信息可以被伪造
  • 常用工具:Burp Suite, curl, Postman

flag:未在文中明确给出

10. webshell

目标:利用一句话木马获取flag

解题步骤

  1. 访问目标URL发现一句话木马
  2. 使用中国菜刀等工具连接
  3. 使用密码'shell'连接
  4. 获取服务器权限查找flag

关键点

  • 常见一句话木马格式:
    • PHP: <?php @eval($_POST['pass']);?>
    • ASP: <%eval request("pass")%>
    • ASPX: <%@ Page Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%>
  • 连接工具:中国菜刀、蚁剑、C刀等

flagcyberpeace{3dffde669e47bfaaa521bbbba1f075b1}

11. command_execution

目标:利用命令注入漏洞获取flag

解题步骤

  1. 访问目标URL发现ping功能
  2. 测试命令注入:
    • 127.0.0.1;ls
  3. 查找flag文件:
    • 127.0.0.1;find / -name flag.txt
  4. 查看flag文件内容:
    • 127.0.0.1;cat /home/flag.txt

关键点

  • Linux命令注入常用分隔符:;, &, |, &&, ||
  • 常用命令:
    • find / -name flag*
    • cat /flag
    • ls -la
  • 注意权限限制

flagcyberpeace{a120a656a36cbc00c6e2b288b06564b1}

12. simple_js

目标:分析JavaScript代码获取flag

解题步骤

  1. 访问目标URL发现密码验证
  2. 分析JavaScript源代码
  3. 发现关键函数dechiffre和加密字符串
  4. 解码加密字符串获取flag

关键点

  • JavaScript混淆与反混淆
  • String.fromCharCode()函数
  • 数字转ASCII字符
  • 可编写Python脚本辅助解码

解码脚本

s = [55,56,54,79,115,69,114,116,107,49,50]
d = ""
for i in s:
    b = chr(i)
    d = d + b
print(d)

flagCyberpeace{786OsErtk12}

攻防世界新手练习区WEB安全挑战解析 1. view_ source 目标 :获取网页源代码中的flag 解题步骤 : 访问目标URL 发现右键被禁用 使用浏览器开发者工具(F12)查看页面源代码 在源代码中找到flag 关键点 : 当网页禁用右键时,可使用F12或Ctrl+U查看源代码 flag格式: cyberpeace{32位MD5值} flag : cyberpeace{0f3a3e4ab8c8664f3cf40d4240ec7b53} 2. robots 目标 :利用robots协议发现隐藏文件 解题步骤 : 访问目标URL 尝试访问 /robots.txt 文件 发现提示的隐藏文件路径 访问该隐藏文件获取flag 关键点 : robots.txt是搜索引擎爬虫协议文件 常见路径: /robots.txt 可能包含网站不希望被索引的敏感文件路径 flag : cyberpeace{577d71f33e261f53ee278275e3de3de3} 3. backup 目标 :利用备份文件泄露获取flag 解题步骤 : 访问目标URL 尝试常见备份文件名: index.php~ index.php.bak 下载并查看备份文件内容 在文件中找到flag 关键点 : 开发人员可能遗留备份文件在服务器上 常见备份文件后缀: .bak , ~ , .old , .backup 也可使用目录遍历工具扫描 flag : Cyberpeace{855A1C4B3401294CB6604CCC98BDE334} 4. cookie 目标 :从HTTP cookie中获取flag 解题步骤 : 访问目标URL 检查HTTP响应头中的cookie信息 根据提示访问 cookie.php 检查响应头获取flag 关键点 : 使用开发者工具查看网络请求 关注Set-Cookie头和响应头信息 可能需要检查多个页面的响应头 flag : cyberpeace{6504b9e7b01f8a97949a68d32982ce70} 5. disabled_ button 目标 :绕过禁用按钮获取flag 解题步骤 : 访问目标URL 发现按钮被禁用无法点击 使用开发者工具检查按钮元素 移除 disabled 属性 点击按钮获取flag 关键点 : HTML元素的 disabled 属性会阻止交互 前端验证可以被绕过 修改DOM元素属性是常见绕过方法 flag : cyberpeace{0b19b9abb6aea292154a6499abb172e6} 6. weak_ auth 目标 :通过弱密码爆破获取flag 解题步骤 : 访问目标URL 尝试任意账号密码登录 发现提示需要使用admin账号 使用工具(如Burp Suite)爆破admin密码 成功登录获取flag 关键点 : 常见弱密码:123456, admin, password等 可使用字典进行爆破 注意网站是否有防爆破机制 flag : cyberpeace{f5a9342401aee62a8ea8d22cb9362cc9} 7. simple_ php 目标 :通过PHP类型转换漏洞获取flag 解题步骤 : 分析源代码逻辑: 参数a需要等于0又不等于0 参数b需要大于1234且不是数字 构造特殊payload: a=任意非数字字符(如'a'),PHP会转换为0但本身不为0 b=1235a,数值比较时会转换为1235但is_ numeric检测不通过 提交payload获取flag 关键点 : PHP弱类型比较特性 == 与 === 的区别 is_numeric() 函数检测 类型转换漏洞利用 flag : Cyberpeace{647E37C7627CC3E4019EC69324F66C7C} 8. get_ post 目标 :发送GET和POST请求获取flag 解题步骤 : 访问目标URL 发送GET请求带参数a=1 发送POST请求带参数b=2 获取flag 关键点 : GET请求可通过URL直接发送 POST请求需要使用工具(如curl、Postman)或HTML表单 HTTP请求方法差异 flag : cyberpeace{f63d796525d81be9a436ed31d1ef7c51} 9. xff_ referer 目标 :伪造HTTP头信息获取flag 解题步骤 : 分析题目要求: 需要特定X-Forwarded-For头 需要特定Referer头 使用工具修改请求头: 添加 X-Forwarded-For: 123.123.123.123 添加 Referer: https://www.google.com 发送请求获取flag 关键点 : X-Forwarded-For用于标识客户端原始IP Referer表示请求来源 头部信息可以被伪造 常用工具:Burp Suite, curl, Postman flag :未在文中明确给出 10. webshell 目标 :利用一句话木马获取flag 解题步骤 : 访问目标URL发现一句话木马 使用中国菜刀等工具连接 使用密码'shell'连接 获取服务器权限查找flag 关键点 : 常见一句话木马格式: PHP: <?php @eval($_POST['pass']);?> ASP: <%eval request("pass")%> ASPX: <%@ Page Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%> 连接工具:中国菜刀、蚁剑、C刀等 flag : cyberpeace{3dffde669e47bfaaa521bbbba1f075b1} 11. command_ execution 目标 :利用命令注入漏洞获取flag 解题步骤 : 访问目标URL发现ping功能 测试命令注入: 127.0.0.1;ls 查找flag文件: 127.0.0.1;find / -name flag.txt 查看flag文件内容: 127.0.0.1;cat /home/flag.txt 关键点 : Linux命令注入常用分隔符: ; , & , | , && , || 常用命令: find / -name flag* cat /flag ls -la 注意权限限制 flag : cyberpeace{a120a656a36cbc00c6e2b288b06564b1} 12. simple_ js 目标 :分析JavaScript代码获取flag 解题步骤 : 访问目标URL发现密码验证 分析JavaScript源代码 发现关键函数 dechiffre 和加密字符串 解码加密字符串获取flag 关键点 : JavaScript混淆与反混淆 String.fromCharCode() 函数 数字转ASCII字符 可编写Python脚本辅助解码 解码脚本 : flag : Cyberpeace{786OsErtk12}