【愚公系列】《Web应用安全》010-Repeater模块的使用

📅 发布时间:2026/8/24 13:47:26
【愚公系列】《Web应用安全》010-Repeater模块的使用
【行业认证·权威头衔】✔ 华为云天团核心成员特约编辑/云享专家/开发者专家/产品云测专家✔ 开发者社区全满贯CSDN博客商业化双料专家/阿里云签约作者/腾讯云内容共创官/掘金亚马逊51CTO顶级博主✔ 技术生态共建先锋横跨鸿蒙、云计算、AI等前沿领域的技术布道者【荣誉殿堂】 连续三年蝉联华为云十佳博主2022-2024 双冠加冕CSDN年度博客之星TOP220222023 十余个技术社区年度杰出贡献奖得主【知识宝库】覆盖全栈技术矩阵◾ 编程语言.NET/Java/Python/Go/Node…◾ 移动生态HarmonyOS/iOS/Android/小程序◾ 前沿领域物联网/网络安全/大数据/AI/元宇宙◾ 游戏开发Unity3D引擎深度解析文章目录前言项目描述项目分析任务三Repeater 模块的使用完整整理版3.1 任务概述3.2 任务分析3.3 相关知识3.4 工作任务3.5 归纳总结3.6 提高拓展【附】AI 提示词模板前言项目描述Burp Suite 是用于攻击 Web 应用程序的集成平台包含了许多工具Burp Suite 为这些工具设计了许多接口以加快攻击应用程序的过程。所有 Burp Suite 都共享一个请求该工具能够更好地帮助测试人员对目标站点的请求数据进行分析与测试。项目分析Burp Suite 作用于浏览器与服务器之间该工具可以对抓取到的 HTTP 请求数据包进行重放、爆破等操作。在该项目中需要明确 Burp Suite 的抓包方法并熟悉 Proxy、Intruder 和 Repeater 模块的使用方法。任务三Repeater 模块的使用完整整理版3.1 任务概述Burp Suite 的Repeater 模块是一个能够修改 HTTP 请求、手动构建 HTTP 请求和重复发送自定义 HTTP 数据包的模块。Repeater 模块的最大用途就是可以和其他模块结合起来这与 Intruder 模块的使用方法类似在 Proxy 模块抓取到的数据信息可以被发送到 Repeater 模块上并且可以手动调整这个请求进行漏洞的探测或攻击。在 phpStudy 的站点根目录中创建demo.php文件在该文件中写入如下内容meta charsetUTF-8?phpif(isset($_GET[num])){if(intval($_GET[num])55){echo值太大了;}elseif(intval($_GET[num])55){echo值太小了;}else{echotime(). Success;}}else{echo请用GET请求提交变量num;}?利用 Burp Suite 的 Repeater 模块测试num的值并在响应数据包中成功输出“Success”字段。3.2 任务分析Burp Suite 的 Repeater 模块可以对代理模块中抓取到的 HTTP 请求数据包进行数据更改与重复发送发送后可以直接获取到该请求数据的响应源代码。通过对不同的调试与响应源代码的内容进行分析可以找到正确字段或发现目标站点中存在的问题并得到目标信息。3.3 相关知识二分法作为一种数学算法可以解决生活中出现的问题。在检测站点漏洞时测试人员也会通过二分法检测出站点后台代码中的预期数据。例如后续提及的 SQL 注入漏洞在利用时间盲注或布尔盲注获取数据库数据时会通过二分法判断出数据库指定字符的 ASCII 码通过二分法的对比来缩小其变化范围最终找到指定数据。利用 Burp Suite 的 Repeater 模块通过重复构建与发送数据包结合对响应数据包的分析可以找到目的值从而获得目标字段。3.4 工作任务开启 phpStudy 站点服务并按要求创建demo.php文件写入指定代码内容。使用 Firefox 浏览器访问http://127.0.0.1/demo.php访问后页面显示的内容为“请用GET请求提交变量num”如图 6-34 所示。提交num的值为 1页面显示如图 6-35 所示。页面显示的内容为“值太小了”说明页面对用户输入的信息进行检测与提示。由于是 GET 请求因此可以在提交的网址中按照提示信息直接修改请求参数的值或通过 Burp Suite 的 Repeater 模块对 HTTP 数据包进行修改与重复提交。开启 Firefox 浏览器的 Burp Suite 代理模式并打开 Burp Suite 的 HTTP 拦截请求浏览器提交http://127.0.0.1/demo.php?num1的请求Burp Suite 成功抓取到请求数据包如图 6-36 所示。单击“Action”按钮并选择“Send to Repeater”将当前抓取到的请求数据包发送至 Repeater 模块如图 6-37 所示。Repeater 模块的主要内容如图 6-38 所示。左侧为 Request 数据面板在该面板中可以编辑 HTTP 请求数据包修改请求中涉及的值、请求头字段等在Raw选项卡下可以直接修改请求数据在Hex选项卡下可对请求数据的十六进制内容进行修改修改完成后单击左上角的“Send”按钮即可发送修改完成的数据包右侧为 Response 数据面板该面板为左侧 HTTP 请求数据包发送后的响应数据在Pretty、Raw选项卡下可以直接看到响应源码在Hex选项卡下可以查看响应数据的十六进制内容在Render选项卡下可以查看响应数据的浏览器界面显示内容Request 和 Response 数据面板如图 6-39 所示。修改 GET 请求的参数例如num100单击“Send”按钮发送请求数据响应数据包的 Render 信息如图 6-40 所示。根据页面响应数据使用二分法来判断值如num50、num75、num63等如图 6-41 所示。通过不断地使用二分法在 Repeater 模块中重复提交num的值当num55时页面成功输出“Success”字段如图 6-42 所示。3.5 归纳总结在测试过程中如果需要结合页面响应结果来更改变量的值除了直接在浏览器中提交请求数据还可以通过 Burp Suite 抓取 HTTP 的请求数据包并将数据包发送到 Repeater 模块中。在 Repeater 模块中可以对指定参数进行更改并发送然后结合响应结果判断数据的值。3.6 提高拓展如果请求环境中存在对Referrer、X-Forwarded-For、User-Agent等字段的检测那么在 Repeater 模块中可以手动添加或修改这类字段的内容。将 phpStudy 站点根目录下的demo.php文件内容替换如下?php$xff$_SERVER[HTTP_X_FORWARDED_FOR];echo$xff;?该代码会获取并输出X-Forwarded-For字段的内容。利用 Firefox 浏览器的 Burp Suite 代理结合 Burp Suite 的拦截请求抓取对本地demo.php网页的访问请求并发送到 Repeater 模块。Request 和 Response 数据面板的输出如图 6-43 所示。由于此时并未发送X-Forwarded-For字段的内容因此在 Response 数据面板中除正常响应外并没有其他字段输出。在 Request 数据包中增加该字段将字段的内容设定为192.168.1.100如图 6-44 所示。Response 数据面板中成功输出目标字段右键单击响应源码单击“Show response in browser”在弹出的窗口中单击“Copy”按钮复制网址如图 6-45 所示。将复制的网址在 Firefox 浏览器代理浏览器中提交即可在浏览器中查看响应数据包的内容如图 6-46 所示。【附】AI 提示词模板若您需要将上述内容交由 AI 进行进一步加工如生成 Repeater 模块操作练习题目、输出 Burp Suite 三大模块联动工作流速查卡、制作 X-Forwarded-For 字段伪造实验指南等可使用以下提示词模板提示词模板请根据以下关于Burp Suite Repeater 模块的使用的技术文章内容完成下列任务【角色设定】你是一位高级 Web 安全测试工程师兼 Burp Suite 工具培训讲师。【任务类型】请选择①设计一道结合二分法与 Repeater 模块使用的练习题目含靶场源码与 WriteUp ②制作 Burp Suite Proxy Intruder Repeater 三大模块联动工作流速查卡 ③输出 HTTP 请求头字段Referrer/X-Forwarded-For/User-Agent伪造与测试指南 ④生成 Repeater 模块请求修改与响应分析全流程操作手册 ⑤提炼 Repeater 模块常用快捷键与界面功能速查表【输出要求】请填写具体要求如速查卡需包含模块间数据流转关系和典型操作步骤/伪造指南需包含各字段的作用、检测绕过方法和 Repeater 配置示例/操作手册需包含截图占位和验证方法【原文内容】在此处粘贴上述整理后的完整 6.3 章节文章【补充说明】可选如需补充 Repeater 模块中 Inspector 面板的使用方法/说明如何将 Repeater 中的请求发送至 Intruder/增加请求对比Compare功能的介绍等示例回答针对上述提示词模板的完整回复好的作为高级 Web 安全测试工程师兼 Burp Suite 工具培训讲师我已完成您指定的任务。以下是根据原文内容生成的【Burp Suite 三大模块联动工作流速查卡】涵盖 Proxy、Intruder、Repeater 的完整数据流转与典型操作流程便于读者在实际测试中高效协同使用Burp Suite 三大模块联动工作流速查卡一、数据流转关系图┌─────────────────────────────────────────────┐ │ │ ▼ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌─────────┴──────┐ │ 浏览器发起 │ │ Proxy │ │ Action │ │ Intruder │ │ 请求 │──▶│ 拦截抓包 │──▶│ 右键菜单 │──▶│ 自动化爆破 │ └──────────────┘ └──────────────┘ └──────────────┘ └────────────────┘ │ │ │ ├──────────────────┐ │ ▼ ▼ │ ┌──────────────┐ ┌──────────────┐ │ │ Repeater │ │ 其他模块 │ │ │ 手动重放 │ │ (Scanner等) │ │ └──────────────┘ └──────────────┘ │ ▼ ┌──────────────┐ │ 服务器响应 │ └──────────────┘二、三大模块功能定位速查模块核心功能典型场景数据来源输出结果Proxy实时拦截/查看/修改请求和响应抓包分析、参数探测、初步测试浏览器发出的实时请求单条请求/响应的详细内容Intruder自动化批量发送定制请求暴力破解、ID枚举、Fuzz测试Proxy 抓取的请求模板 字典攻击结果表格含状态码/长度/响应Repeater手动修改并重复发送单条请求漏洞验证、参数调试、响应分析Proxy 或 History 中的请求单条请求的响应内容含Render预览三、完整工作流分步操作阶段一抓包Proxy浏览器配置代理127.0.0.1:8080SwitchyOmega 切换至 Burp Suite 模式Burp Suite → Proxy → Intercept → 确保状态为“Intercept is on”在浏览器中访问目标 URL查看拦截到的请求数据包阶段二分发Action 右键菜单抓包成功后在请求数据包上右键 → 出现 Action 菜单Send to RepeaterCtrlR发送至 Repeater 进行手动调试Send to IntruderCtrlI发送至 Intruder 进行自动化爆破阶段三手动调试Repeater切换到 Repeater 选项卡在 Raw 或 Params 标签页中修改请求参数点击“Send”发送请求查看右侧响应面板根据响应结果Render 预览调整参数重复发送直至找到目标值阶段四自动化爆破Intruder切换到 Intruder 选项卡 → Positions → 用§标记爆破位置Payloads → 选择字典类型和内容如 Numbers、Simple list可选Payload Processing → 添加编码/加密规则如 Base64-encode点击“Start Attack”→ 分析结果表格按 Length/Status 排序筛选四、数据流转快速映射表从源到目标快捷键用途Proxy → RepeaterCtrlR快速调试单个请求Proxy → IntruderCtrlI自动化测试该请求Repeater → Intruder右键 → Send to Intruder重放验证后转为自动化Intruder 结果 → Repeater右键 → Send to Repeater筛选特定请求进一步验证五、常见问题及解决问题原因解决方法Proxy 抓不到包浏览器代理未配置或 Intercept 未开启检查 SwitchyOmega 模式确保 Intercept 为 onIntruder 攻击无结果会话过期或 Cookie 失效从 Proxy History 复制最新 Cookie 到请求模板Repeater 响应与浏览器不一致请求头缺失如 Referrer/User-Agent在 Repeater 中手动补充缺失的请求头字段修改参数后响应无变化参数位置标记错误或未修改完整检查 Raw 视图和 Params 视图是否同步六、实战技巧二分法结合 Repeater当目标值在某个范围内时如 0~100使用 Repeater 配合二分法通过值太大了/值太小了响应快速定位目标值原文案例 num55Intruder 结果筛选攻击完成后点击Length列头排序长度异常的响应通常包含重要信息Repeater 的 Inspector 面板可快速查看和修改请求参数、请求头、Cookie比 Raw 模式更直观请求对比功能在 Repeater 中右键 →Compare with…可对比两次请求的差异如需其他格式如练习题目或请求头伪造指南可再次使用提示词模板指定任务类型。