wp-password-bcrypt 是一个开源项目,完全免费使用。
概述
wp-password-bcrypt 是一款 WordPress 插件,旨在用现代且安全的 bcrypt 取代 WP 过时且不安全的基于 MD5 的密码哈希算法。
此插件要求 PHP 版本不低于 5.5.0,并附带 WordPress 内置的 password_hash 和 password_verify 函数。
问题
WordPress 仍然使用基于 MD5 的密码哈希方案。由于这些网站拒绝提高 PHP 的最低要求,这导致 25% 的网站安全性降低。由于继续允许 PHP 版本降至 5.2,这些网站无法使用像 password_hash 这样的新函数。
这是一个 WordPress 忽视了四年多的已知问题。 WordPress 不仅默认使用不安全的 MD5 算法,而且它还无法做到以下任何一件事:
解决方案
WordPress 至少做了一件好事:他们使 wp_check_password 和 wp_hash_password 函数可插入。这意味着我们可以在插件中定义这些函数并“覆盖”默认函数。
此插件添加了 3 个函数:
wp_check_password
wp_hash_password
wp_set_password
wp_hash_password
此函数是最简单的。此插件只调用 password_hash 函数,而不是 WP 的默认密码哈希函数。wp_hash_password_options 过滤器可用于设置可接受 password_hash 的选项。
wp_check_password
基本上,此函数只调用 password_verify 函数,而不是默认函数。但是,它还会检查用户的密码是否之前已使用基于 MD5 的旧哈希函数进行过哈希处理,并使用 bcrypt 再次进行哈希处理。这意味着您仍然可以在现有网站上安装此插件,并且一切将无缝运行。
check_password 过滤器的使用方式与 WP 默认函数相同。
wp_set_password
此函数实际上包含在内,但添加了一个返回哈希值的函数。WP 默认函数不返回任何值,这意味着您将无缘无故地对其进行两次哈希运算。
此操作 wp_set_password 的使用方式与 WP 默认函数相同。
Bài Viết Liên Quan
UX Builder (Flatsome) 页面编辑器的优缺点
WPBakery 与其他页面构建器的优缺点比较
SSL 对网站为何重要
使用 WordPress 的 Easy Table of Contents 为你的网站创建目录
Jetpack 插件简介及其与 WordPress 的结合优势
Flatsome 主题介绍
Bài Viết Cùng thể loại
UX Builder (Flatsome) 页面编辑器的优缺点
WPBakery 与其他页面构建器的优缺点比较
使用 WordPress 的 Easy Table of Contents 为你的网站创建目录
Jetpack 插件简介及其与 WordPress 的结合优势
Flatsome 主题介绍
使用 User Role Editor 插件分配用户权限