考虑到安全性,PHP框架提供了哪些优势?

时间:2010-12-24 19:10:07

标签: security codeigniter frameworks php

PHP有许多可用的PHP框架 -

  • Zend

  • CakePHP的

  • Symfony的

    依旧......

大多数框架都处理与安全相关的问题?

(据我所知(跨站点脚本(XSS)),如果我们使用那些方法,大多数人都会处理漏洞。大多数人都会关注哪些其他问题?)

除了在项目中使用框架外,还需要注意哪些其他安全问题?

编辑:就我而言,我使用的是codeigniter框架。

3 个答案:

答案 0 :(得分:1)

[垃圾]
我前段时间创建了一个小概述表:http://matrix.include-once.org/framework/其中包含一些关于Web应用程序安全性基本基础的摘要:

  • DB转义/或参数化SQL(例如通过ORM)
  • 输入过滤/清理
  • 输出编码
  • 授权哈希函数(如果有的话)
  • 分离前端和管理员后端(未完成,主要是不适用)

如果我想概括一下,大框架确实涵盖了很多。因此,真正的问题成为业务/处理层的逻辑疏忽。

答案 1 :(得分:0)

这是一个模糊的问题,因为它完全取决于你所谈论的框架。

您列出的所有框架都使用某种类型的数据库抽象层,无论是简单的查询构建器还是更大的ActiveRecord / ORM实现。这些数据库抽象层将在大多数时间停止SQL注入。

CodeIgniter提供了一个Encrypt类,可以帮助您生成密码和随机字符串。在您的主配置文件中是一个“加密密钥”,它将特定于您的应用程序。这意味着您的应用程序将具有另一个应用程序的唯一salt,因此如果有人获得/访问您的数据库的副本,他们将无法计算出密码。

每个框架都有许多其他安全功能,但这些都是基础知识。

答案 2 :(得分:0)

无论对确保PHP框架安全有多少关注和思考,现实仍然存在改进的空间,即使像Codeigniter这样的框架提供XSS,输入过滤,请求验证,数据库抽象等好东西,总会有错误和问题。

绝不仅仅依赖于框架内置的安全保护方法。总是先了解框架是如何做某事的,理解逻辑然后重写,以便在发现某些东西不够安全的时候重新考虑你的需求。

然而,尽管如此,我已经使用Codeigniter几个月以及几个高端,高流量的网站,并且不能说我遇到过任何安全问题或漏洞。在安全性方面,框架的一个真正优势是它们可能会保护您免受某种您从未知道的攻击(这是一个非常棒的奖励)。

了解Codeigniter和其他框架如何解决安全问题并保护您的应用程序,您会发现它将增强您的开发知识,并在您编写需要严格安全性和高可靠性的大型应用程序时将来受益。 / p>