最近机房让整改的漏洞 设置cookie httponly X-Frame-Options头未设置
https://www.jb51.net/article/105018.htm
PHP中的设置
PHP5.2以上版本已支持HttpOnly参数的设置,同样也支持全局的HttpOnly的设置,在php.ini中
-----------------------------------------------------
session.cookie_httponly = 1
-----------------------------------------------------
设置其值为1或者TRUE,来开启全局的Cookie的HttpOnly属性,当然也支持在代码中来开启:
1
2
3
|
<?php ini_set ( "session.cookie_httponly" , 1); // or session_set_cookie_params(0, NULL, NULL, NULL, TRUE); ?> |
Cookie操作函数setcookie函数和setrawcookie函数也专门添加了第7个参数来做为HttpOnly的选项,开启方法为:
1
2
3
4
|
<?php setcookie( "abc" , "test" , NULL, NULL, NULL, NULL, TRUE); setrawcookie( "abc" , "test" , NULL, NULL, NULL, NULL, TRUE); ?> |
对于PHP5.1以前版本以及PHP4版本的话,则需要通过header函数来变通下了:
1
2
3
|
<?php header( "Set-Cookie: hidden=value; httpOnly" ); ?> |
大家在使用虚拟机搭建WordPress博客的时候,相信都会使用360网站安全检测来检查网站安全性,使用WordPress博客程序搭建的博客多少都会报点漏洞,今天WIFI部落网出现了 X-Frame-Options头未设置 的提示,虽然是轻微漏洞,但看着不舒服,所以把这个问题处理了。
X-Frame-Options头未设置 修复方法:
一、Apache 配置
配置 Apache 在所有页面上发送 X-Frame-Options 响应头,需要把下面这行代码添加到配置中: apache配置httpd.conf 先开启mod_header.so 扩展
- Header always append X-Frame-Options SAMEORIGIN
二、nginx 配置
配置 nginx 发送 X-Frame-Options 响应头,把下面这行代码添加到 'http', 'server' 或者 'location' 的配置中:
1.add_header X-Frame-Options SAMEORIGIN
三、IIS 配置(虚拟机专用)
配置 IIS 发送 X-Frame-Options 响应头,添加下面代码配置到 Web.config 文件中(如下图):
- <httpProtocol>
- <customHeaders>
- <add name="X-Frame-Options" value="SAMEORIGIN" />
- </customHeaders>
- </httpProtocol>