为了帮助你开发安全的 WordPress 插件和主题,有许多工具可以帮助你检测代码中的安全漏洞。
在本课中,你将了解一些可用于测试代码安全漏洞的工具,并简要介绍如何使用它们。
你还将了解在哪里可以找到关于 Web 应用程序关键安全风险的更多信息。
插件
WordPress.org 仓库中有两个插件可以帮助你验证代码。
Plugin Check 是一个 WordPress 插件,你可以用它来测试你的插件是否符合 WordPress.org 插件目录的要求标准,其中一项要求就是你的插件代码是安全的。
安装并激活该插件后,你可以从 WordPress 管理仪表盘的“工具”菜单中访问 Plugin Check 管理页面。
选择你要测试的插件,并确保勾选了“安全”复选框。
点击检查!按钮运行测试。
结果会以表格形式显示,列出需要解决的问题,包括文件名和行号。
还有一个 Theme Check 插件,它与 Plugin Check 类似,但适用于主题。
安装此插件后,你可以从 WordPress 管理仪表盘的“外观”菜单中访问 Theme Check 管理页面。
同样,你选择要检查的主题,然后点击检查!按钮运行测试。
结果会显示在页面底部,列出需要解决的问题。
命令行
如果你想要可以从命令行运行的工具,可以使用 PHP_CodeSniffer 配合 WordPress 编码标准规则。
这种组合不仅会根据 WordPress 编码标准检查你的代码,还会检查安全漏洞。
要使用 PHP_CodeSniffer 配合 WordPress 编码标准,你需要安装 Composer,这是一个用于 PHP 项目的依赖管理器。
安装 Composer 不在本课的讨论范围内,但你可以在 Composer 网站上找到适用于 macOS/Linux 和 Windows 操作系统的安装说明。
为了让 Composer 工作,你还需要在计算机上安装 PHP,这样你就可以使用 PHP CLI 二进制文件,它允许你在终端中运行 PHP 脚本,而不仅仅是在浏览器中。
你可以在 PHP 手册的“安装与配置”部分找到在你的系统上安装 PHP 的方法。
安装 PHP 后,请确保将 PHP CLI 二进制文件的路径添加到计算机的操作系统路径中,这样你就可以在计算机的任何位置运行 PHP 命令。
要测试这一点,你可以在终端中运行以下命令:
php -v
它应该会输出 PHP 版本。
安装 Composer 后,你在终端中运行以下命令,在你的插件或主题目录中初始化一个新的 Composer 项目:
composer init
按照终端内的说明创建一个新的 Composer 项目。
这将在当前目录中创建一个 composer.json 文件,其中包含你项目的依赖项列表。
接下来,按照 WordPress 编码标准规则仓库中的说明,在你的插件目录中安装所有必需的依赖项:
composer require --dev wp-coding-standards/wpcs:"^3.0"
安装完成后,你可以使用 WordPress 标准对代码运行 PHP_CodeSniffer,它会输出需要解决的问题列表。
vendor/bin/phpcs --standard=WordPress your-plugin-file.php
代码编辑器
根据你使用的代码编辑器,有多种方法可以在编码时检查漏洞。
例如,Visual Studio Code 有许多扩展可以在编辑器内运行 PHP_CodeSniffer 工具,你可以在 VS Code 扩展市场中搜索“phpcs”找到它们。
此外,还有一些第三方服务可以在你的代码编辑器中扫描代码漏洞,例如 Sonar 的 SonarLint 工具。
SonarLint 对所有开源项目完全免费。只有当你想要分析私有仓库时才需要付费。
SonarLint 可作为 Visual Studio Code、JetBrains 编辑器和 Eclipse 的插件使用。
配置正确后,这些扩展可以在你编写代码时高亮显示问题,这样你就可以在提交代码之前修复它们。
OWASP
虽然不特指某个工具,但熟悉开放 Web 应用程序安全项目(OWASP)也是一个好主意。
OWASP 是一个致力于提高软件安全性的非营利基金会。他们提供了许多资源,包括 OWASP Top 10,这是 Web 应用程序最关键的十大安全风险列表。
安全是一个不断变化的领域,漏洞也会随着时间的推移而演变。通过遵循开放网络应用安全项目(OWASP)十大列表,你可以及时了解最新的安全风险和最佳实践。