HTTP 响应分割漏洞

HTTP 响应分割漏洞

1.漏洞概述

HTTP 响应拆分发生在以下情况:

  • 数据通过不受信任的来源(最常见的是 HTTP 请求)进入 Web 应用程序。
  • 该数据包含在发送给 Web 用户的 HTTP 响应标头中,且未经过恶意字符验证。

从根本上来说,攻击很简单:攻击者将恶意数据传递给易受攻击的应用程序,并且该应用程序将数据包含在 HTTP 响应标头中

要成功利用该漏洞,应用程序必须允许将包含 CR(回车符,也由 %0d\r 给出)和 LF(换行符,也由 %0a\n 给出)字符输入到标头


2.漏洞案例

以下代码段从 HTTP 请求中读取博客条目作者的姓名,并将其设置在 HTTP 响应的 cookie 标头中:

java 复制代码
String author = request.getParameter(AUTHOR_PARAM);
...
Cookie cookie = new Cookie("author", author);
cookie.setMaxAge(cookieExpiration);
response.addCookie(cookie);

一个正常的请求(例如"Jane Smith"),则包含此 cookie 的 HTTP 响应可能采用以下形式:

复制代码
HTTP/1.1 200 OK
...
Set-Cookie: author=Jane Smith
...

如果攻击者提交恶意字符串,例如"Wiley Hacker\r\nContent-Length:999\r\n\r\n...",则 HTTP 响应将被拆分为冒名顶替者响应,后跟原始响应:

复制代码
HTTP/1.1 200 OK
...
Set-Cookie: author=Wiley Hacker
Content-Length: 999

<html>malicious content...</html> (to 999th character in this example)
Original content starting with character 1000, which is now ignored by the web browser...

攻击者构造任意 HTTP 响应的能力允许产生各种攻击,包括:跨用户破坏、缓存中毒、跨站点脚本 (XSS)和页面劫持

相关推荐
chenglin01612 小时前
AI 服务企业级数据隐私与安全
网络·人工智能·安全
一名优秀的码农13 小时前
vulhub系列-57-Thoth Tech: 1(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
小陈工14 小时前
Python Web开发入门(十一):RESTful API设计原则与最佳实践——让你的API既优雅又好用
开发语言·前端·人工智能·后端·python·安全·restful
黎阳之光15 小时前
视频孪生赋能车路云一体化,领跑智慧高速新征程
人工智能·算法·安全·数字孪生
独角鲸网络安全实验室16 小时前
Java常见面试题及答案汇总(2025最新版)
java·安全·面试·面试题·考试·考试题·面试攻略
探索者0118 小时前
CTFHub靶场---SSRF攻击
安全·web安全·ssrf靶场
wAEWQ6Ib719 小时前
当今互联网安全的基石 - TLS/SSL
网络·安全·ssl
white-persist19 小时前
【vulhub weblogic CVE-2017-10271漏洞复现】vulhub weblogic CVE-2017-10271漏洞复现详细解析
java·运维·服务器·网络·数据库·算法·安全
m0_7381207220 小时前
网络安全编程——开发一个TCP代理Python实现(二)
python·tcp/ip·web安全
小陈工1 天前
Python Web开发入门(十二):使用Flask-RESTful构建API——让后端开发更优雅
开发语言·前端·python·安全·oracle·flask·restful