如何修复HTTP响应头注入/ HTTP响应拆分

时间:2017-05-18 13:24:52

标签: java security

我有一个J2EE Web应用程序,使用Burp Scanner Suite进行扫描会将以下内容报告为HTTP响应标头注入漏洞。
问题是当在请求头/参数中注入CRLF字符时,我们只是从请求中删除这些字符以避免响应拆分问题,但Burp Scanner Suite仍然将其报告为高问题。

所以我的问题是,“仅仅从请求中删除CRLF字符以避免HTTP Resonse Splitting问题并允许请求继续进行是不够的?或者我们是否应该在请求中找到这样的字符时抛出异常?它怎么可能如果CRLF字符已被删除,则会造成伤害。有人可以用示例解释一下吗?[Burp Scanner报告的问题的屏幕截图]: enter image description here

1 个答案:

答案 0 :(得分:2)

从用户输入中过滤CRLF字符足以纠正此发现。从您的屏幕截图中,它可以显示此查找无效,因为它不会在响应标头中导致任何换行。

如果它容易受到攻击,你可能会看到类似这样的内容:

HTTP/1.1 302 Moved Temporarily
Date: Tue, 21 Mar ....
...
...
Location: https://MachineName1.Domain1/base/home?1bqfh
ob2ym=1
...
  

ob2ym = 1 应在响应标头中显示为换行符   因为%0d 字符。

对于您的信息,您可以在security.stackexchange.com中询问与安全相关的问题。我打赌你会在这里发布更多回复。

我希望这可以帮到你。