php 安全基础 第七章 验证与授权

本文探讨了Web应用中常见的认证与授权问题,包括暴力破解、密码嗅探等攻击方式,以及如何通过合理的设计来避免这些问题。文章强调了在设计阶段充分考虑访问控制的重要性。

  很多Web应用被其糟糕的身份验证与授权机制所困扰。本章主要讨论相关这些机制的漏洞,传授一些帮助你不犯通病的方法。我将通过一些例子进一步说明这些方法,但请注意不要把这些示例与其上下文割裂开来看,理解其中包含的原则和方法是很重要的。只有到那个时候你才能对它们进行正确运用。

  通过验证我们可以确定一个用户的身份。典型的做法是简单地使用用户名和密码进行检查。这样我们就能确定登录用户是一个授权用户。

  身份验证,常被称为访问控制,是一种你能用来保护对受限资源的访问及确认一个用户是否有权访问特定资源的方法。例如,很多WEB应用会有只对授权用户开放的资源、只对系统管理员开放的资源以及对所有用户开放的资源。

  产生访问控制漏洞的一个主要原因是粗心大意——在Web应用中这一部分程序是最少被关心和注意的。在开发中管理功能和访问控制常常是最后考虑的,而且一般是从授权用户的出发点去考虑和编写,并没有考虑攻击者可能会使用的手段。对授权用户的信任远远高过匿名用户,但是如果你的管理功能是能通过URL直接公开访问的话,就会成为攻击者钟爱的目标。疏忽是你首要的大敌。

  为达到安全的目的,需要在设计时就综合考虑访问控制。它不应只是一个现有应用的门闩,尽管有时可能是这样的,但该流程是非常容易发生错误的,同时访问控制中的错误必然导致安全漏洞。

  访问控制还需要一个可靠的识别机制。毕竟,如果一个攻击者能伪装成一个合法用户,所有的基于用户识别的访问控制是无效的。因此,你要考虑到攻击的情况,例如会话劫持。关于会话相关的攻击手段请参见第四章。

  本章涉及相关验证与授权中通常需要关注的四个方面:暴力攻击,密码嗅探,重播攻击以及永久登录。

转载于:https://www.cnblogs.com/czh-liyu/archive/2008/04/02/1133961.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值