web网站中常见攻击之HTTP Headers攻击

<返回列表

凡是用浏览器查看任何WEB网站,无论你的WEB网站采用何种技术和框架,都用到了HTTP协议

HTTP协议在Response header和content之间,有一个空行,即两组CRLF(0x0D 0A)字符

这个空行标志着headers的结束和content的开始

攻击者可以利用这一点, 只要攻击者有办法将任意字符“注入”到headers中,这种攻击就可以发生

以登陆为例:有这样一个url

http://localhost/login?page=http%3A%2F%2Flocalhost%2Findex

当登录成功以后,需要重定向回page参数所指定的页面。

下面是重定向发生时的`response headers

HTTP/1.1 302 Moved

Temporarily Date: Tue, 17 Aug 2010 20:00:29 GMT

Server: Apache mod_fcgid/2.3.5 mod_auth_passthrough/2.1 mod_bwlimited/1.4

FrontPage/5.0.2.2635 Location: http://localhost/index

假如把URL修改一下,变成这个样子

http://localhost/login?page=http%3A%2F%2Flocalhost%2Fcheckout%0D%0A%0D%0A%3Cscript%3Ealert%28%27hello%27%29%3C%2Fscript%3E

那么重定向发生时的reponse会变成下面的样子:

HTTP/1.1 302 Moved

Temporarily Date: Tue, 17 Aug 2010 20:00:29 GMT

Server: Apache mod_fcgid/2.3.5 mod_auth_passthrough/2.1 mod_bwlimited/1.4

FrontPage/5.0.2.2635 Location: http://localhost/checkout

这个页面可能会意外地执行隐藏在URL中的java script

类似的情况不仅发生在重定向(Location header)上,也有可能发生在其它headers中

如`Set-Cookie header

这种攻击如果成功的话,可以做很多事,例如:执行脚本、设置额外的cookie (Set-Cookie: evil=value) 等

避免这种攻击的方法,就是过滤所有的response headers,除去header中出现的非法字符,尤其是CRLF(空行)

---------------------

作者:rugu_xxx

来源:CSDN

原文:https://blog.csdn.net/sinat_36629696/article/details/80748665

版权声明:本文为博主原创文章,转载请附上博文链接!

国内免备案VPS301跳转服务器国内免备案服务器域名被墙跳转301,绕过信息安全中心不能放违反法律法规内容!(北京免备案  镇江免备案 江苏免备案 辽宁免备案vps 山东联通免备案) 
分享新闻到:

更多帮助

web网站中常见攻击之HTTP Headers攻击

新闻中心 2023-07-22
凡是用浏览器查看任何WEB网站,无论你的WEB网站采用何种技术和框架,都用到了HTTP协议 HTTP协...
查看全文

web网站中常见攻击之Cookie攻击

新闻中心 2023-07-22
通过Java Script 非常容易访问到当前网站的cookie 你可以打开任何网站,然后在浏览器地址栏中输...
查看全文

web网站中常见攻击之SQL注入

新闻中心 2023-07-22
所谓SQL注入,就是把SQL命令插入到Web表单提交, 或输入域名, 或页面请求的查询字符串,最终达...
查看全文