您的位置 首页 php

给你的PHP程序,加装金钟罩,务必践行这8条铁律

引言

哎,想要做到安全,真的很难。

大多数时候还真不知道怎么下手,而至于安全性所带来的效果,也总是模糊不清。这也难怪那么多开发者不重视安全性。

下面提供一个PHP安全最佳实践的列表,帮助大家厘清一些安全需要注意的点。

1 – 筛选并验证所有数据

无论数据来自何处,无论是配置文件、服务器环境、GET和POST,还是其他任何地方,都不要信任它。

过滤 + 验证!

可以使用高效可用的库来实现,比如zend-inputfilter。

2 – 使用参数化数据库查询

为了避免 SQL注入攻击 永远不要用外部数据连接或插入SQL字符串 。而是使用参数化查询和准备好的语句。

这些可以与特定的第三方库一起使用,也可以使用PDO。

3 – 设置open_basedir

open_basedir 指令限制PHP可以从open_basedir目录向下访问文件系统的文件。不能访问该目录之外的任何文件或目录。

这样,如果恶意用户试图访问敏感文件,比如/etc/ passwd ,访问将被拒绝。

4 – 检查您的 SSL / TLS 配置

通过定期扫描,确保服务器的SSL/TLS配置是最新的和正确配置的,并且没有使用 弱密码 过时的TLS版本 、没有 弱密钥的有效安全证书 等。

5 – 使用TLS或公钥连接到远程服务

在访问任何 数据库 服务器 远程服务 (如 Redis 、Beanstalkd或Memcached)时,坚持使用TLS或公钥。

这样做可以确保 只允许经过身份验证 的访问,并且对 请求和响应进行加密 ,并且不会以明文传输数据。

6 – 不要在 header 中发送敏感信息

默认情况下,PHP将在HTTP header 中设置版本号。一些框架也是这么做的。

7 – 能写的尽量都写上日志

无论您是否记录失败的登录尝试、密码重置或调试信息,都要确保您记录的是易于使用的成熟包,比如Monolog。

8 – 要有内容安全策略

无论你是只有一个页面、静态网站、大型静态网站,还是复杂的基于web的应用程序,都要实现内容安全策略。它有助于缓解一系列常见的攻击,比如XSS。

写在最后

当应用上规模之后,这些都用的到。别说一直都在开发小应用,小数据量的系统,想要进阶,系统安全很考验开发人员的功底哦。

Happy coding 🙂

文章来源:智云一二三科技

文章标题:给你的PHP程序,加装金钟罩,务必践行这8条铁律

文章地址:https://www.zhihuclub.com/152909.shtml

关于作者: 智云科技

热门文章

网站地图