發行說明:iThemes Security Pro 中的雙因素代碼添加了加密

已發表: 2022-10-21

在最新版本的 iThemes Security Pro 中,我們添加了加密以保護用於多因素登錄身份驗證的雙因素身份驗證 (2FA) 代碼。 為確保您的站點使用此新功能,請在 wp-admin 插件儀表板中升級到 iThemes Security Pro 版本 7.2.2。

與任何新功能一樣,我們確信對於新功能以及我們添加它的原因肯定存在疑問。 在這篇文章中,我們詳細介紹了我們所做的更改,為什麼我們選擇為雙因素身份驗證添加額外的安全功能,以及對整個 WordPress 登錄安全性當前狀態的一些想法。

加密

雙重身份驗證代碼存儲的這種變化意味著什麼?

iThemes Security 支持三種類型的雙因素身份驗證方法:移動應用程序、電子郵件和備份代碼。 它們各自的功能略有不同。

當您使用電子郵件 2FA 時,iThemes Security 會生成一個隨機的八位數代碼並將其通過電子郵件發送給您。 我們將這個隨機代碼的所謂“哈希”存儲在 WordPress 數據庫中。 哈希讓我們驗證您是否給我們提供了與我們存儲在數據庫中的相同的八位代碼。

但是,iThemes Security 無法將散列“解碼”回原始的八位隨機碼。 這就是為什麼如果您要求 iThemes Security “重新發送” 2FA 電子郵件,我們會生成一個新的隨機代碼,而不是重新向您發送我們在第一封電子郵件中發送的相同 2FA 代碼。

這類似於 WordPress 如何驗證您的密碼是否正確。 但是,如果您忘記了密碼,則必須創建一個新密碼,WordPress 無法向您發送當前密碼。

移動雙因素是不同的。 每 30 秒在您的移動應用程序中出現一個新代碼。 這是否意味著 iThemes Security 正在將每個新代碼保存到數據庫中? 不,相反 iThemes Security 使用“共享密鑰”的概念。

當您在 iThemes Security 中設置 Mobile Two-Factor 時,我們會向您顯示一個 QR 碼,其中包含您帳戶獨有的密鑰。 在您的雙因素應用程序中掃描 QR 碼會將密鑰複製到您的手機。

當您使用您的移動應用程序登錄時,iThemes Security 和您的手機都會根據“共享密鑰”生成一個六位數的代碼。 如果代碼匹配,你就進去了!

與我們只需要存儲哈希的基於電子郵件的兩因素不同,這意味著我們必須以允許我們訪問明文的方式存儲移動應用程序的密鑰。

絕大多數 WordPress 的兩因素身份驗證插件和服務都將兩因素密鑰存儲在 WordPress 數據庫中,iThemes Security 也不例外。 必須存儲這些代碼,以便當用戶從手機或設備上的身份驗證應用程序輸入 2FA 代碼時,安全插件可以匹配這些代碼以驗證嘗試登錄的用戶。

將這些代碼存儲在數據庫中是最安全的方法,因為存儲在數據庫中的任何信息只能由數據庫用戶及其密碼訪問。 這些憑據存儲在您的 WordPress wp-config.php 文件中,這允許您的 WordPress 站點訪問此數據庫中的信息。

雖然有一些服務使用基於文件系統的方法來處理 2FA 代碼,但 iThemes Security 和大多數其他主要的雙因素身份驗證服務都選擇了更安全的數據庫存儲方法。

為了提高安全性,我們為這些存儲在網站 WordPress 數據庫中的代碼添加了加密功能。 如果數據庫以某種方式受到另一個漏洞的破壞,這種添加的加密會增加另一層安全性,以保護 WordPress 站點免受可能與其他漏洞結合的任意數量的基於登錄的攻擊。

為什麼我們選擇添加此功能

如果 WordPress 網站得到充分保護,那麼暴露兩因素身份驗證代碼的可能性就會很低。 但是,如果存在導致數據庫訪問受到威脅的託管服務提供商服務級別漏洞,或者如果插件或主題中存在積極利用的零日漏洞,則可以將未加密的雙因素身份驗證代碼與另一個漏洞結合使用.

在 iThemes,我們客戶的 WordPress 網站的安全性對我們的業務至關重要。 因此,即使是邊緣案例的漏洞場景引起我們的注意,我們的第一反應和優先事項是這些站點的安全性。

我們的目標是讓您的 WordPress 網站在每一個關頭都安全,以便您網站的任何方面,從您的文件和數據庫到您的登錄過程,都受到保護,免受惡意攻擊者的侵害。 有效防禦攻擊需要 WordPress 的所有方面都得到充分保護。

什麼是雙重身份驗證?

雙因素身份驗證 (2FA) 是一種多因素身份驗證 (MFA),它通過要求兩種驗證方法在系統(在本例中為 WordPress 站點)上驗證您的身份來增強訪問安全性。 這些因素可能包括您知道的信息,例如您的用戶名或電子郵件和密碼,以及您擁有的信息,例如使用身份驗證應用程序訪問您的設備以對您進行身份驗證或確定您是誰。 Google Authenticator 等身份驗證應用程序會生成一個基於時間的一次性密碼,該密碼每分鐘都會更改。

密碼是不夠的

雙重身份驗證變得越來越重要,因為網絡釣魚攻擊、社會工程攻擊、密碼暴力攻擊和密碼重用問題意味著單一的僅密碼身份驗證已經不夠用了。

正是由於這樣的問題,像 iThemes Security 這樣的創新者使用生物特徵認證和私鑰/公鑰密碼術為真正的無密碼登錄添加了密碼,以創建更複雜的認證協議來保護關鍵任務系統。 密碼被破解,因此 iThemes Security Pro 是第一個允許使用密碼進行無密碼身份驗證的 WordPress 安全插件。

使用密鑰,雙因素身份驗證代碼的存儲不是問題,因為私鑰/公鑰加密使密碼和 2FA 都過時了。

如果您的 WordPress 網站確實對您的企業或組織至關重要,那麼使用 iThemes Security 可以證明您對保護該資產的承諾。 確保您提供無摩擦的無密碼登錄和加密的雙因素身份驗證功能,以向您的利益相關者展示您的組織對安全意識網站實施的承諾。

如果您還沒有使用 iThemes Security Pro,您可以通過以下鏈接購買最好的 WordPress 安全插件的專業版。

感謝 Calvin Alkan 負責任地向我們披露該問題