开放的编程资料库

当前位置:我爱分享网 > PHP教程 > 正文

评论:php|架构师的 PHP 安全指南

我今天飞到圣何塞参观Zend,然后参加Zend/PHP会议和博览会(还剩两天……如果你还没有,现在就注册,有时间参加;会议承诺是非常有趣)。

在飞行期间,我有足够的时间阅读Ilia的PHP安全指南,这是我几周前订购的,但此后一直没有时间阅读。

关于PHP安全和一般的Web安全,有一些非常简单的规则已经存在了很长时间,其中最重要的是:永远不要相信您的用户。

Perl开发了一种特殊模式,污点模式,来处理用户输入——如果输入没有被过滤和验证,它就被认为是有污点的(这样做的标准方法是通过正则表达式传递数据)。此外,usestrictusewarnings被认为是perl中的良好实践,因为这两个pragma会让开发人员知道他们何时屈服于坏习惯。

Ilia从安全角度出发,并将其应用于PHP语言。他的书务实地探讨了如何安全地处理用户输入以防止诸如XSS攻击、SQL注入等攻击。最重要的是,他解释了各种危险是什么,给出了一些如何创建攻击的示例—然后是一些保护您的脚本免受攻击的方法。

涵盖XSS攻击、SQL注入、代码注入(通过包含文件)、命令注入、会话和会话劫持。他还提供了一些关于积极主动的技巧——构建沙箱和焦油坑来监控黑客活动,这样您就可以看到自己面临的挑战。

我发现Ilia写的很多理论都不是新的。但是,他的示例通常包含一些我从未考虑过的经验。例如,我经常使用ImageMagick,但从未考虑过如果我尝试将动画GIF转换为另一种格式会发生什么(它会创建多个文件,每帧一个)——以及这可能会如何影响我的脚本(预期的文件名不会出现).我也没有考虑过字符输入实际上可能是经过编码的——这通常对我创建的过滤器无效,或者完全绕过它们。

在一个特定的点上,我觉得我必须祝贺Ilia:他详细介绍了创建安全应用程序的复杂性,并且还竭尽全力展示了坚定的黑客如何仍然可以挫败几乎任何对策。利用用户输入的100%安全应用程序几乎是不可能的—但这并不意味着我们不应该为这个目标而努力。

这本书写得很好,用一种对话的、几乎是阴谋论的语气。(有幸参加了伊利亚在php|Tropics的会议,我可以说他的书面语气与他的演讲语气非常相似,而且非常容易跟随。)

然而,在我看来,这本书的编辑速度很快——有相当多的印刷错误(我会说,平均每三页一个),以及一些大句子或段落应该有的地方在发布之前被重写。布局也有一些问题;例如,在第87页上,页码被插入到第三段的文本中,而不是放在页面底部,许多示例在一页的末尾以一行开始,并在下一页继续(之前的分页符会使这些更易于阅读)。

然而,总而言之,这些编辑和布局问题并没有从消息中减去。Ilia的书为任何称职的PHP开发人员敲响了警钟,应该成为任何PHP开发人员图书馆的一部分。

未经允许不得转载:我爱分享网 » 评论:php|架构师的 PHP 安全指南

感觉很棒!可以赞赏支持我哟~

赞(0) 打赏