当前位置:首页 > 日记 > 正文

PHP程序应该读这本书。

PHP程序应该读这本书。
PHP在过去的几年里口碑很差,有很多关于它糟糕的设计和语法上的矛盾的讨论,但是主要的抱怨通常是安全的。许多PHP站点在几分钟内变黑了,即使是经验丰富、知识渊博的程序员也会说这种语言本身是不安全的。

我总是反对它,因为有太多的PHP安全违反,因为常识。

PHP应用程序常常因为:

PHP应用程序太多了。

学习和写作很容易。

坏的PHP很容易写。

它是如此simple.php已经流行多年。比较流行的PHP,越多的漏洞被发现。发现的安全漏洞的黑客很少PHP处理引擎本身,通常是剧本本身的弱点。

这意味着,当一个PHP应用程序被涂黑时,大多数程序员都错了。对不起,这是真的。

您可以像其他Web语言一样编写安全PHP,现在是开始真正探索安全问题的时候了。
防止php破解的最佳保护

编写安全PHP代码并不是为PHP开发人员隐藏的秘密的黑色艺术,但是信心太分散了。你需要花上几个星期或几个月(或不长)收集一些零散的目录或规则的安全措施,甚至真实的经验也会告诉你它有多么重要。

幸运的是,Ben Edmunds做到了你。最近出版的建筑安全的PHP应用程序-实用指南,这是一个最好的安全相关的书我都看了,当然,最好涵盖PHP。在这篇文章中我将阐述为什么我认为每个PHP开发者应该看它。

这本书是一个简洁的指南,引导你进入开发人员的下一层,并让你创建更好、更安全的脚本。

简介

这本书很快就进入了Web开发的常识性规则:不要信任你的用户,过滤所有的输入。从一个小场景开始,它跳转到用户可以进入系统的技术路线:

SQL注入

大量的赋值字段

类型转换

过滤器输入/输出

PHP初学者(和一些老手)容易被忽略,许多人认为过滤输入是一个可选的步骤,这一章做了很多讨论。

在阅读过程中,它让我想起了我多年前的第一天工作,那时我挖掘了已有的代码,发现了新用户创建脚本的代码。

复制代码代码如下所示:

如果($ _post {isadmin} = = 1){

在数据库中设置为admin的代码

}
当你看到这段代码时,我感到非常恐慌,因为它是一个非常有效的脚本,它很容易成为恶意用户去修复、猜测和插入一个简单的表单变量,然后访问大约5000个信用卡号和其他个人信息。

深入挖掘后,我发现以下代码:

复制代码代码如下所示:

插入数据库(id,名称,…)值()。_post美元{名字}。
我第一天就差点辞职了,因为他们依赖这些可怕的代码。代码在那里,你负责改变它,你必须避免生产更多。

本章讨论了为什么像这样的代码是一个巨大的风险,以及如何修复它。

HTTPS证书

这是另一个本包含脚本、故事和一点幽默的地方,同时也清楚地解释了不太清晰的HTTPS概念。

这本书描述了一个证书的工作原理、证书类型,及其实现,甚至如何将其部署在Apache和Nginx。

密码

这本书解释清楚密码、Hashi、查找表和盐,这是为开发人员创建的用户登录系统非常有帮助。

这是一场极度缺乏,即使在2014,我仍然有一个密码存储纯文本或应用程序就像rot13加密{ 1 }注意保护自己的愚蠢的方法。让人们使用你的应用程序和良好的信誉,不做。

密码和其他敏感数据应该很难获得,甚至有人得到数据库的所有权利。这本书被完全包括在内,它将给你一个更好的指南来设计一个更好的系统。

认证和访问控制

这本书的主题非常全面。当您构建一个新的PHP应用程序时,首先考虑的是:

谁可以访问哪些资源

谁可以控制其他用户的访问权限

这是考虑到应用的一个重要的地方,特别是应用程序处理敏感数据,对企业的发展有相当一部分是致力于此。如果不建立正确的身份验证和访问控制的,什么是最可能发生的是,你让用户感到困扰,并产生更多的工作,这是服务器的数据差距和/或数据破坏严重。

这本书很好地介绍了基本知识,然后深入研究了访问文件或单个应用程序页面的控制工作。有许多代码示例供参考。

具体的利用

这本书涵盖了破坏系统的一些常用用法,并详细探讨了跨站点脚本。它可以被认为是攻击者使用应用程序最常用的方式,它解释了各种攻击,以及如何保护自己。

好吗你可以通过这个链接打折图书!

我喜欢这本书的大部分地方。

在阅读这本书的过程中,我真正喜欢的是信息如何以一种对初学者和经验丰富的程序员有用的方式呈现。有一系列的概念被提出,它们是什么以及如何保护自己。

你可以很快地阅读这本书,因为没有太多内容。新手可以阅读这本书,检查每一个主题,开始查看他们的代码,并改正。记住,在这种情况下,你需要继续修改它。如果你回头看,你肯定会为六个月前写的代码感到羞愧,而你做的是正确的事情。

更先进和有经验的程序员可以使用这个指南来填补他们的弱点(不管你在行业中有多长时间,并承认你的弱点),并更好地理解他们的系统在他们的工作。例如,多年来我疯狂地使用认证,但我从来没有考虑过在本书中提到的水平。

