PHP安全编程:cookie暴露导致session被劫持
来源:互联网 发布:网络测线仪品牌 编辑:程序博客网 时间:2024/06/05 03:00
使用Cookie而产生的一个风险是用户的cookie会被攻击者所盗窃。如果会话标识保存在cookie中,cookie的暴露就是一个严重的风险,因为它能导致会话劫持。
PHP为你处理相关会话管理的复杂过程
最常见的cookie暴露原因是浏览器漏洞和跨站脚本攻击(见专题前几部分)。虽然现在并没有已知的该类浏览器漏洞,但是以往出现过几例,其中最有名的一例同时发生在IE浏览器的4.0,5.0,5.5及6.0版本(这些漏洞都有相应补丁提供)。
虽然浏览器漏洞的确不是web开发人员的错,但是你可以采取步骤以减轻它对用户的威胁。在某些情况下,你可能通过使用一些安全措施有效地消除风险。至少你可以告诉和指导用户打上修正漏洞的安全补丁。
基于以上原因,知道新的安全漏洞是很有必要的。你可以跟踪下面提供的几个网站和邮件列表,同时有很多服务提供了RSS推送,因此只要订阅RSS即可以得到新安全漏洞的警告。SecurityFocus网站维护着一系列软件漏洞的列表(http://online.securityfocus.com/vulnerabilities),你可以通过开发商、主题和版本进行检索。PHP安全协会也维护着SecurityFocus的所有最新通知。(http://phpsec.org/projects/vulnerabilities/securityfocus.html)
跨站脚本攻击是攻击者盗窃cookie的更为常见的手段。其中之一已在前面博文描述。由于客户端脚本能访问cookies,攻击者所要的送是写一段传送数据的脚本即可。唯一能限制这种情况发生的因素只有攻击者的创造力了。
防止cookie盗窃的手段是通过防止跨站脚本漏洞和检测导致cookie暴露的浏览器漏洞相结合。由于后者非常少见(此类漏洞将来也会比较罕见),所以它并不是需要关心的首要问题,但还是最好要紧记。
PHP为你处理相关会话管理的复杂过程
最常见的cookie暴露原因是浏览器漏洞和跨站脚本攻击(见专题前几部分)。虽然现在并没有已知的该类浏览器漏洞,但是以往出现过几例,其中最有名的一例同时发生在IE浏览器的4.0,5.0,5.5及6.0版本(这些漏洞都有相应补丁提供)。
虽然浏览器漏洞的确不是web开发人员的错,但是你可以采取步骤以减轻它对用户的威胁。在某些情况下,你可能通过使用一些安全措施有效地消除风险。至少你可以告诉和指导用户打上修正漏洞的安全补丁。
基于以上原因,知道新的安全漏洞是很有必要的。你可以跟踪下面提供的几个网站和邮件列表,同时有很多服务提供了RSS推送,因此只要订阅RSS即可以得到新安全漏洞的警告。SecurityFocus网站维护着一系列软件漏洞的列表(http://online.securityfocus.com/vulnerabilities),你可以通过开发商、主题和版本进行检索。PHP安全协会也维护着SecurityFocus的所有最新通知。(http://phpsec.org/projects/vulnerabilities/securityfocus.html)
跨站脚本攻击是攻击者盗窃cookie的更为常见的手段。其中之一已在前面博文描述。由于客户端脚本能访问cookies,攻击者所要的送是写一段传送数据的脚本即可。唯一能限制这种情况发生的因素只有攻击者的创造力了。
防止cookie盗窃的手段是通过防止跨站脚本漏洞和检测导致cookie暴露的浏览器漏洞相结合。由于后者非常少见(此类漏洞将来也会比较罕见),所以它并不是需要关心的首要问题,但还是最好要紧记。
阅读全文
0 0
- PHP安全编程之cookie暴露导致session被劫持
- PHP安全编程:cookie暴露导致session被劫持
- PHP安全编程:session劫持的防御session 数据暴露
- PHP安全编程:session劫持的防御
- PHP安全编程之session劫持的防御
- PHP安全编程:防止源代码的暴露
- PHP安全编程:防止源代码的暴露
- PHP安全编程之不要暴露数据库访问权限
- PHP安全编程之防止源代码的暴露
- PHP安全编程:不要暴露数据库访问权限
- Cookie窃取和Session劫持
- cookie窃取和session劫持
- PHP漏洞全解(七)-Session劫持
- PHP漏洞全解(七)-Session劫持
- PHP漏洞全解(七)-Session劫持
- PHP漏洞之session会话劫持
- PHP漏洞全解(七)-Session劫持
- PHP漏洞全解(六)-Session劫持
- 3.1 用Android Studio编写第一个应用程序Hello World
- 第九章 扩展你的商店
- 电动汽车电池管理系统预充电阻及预充时间的计算
- .net 双层repeater嵌套 实现树形结构
- 各大公司Java后端开发面试题总结
- PHP安全编程:cookie暴露导致session被劫持
- TortoiseSVN锁定后不能正常解锁
- 跨域
- 图像通道分离和混合
- IDea Maven工程创建的分页查询
- phpcms V9 文字的友情链接and LOGO的友情链接
- recv函数返回值说明
- webstorm配置node服务启动debug(v8debug is not defined)
- Unity3d——报错 The type or namespace name `Ports' does not exist in the namespace `System.IO'