网站地图    收藏   

主页 > 后端 > 网站安全 >

utf-7 bom后续 - 网站安全 - 自学php

来源:自学PHP网    时间:2015-04-17 14:47 作者: 阅读:

[导读] 今天tcpper让我帮忙测一个url,结果无意发现微软似乎在某个补丁中针对utf-7 bom 做了些限制。win7+ie8下测试:ie识别网页的编码顺序 依然是 bom server content-type中的 charset但如果server cont......

今天tcpper让我帮忙测一个url,结果无意发现微软似乎在某个补丁中针对utf-7 bom 做了些限制。

win7+ie8下测试:

ie识别网页的编码顺序  依然是 bom >server content-type中的 charset……

但如果server content-type中设置了charset,且BOM 为UTF-7的,则以server content-type中的 charset 为主。

测试代码:


<?php

header('Content-Type:text/html;charset=utf-8');

echo file_get_contents('utf7bom.txt');

 

其中,utf7bom.txt内容为:+/v8 +ADw-script+AD4-alert(1)+ADw-/script+AD4-

访问后,网页的编码为utf-8,而非utf-7。

当然,去掉上述标红的charset=utf-8,就还以UTF-7 bom为主,弹出1 。

 

在此顺便补充下,黑哥页面那个css下 UTF-7 bom造成的xss,即使服务器对xxx.css的content-type设置为text/css;charset=utf-8,在当前的补丁下,浏览器仍以UTF-7 bom为主。因为IE下style、link标签引入子资源,是无视其子资源的content-type设置的。(之前不就为了修复某漏洞,才强制检查跨域的css文件的conten-type是否为text/css么?)

 from:imread('暗夜潜风')

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论