不管你是谁,你都会学到一些东西,所以不要看这篇文章,买一本!使用此链接购买是打折的!!!

相关文章

2015快乐人格签名

2015快乐人格签名

人格,快乐,电脑软件,我不想错过你生命中的每一寸。 我是你得不到的人。 愿一个人爱你至永生。 世界上总有一个人陪你到老。 所有的生物都不如你笑得好。 我愿意为你倾诉疯狂的心。 事实上,爱并不重要,无论你多么重要。 我们会一起死去。 只要…

Javascript函数参数使用指定参数名称值的

Javascript函数参数使用指定参数名称值的

函数参数,方法,参数,名称,电脑软件,本文介绍了将Javascript函数参数分配给参数名的方法,供大家参考,具体分析如下: 事实上,当参数传递给函数时,您可以使用参数名、参数值,这样就不会出错,但是下面的代码是通过字典实现的,不像Python完整支持的方法那样。…

PS图象处理软件做了一个简单的万圣

PS图象处理软件做了一个简单的万圣

万圣节,图象,处理软件,火焰,简单,这里我们介绍了一种简单的制作火焰特征的方法,它是由图层样式制作的。我们只需要设置一些简单的参数来制作一个好的火字符。 这里我们介绍了一种简单的制作火焰特征的方法,它是由图层样式制作的。我们只需要…

php获取视频预览的简易方法

php获取视频预览的简易方法

方法,简易,视频,电脑软件,php,本文介绍了PHP获取简单视频预览的一种简单方法,供大家参考,具体实现方法如下: 复制代码代码如下: converttoflv(一些AVI 视频输入。 功能converttoflv($美元输入,输出){ 将输入转换为$ ; $命令=ffmpeg V 0 y我投入…

人工智能绘制女性肖像的全过程

人工智能绘制女性肖像的全过程

绘制,人工智能,肖像,全过程,女性,本教程将向您介绍使用AI绘制女性肖像的方法。引言非常清楚,详细描述了肖像的方法和步骤。建议像你这样的朋友来学习。我希望你能喜欢这个教程。 本教程是朋友介绍ai绘制女性肖像的过程。教程很清楚。作者是…

JS中使用拆分和替换的例子

JS中使用拆分和替换的例子

拆分,替换,例子,电脑软件,JS,这篇文章说明了JS中的拆分和替换的用法,供大家参考,具体分析如下: 1。分裂: 复制代码代码如下所示: 员工继续进入登记表打印标志sdfsd sdfsd var str =1231sdfsd ; 警报(STR); 因此,str.split VaR(); 警报(因此{ 1 }); …

PHP按排序()函数排列数组的方法

PHP按排序()函数排列数组的方法

排序,函数,数组,排列,方法,本文介绍了用排序函数的PHP()函数对数组进行排序的方法,供大家参考,具体分析如下: 排序()函数用于将数组作为新键的数组单元的函数排序。原始的密钥名将被删除。 如果成功,返回true或返回false。 $ =数组() 排序(alpha); fo…

PS制作精美的水墨画海报

PS制作精美的水墨画海报

水墨画,海报,精美,电脑软件,PS,本教程是向朋友介绍一个PS,使照片美丽的海报和风格海报。本教程制作的海报非常好。这个教程不是很难。推荐给你最喜欢的朋友。 本教程非常简单。主要介绍PS制作成水墨画和插画风格的海报。我希望能帮助我的朋…

AI是如何切割的人工拍摄照片的方法

AI是如何切割的人工拍摄照片的方法

方法,照片,电脑软件,AI,AI是如何切割图片的人工智能的功能非常强大。许多功能我不清楚。在这里,萧边只能教你一个简单的还原,并学会砍掉做其他的设计。现在让我们看看AI切割照片的方式。 ai是非常强大的,很多功能我都不知道,这个小编辑器只能教…

AI让Win8的效果图,飞片

AI让Win8的效果图,飞片

效果图,电脑软件,AI,本教程介绍给朋友,利用AI让Win8的效果图,是炸飞。这个教程的效果真的很好。它很有创意,难度也不大。推荐。让我们一起学习。 受到修改的win8lo,今天忙的智慧女神,想一下子效果(妈的,不只是复制下面的QQ)为大家带来爱的渲染过程…

Illustator画毛复杂抽象的线球怪物

Illustator画毛复杂抽象的线球怪物

抽象,效果图,怪物,电脑软件,Illustator,本教程介绍朋友给Illustator画毛和复杂抽象的线球怪物效果图。整个绘画过程不是很难。喜欢朋友,可以一起学习。 本教程介绍朋友给Illustator画了一个毛茸茸的复杂抽象的线球怪物效果图的方法。教程产…

PHP字符串函数strstr()学习

PHP字符串函数strstr()学习

学习,字符串函数,电脑软件,PHP,strstr,复制代码代码如下所示: * 定义和用法 strstr()为另一个字符串中第一次出现功能搜索。 函数返回字符串的其余部分(从匹配点)。如果找不到搜索字符串,则返回false。 语法 字符串strstr(字符串,搜索) 参…