ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

【八个月网安课程】第三周·周五:开发工具 Network 面板实战——分析 Headers、Response、Payload

【八个月网安课程】第三周·周五:开发工具 Network 面板实战——分析 Headers、Response、Payload 以下是第三周周五学习内容的详细展开聚焦浏览器开发者工具的 Network 面板实战。今天你将变身网络数据分析师从每一个请求的头部、载荷和响应中提取关键信息。这是后续 SQL 注入、XSS、CSRF 等漏洞挖掘的“显微镜”务必动手操作每一个步骤。第三周·周五开发工具 Network 面板实战——分析 Headers、Response、Payload 今日学习目标达成效果能熟练打开并配置Network 面板Preserve log、Disable cache理解其基本布局能快速过滤出 XHR、JS、CSS、图片等类型请求并能按状态码、域名进行筛选能完整解读一个 HTTP 请求的 General、Request Headers、Response Headers说出至少 5 个常见头部的作用能准确找到GET 请求的 Query String Parameters 和 POST 请求的 Form Data / Request Payload并明白它们在实际攻击中的角色能独立操作打开任意一个搜索网站在 Network 面板中定位到搜索请求提取参数名和值能从安全视角判断暴露在 URL 中的敏感参数、缺失的 HttpOnly/Secure 标记、不安全的 CORS 头部、信息泄露的 Server 头等能将 Network 面板作为自己日常调试和初步渗透测试的基础工具养成先看网络请求再谈漏洞的习惯。 一、Network 面板总览与必设项在 Chrome/Edge 中按F12→ 选择Network网络面板你会看到所有浏览器发出的网络请求。1. 界面基本布局工具栏录制/停止按钮、清除记录、过滤框、Preserve log、Disable cache 等选项。请求列表显示页面加载过程中每个资源的行Name、Status、Type、Size、Time 等。请求详情点击某行后出现 Headers、Payload、Preview、Response、Timing 等子标签。2. 两个必须勾选的选项今天就要养成习惯✅Preserve log保留日志勾选后页面跳转或刷新时不会清空请求记录这对分析登录前后的重定向至关重要。✅Disable cache停用缓存勾选后浏览器每次都会重新请求资源而不使用缓存确保你看到的是最新交互而不是 304 状态码和本地缓存。注意这仅在你打开了 DevTools 时生效。 二、请求详情剖析核心技能点击任一请求右侧显示详细面板。必须掌握的标签1. Headers 标签分为几个区域General请求 URL、请求方法GET/POST、状态码、远程地址。一眼看出请求是否成功、是否被重定向。Response Headers服务器返回的头部如Content-Type、Set-Cookie、Server、Cache-Control等。Request Headers浏览器发送给服务器的头部如Host、User-Agent、Cookie、Content-Type、Accept等。安全必看字段Set-Cookie检查是否有HttpOnly防 XSS 读取和Secure仅 HTTPS 传输。没有这些标记就可能被窃取。Server暴露 Web 服务器及版本攻击者可据此查找漏洞。理想的防御是隐藏或泛化该头。X-Frame-Options、Content-Security-Policy是否配置了防护头缺失则可能存在点击劫持、XSS 风险。Access-Control-Allow-OriginCORS 跨域配置是否过于宽松如值为*且允许携带凭据容易导致信息泄露。Cookie请求头会话 ID 是否在每次请求中都明文传送。2. Payload 标签这个标签仅在请求带有数据时出现比如 GET 的查询字符串或 POST 的表单/JSON 数据。Query String Parameters当方法为 GET 时参数会出现在这里如?qsecuritypage1。Form Data当 POST 请求类型为application/x-www-form-urlencoded时载荷显示为键值对。Request Payload当 POST 请求类型为application/json等时显示原始 JSON/XML 数据。安全意义你可以在这里看到前端提交给后端的所有原始数据这是 SQL 注入、XSS、越权的源头。任何前端隐藏的参数、不可见字段都会完全暴露。测试题提到的搜索请求GET 参数直接暴露在查询字符串中可被轻易篡改并重放。3. Preview / Response 标签Preview根据响应类型HTML、JSON、图片渲染预览快速查看内容。Response显示服务器返回的原始源代码或数据可用于查找敏感信息泄露如 HTML 注释中的开发信息、JSON 中的多余字段。 三、过滤与搜索请求面对大量请求必须用过滤器快速定位目标过滤器按钮作用All显示所有请求XHR / Fetch只显示 JS 异步请求AJAXJSJavaScript 文件CSS样式表文件Img图片资源Doc文档主 HTMLOther其他类型也可以在主过滤框中直接输入domain:example.com仅显示特定域名的请求。status-code:200仅显示状态码为 200 的请求。larger-than:1000仅显示大于 1KB 的响应。-.css -.png排除 CSS 和图片请求只关注数据和页面。实践加载一个页面点击 “XHR” 按钮你会发现很多异步请求如动态加载的用户数据、评论等这些是测试逻辑漏洞和未授权访问的重点对象。 四、Timing 与 Initiator 简要理解Initiator发起者显示是谁发起了这个请求如脚本、链接、解析器可以帮助你回溯请求来源。Timing展示请求各阶段耗时DNS 解析、TCP 连接、发送、等待 TTFB、下载。在渗透中通过异常耗时判断服务端是否存在时间盲注Sleep 注入非常有用但今天只需了解界面。✍️ 五、动手实践一分析任意搜索网站的 GET 请求任务打开一个搜索网站如www.baidu.com或www.bing.com在搜索框输入“网络安全”查看搜索时发送的请求提取参数名和值。步骤打开浏览器按 F12 → Network勾选 “Preserve log”。访问搜索引擎主页待页面加载完成后点击清除按钮清空现有记录。在搜索框输入“网络安全”或其他关键词点击搜索按钮或按回车。在 Network 请求列表中找到类型为document或xhr的新请求通常路径包含/s或search。可以过滤search或直接看第一个请求。点击该请求右侧选择Headers标签往下滚动到Query String Parameters区域。你会看到类似wd: 网络安全 (百度) q: 网络安全 (Bing)记录下参数名wd或q和参数值“网络安全” 编码后形式如%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8。也可以通过Request URL直接看到完整 URL 和参数如https://www.baidu.com/s?wd%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8从安全视角观察数据完全暴露在 URL 中如果搜索内容包含敏感信息如密码、token会被浏览器历史、服务器日志、Referer 记录。你可以直接修改 URL 中的wd参数重新请求而不需要经过前端页面这就是最简单的“参数篡改”。测试题作答今天测试题要求“打开一个搜索网站查看搜索时发送的请求提取参数名和值”你的答案就是上面的参数名和值示例。对于百度参数名wd值为网络安全。✍️ 六、动手实践二分析一个 POST 登录请求使用昨天搭建的环境回到昨天的登录实验环境或任意可登录的测试网站注意只使用自己搭建的或公开测试平台。确保 Python 登录服务在运行python3 server.py。浏览器访问http://127.0.0.1:8080F12 → Network 勾选 Preserve log。输入用户名admin密码pass123点击登录。在 Network 中找到名为login的请求点击查看Headers→Request Method: POSTRequest Headers中Content-Type: application/x-www-form-urlencodedPayload标签或Headers底部 “Form Data” 显示username: admin password: pass123尝试在用户名中输入admin--SQL 注释提交后观察 Payload 中的值你会看到注入的字符原样发送。服务器返回了登录成功或失败这预示了注入漏洞。思考如果你用 curl 重复同样的 POST 请求你可以完全绕过浏览器前端任何 JS 限制。Network 面板揭示了一切真相。 七、课后测试题与解析测试题打开一个搜索网站查看搜索时发送的请求提取参数名和值。操作指引与示例答案以百度为例打开www.baidu.comF12 打开开发者工具 → Network勾选 Preserve log。清空现有记录搜索“网络安全”。在请求列表中找到/s?开头的请求点击。在 Headers → Query String Parameters 中看到参数wd: 网络安全即参数名为wd值为网络安全URL 编码为%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8。以必应Bing为例参数名通常是q。补充如果使用 Google参数名为q但因 HTTPS 和加密Payload 不可见实际上 Google 搜索虽然是 HTTPS但 Network 面板仍能显示 URL 中的查询参数因为 DevTools 是浏览器本地功能可以捕获未加密前的请求。但如果是 POST 搜索也可以看到 Body 中的参数。测试中可灵活选择。测试题延伸尝试直接在浏览器地址栏手动构造搜索 URL 并回车验证参数名是否正确。这证明 GET 请求不依赖任何前端界面。✅ 今日学习效果自检清单我能熟练使用 Network 面板并始终开启 Preserve log 和 Disable cache我可以快速过滤请求类型XHR、Doc、Img并通过搜索框查找特定 URL我能解释 General 部分的 Request URL、Method、Status Code 含义我从任意搜索请求中提取了参数名和值并理解参数直接暴露在 URL 中我知道 Response Headers 中哪些字段与安全相关Set-Cookie 的 HttpOnly/Secure、Server、CSP 等我在登录实验中通过 Payload 标签看到了 POST 表单数据我理解 Network 面板是后续分析所有 Web 漏洞的不二工具参数未加密的部分一目了然⚠️ 阶段避坑重点不要只依赖 Preview 而不看 Raw ResponsePreview 会渲染 HTML可能隐藏原始注释和脚本查看 Response 源码才能发现隐藏信息。不要忘记 Preserve log尤其在分析登录跳转时不勾选会导致登录前后的请求丢失无法追踪 Set-Cookie 和重定向。不要用隐私/敏感账号在未脱敏环境实验密码等敏感数据会出现在 Network 面板和日志中确保仅在自己搭建的测试环境使用假数据。不要被 HTTPS“加密”误导Network 面板能看到明文是因为浏览器拥有密钥攻击者无法直接看见但如果有恶意浏览器扩展或本机抓包数据仍可能泄漏。所以参数敏感时仍需配合加密和不可逆哈希。不要忽略 Timing 的利用虽然今天没深入但要记得未来盲注类漏洞基于时间的 SQL 注入可能就是通过异常的时间延迟来发现的。明天周六我们将进行第三周的综合测试搭建简单留言板或使用 pikachu 平台观察前后端交互。你会提交包含scriptalert(1)/script的数据并用 Network 面板观察请求与响应初探 XSS 的奥秘。请保留今天对 Network 面板的熟练度明天的实验将更有趣。
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表