使用Cookie中的HttpOnly属性来避免XSS

使用Cookie中的HttpOnly属性来避免XSS

By lincanbin at 2015-02-01
2人收藏 • 3153人看过

如图,使用JavaScript可以获取页面中的Cookie

blob.png

而在HTTP Header的Set-Cookies时加入HttpOnly属性,则可以告诉浏览器,禁止本域下的JavaScript获取Cookies,这也可以一定程度上避免XSS。

PHP中可以通过给setcookie函数的最后一个参数传入True值来实现HttpOnly,函数原型如下:

bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [,string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )

详情参考: http://php.net/manual/en/function.setcookie.php

使用后,可以看到,登陆时返回的Header中,加入了HttpOnly属性:

blob.png

此时再在Console中输入:

document.cookie

也不会打印出Cookies了,一定程度上避免了XSS。

1 个回复 | 最后更新于 2015-02-01


登 录


现在注册

QQ  登 录    Weibo  登 录    GitHub  登 录