7 ช่องโหว่ปลั๊กอินความปลอดภัย WordPress ของคุณไม่สามารถปกป้องคุณจาก (และวิธีการแก้ไขด้วยตนเอง)
เผยแพร่แล้ว: 2025-01-27หากคุณชอบผู้ใช้ WordPress ส่วนใหญ่คุณอาจติดตั้งปลั๊กอินความปลอดภัยเพื่อช่วยให้เว็บไซต์ของคุณปลอดภัย นี่เป็นขั้นตอน แรก ที่ยอดเยี่ยมและจะจัดการกับการป้องกันของคุณโดยเฉพาะอย่างยิ่งหากคุณเปิดใช้งานการรับรองความถูกต้องสองปัจจัย
แต่สังเกตว่าฉันเน้นขั้นตอน แรก ฉันทำอย่างจงใจเพราะหลายคนคิดว่ามันเป็นขั้นตอน เดียว ที่พวกเขาต้องทำ หากคุณใส่ใจเกี่ยวกับความปลอดภัยของเว็บไซต์ของคุณอย่างแท้จริงก็ไม่ควรเป็นเช่นนั้น
ข่าวดีก็คือด้วยการกำหนดค่าด้วยตนเองแบบเบาคุณสามารถปรับปรุงความปลอดภัยของ WordPress ของคุณในระดับเซิร์ฟเวอร์และทำให้ไซต์ของคุณทนต่อการโจมตีได้มากขึ้น เป็นโบนัสเพิ่มเติมคุณจะรู้สึกเหมือนเป็นผู้เชี่ยวชาญด้านความปลอดภัยของ WordPress ในขณะที่ทำมัน - เป็นส่วนที่สำคัญที่สุดของกระบวนการทั้งหมด
ดังนั้นหากคุณพร้อมที่จะแปลงจากผู้ใช้ WordPress ทั่วไปเป็นมืออาชีพและสร้าง BulletProof เว็บไซต์ของคุณให้เริ่มต้นกันเถอะ
กล่องเครื่องมือ
เชื่อหรือไม่ว่าเพื่อดึงสิ่งนี้ออกไปคุณจะต้องใช้เครื่องมือสาม (อาจสี่) เท่านั้น
- การตรวจสอบไซต์ Sucuri : เครื่องมือฟรีในการเรียกใช้การสแกนครั้งแรกและเพื่อตรวจสอบการเปลี่ยนแปลงของคุณ
- ส่วนหัวความปลอดภัย : เครื่องมือฟรีอื่นที่ให้ข้อเสนอแนะโดยละเอียดเกี่ยวกับการกำหนดค่าความปลอดภัยของเว็บไซต์
- เข้าถึงแผงควบคุมโฮสติ้งของคุณ : ฉันใช้ cpanel แต่ฉันจะครอบคลุมสิ่งที่ต้องทำถ้าคุณมีอย่างอื่น
- ตัวแก้ไขข้อความ (อาจ): แผงควบคุมโฮสติ้งของคุณอาจมีหนึ่งในตัวดังนั้นอาจไม่จำเป็น แต่ฉันจะแสดงรายการที่นี่ในกรณี
สิ่งที่ซับซ้อนที่สุดจากรายการข้างต้นคือการเข้าถึง cpanel มันไม่ยาก แต่ บริษัท โฮสติ้งทุกแห่งมีวิธีของตัวเองที่จะทำและถ้าคุณไม่เคยทำมาก่อนคุณต้องคิดออก
วิธีที่ง่ายที่สุดในการเข้าถึง (หากคุณไม่แน่ใจ) คือไปที่ฐานความรู้เว็บไซต์ของ บริษัท โฮสติ้งของคุณและค้นหา“ cpanel” หากไม่ได้รับคุณทุกที่ให้ติดต่อฝ่ายสนับสนุนลูกค้าของพวกเขา
การตรวจสอบความปลอดภัยเริ่มต้นของคุณ
ก่อนที่คุณจะเริ่มการซ่อมแซมด้วยรหัสของเว็บไซต์ของคุณก่อนอื่นคุณต้องตรวจสอบว่ามันจัดการกับความปลอดภัยในปัจจุบันได้อย่างไร การเปลี่ยนแปลงที่ฉันจะแสดงให้เห็นว่าคุณมีความเฉพาะเจาะจงมากดังนั้นคุณต้องการให้แน่ใจว่าพวกเขาจำเป็นสำหรับเว็บไซต์ของคุณ
ในกรณีส่วนใหญ่ - โดยเฉพาะอย่างยิ่งถ้าคุณพึ่งพาโฮสติ้งที่ใช้ร่วมกัน - คุณจะต้องทำ อย่างไรก็ตามในแผนการโฮสติ้ง WordPress ที่มีการจัดการระดับสูงกว่านั้นเป็นไปได้ว่าโฮสต์ของคุณอาจทำการปรับแต่งในนามของคุณ ดังนั้นเหตุใดการเรียกใช้การสแกนเหล่านี้ล่วงหน้าจึงมีความสำคัญ
ตรวจสอบไซต์ sucuri
ในการเริ่มต้นใช้เครื่องมือตรวจสอบไซต์ของ Sucuri และวางที่อยู่เว็บไซต์ของคุณลงในเครื่องสแกน:
คลิก ส่ง และปล่อยให้ Sucuri ทำงานเวทมนตร์
เพื่อจุดประสงค์ของการสอนนี้ฉันตั้งใจโดยไม่มีการป้องกันไซต์ส่วนตัวของฉันเพื่อแสดงให้คุณเห็นว่าการกำหนดค่า WordPress มาตรฐานเป็นอย่างไร (ก่อนที่คุณจะทำการแก้ไข):
อย่างที่คุณเห็นการสแกนเปิดเผยช่องว่างด้านความปลอดภัยห้าประการที่คุณจะเห็นในการตั้งค่า WordPress ทั่วไป ฉันจะอธิบายว่าพวกเขาหมายถึงอะไรในช่วงเวลาหนึ่ง
ส่วนหัวความปลอดภัย
ในขณะที่ Sucuri ให้มุมมองที่ดีของเราเรามาดูโง่ ๆ สักครู่แล้วตรวจสอบว่าส่วนหัวด้านความปลอดภัยที่พูด ขั้นตอนแรกนั้นเหมือนกับ Sucuri - เพียงแค่พิมพ์หรือวางที่อยู่เว็บไซต์ของคุณลงในเครื่องมือและคลิกที่ สแกน
ขึ้นอยู่กับว่าไซต์ของคุณมีขนาดใหญ่แค่ไหนผลลัพธ์อาจใช้เวลาได้ทุกที่จากวินาทีถึง ... ดีกว่าอีกต่อไป 😅ผลลัพธ์เริ่มต้นของฉันเป็นแบบนี้:
สีแดงทั้งหมดและยักษ์ F อาจดูน่ากลัวเล็กน้อย แต่จริง ๆ แล้วมันให้ข้อมูลที่เป็นประโยชน์แก่เรา เครื่องหมายสีแดงแต่ละอันชี้ให้เห็นส่วนหัวความปลอดภัยที่ขาดหายไปซึ่งทำให้ไซต์ของคุณมีความเสี่ยงมากขึ้น
ฉันยังต้องการ เน้นย้ำ ว่าคุณจะเห็นผลลัพธ์เหล่านี้ แม้จะ มี WordFence หรือปลั๊กอินความปลอดภัยอื่น ๆ ที่ติดตั้งบนเว็บไซต์ของคุณ ข้อยกเว้นคือถ้า บริษัท โฮสติ้งของคุณหรือคนอื่นทำการแก้ไขเราจะทำต่อหน้าคุณ
ทำความเข้าใจธงสีแดงทั้งหมด
ตอนนี้เรามาจัดระเบียบทุกอย่างที่เราพบ - มีการทับซ้อนกันระหว่างเครื่องมือ แต่แต่ละคนก็มีปัญหาที่ไม่เหมือนใครด้วย
ปัญหาทั้งสองเครื่องมือจับได้🤝
- นโยบายความปลอดภัยของเนื้อหา หายไปอย่างสิ้นเชิง-หมายความว่าไม่มีอะไรควบคุมสคริปต์และเนื้อหาที่สามารถโหลดบนเว็บไซต์ได้ ℹ หากไม่มีการควบคุมเหล่านี้รหัสที่เป็นอันตรายอาจถูกฉีดและทำงานบนหน้าเว็บของคุณอาจส่งผลกระทบต่อเว็บไซต์และผู้เยี่ยมชมของคุณ
- X-Frame-options หายไปซึ่งทำให้ไซต์มีความเสี่ยงต่อการคลิก Jacking ผ่านการฝังโดยไม่ได้รับอนุญาต ℹ Clickjacking คือเมื่อผู้โจมตีหลอกให้ผู้ใช้คลิกสิ่งที่แตกต่างจากสิ่งที่พวกเขาเห็นบ่อยครั้งโดยการจัดเรียงไซต์ที่ถูกต้องตามกฎหมายของคุณภายใต้เนื้อหาที่เป็นอันตราย
- ตัวเลือกประเภทเนื้อหา ไม่ได้ถูกตั้งค่าซึ่งสามารถเปิดใช้งานการโจมตีด้วยความสับสนประเภท MIME ℹ ความสับสนประเภท MIME เกิดขึ้นเมื่อเบราว์เซอร์ถูกหลอกให้รักษาไฟล์ประเภทหนึ่งเป็นอีกไฟล์หนึ่งซึ่งอาจดำเนินการรหัสที่เป็นอันตราย
การค้นพบที่เป็นเอกลักษณ์ของ Sucuri 🔍
- เวอร์ชัน PHP สามารถมองเห็นได้ในส่วนหัว HTTP ℹ เมื่อผู้โจมตีสามารถเห็นเวอร์ชัน PHP ของคุณพวกเขารู้ว่าช่องโหว่ใดที่อาจทำงานกับเว็บไซต์ของคุณ - เช่นมีพิมพ์เขียวของระบบรักษาความปลอดภัยของคุณ
ข้อมูลเชิงลึกพิเศษของส่วนหัวความปลอดภัย🔬
- ไม่มี นโยบายการอ้างอิง ในสถานที่ ℹ หากไม่มีนโยบายนี้เว็บไซต์ของคุณอาจรั่วไหลข้อมูลที่ละเอียดอ่อนเกี่ยวกับรูปแบบการท่องเว็บของผู้ใช้ไปยังเว็บไซต์อื่น ๆ
- นโยบายการอนุญาต ยังไม่ได้รับการกำหนดค่า ℹ ซึ่งหมายความว่าหน้าใด ๆ ในเว็บไซต์ของคุณอาจขอให้เข้าถึงกล้องไมโครโฟนหรือข้อมูลตำแหน่งของผู้เข้าชมโดยไม่มีข้อ จำกัด
- ความปลอดภัยการขนส่งที่เข้มงวด หายไป ℹ หากไม่มีส่วนหัวนี้การเชื่อมต่อไปยังไซต์ของคุณอาจลดระดับจาก HTTPS เป็น HTTP ทำให้พวกเขาเสี่ยงต่อการสกัดกั้น
ความงามของการแก้ไขปัญหาเหล่านี้คือคุณไม่จำเป็นต้องเข้าใจรายละเอียดทางเทคนิคทุกอย่าง - คุณเพียงแค่ต้องใช้โซลูชันอย่างถูกต้อง ซึ่งสะดวกคือสิ่งที่เรากำลังจะทำ
ค้นหาวิธีการไปยังไฟล์เซิร์ฟเวอร์
สมมติว่าคุณมี cpanel เหมือนที่ฉันคลิกที่ตัวจัดการไฟล์ในแผงควบคุมของคุณ:
หากคุณใช้สิ่งอื่นที่ไม่ใช่ cpanel คุณสามารถดาวน์โหลด filezilla (ฟรีและนี่คือคู่มือด่วนเกี่ยวกับวิธีการใช้งาน) หลังจากที่คุณติดตั้งให้ใช้รายละเอียด FTP ของคุณจากแดชบอร์ดโฮสติ้งเพื่อเชื่อมต่อกับเซิร์ฟเวอร์ของคุณ:
- โฮสต์:
ftp.yoursite.com
- ตรวจสอบอีกครั้งว่าเป็นที่อยู่ที่ถูกต้องในส่วน FTP ของ cpanel - ชื่อผู้ใช้:
your-username
- รหัสผ่าน:
your-password
- พอร์ต:
21
- ตรวจสอบด้วยว่านี่คือพอร์ตที่การตั้งค่าของคุณใช้ (FTP ใน CPANEL)
โฮสต์บางตัวจะให้ทางเลือก cpanel ของตัวเองซึ่งอาจทำงานได้ในทำนองเดียวกัน กล่าวอีกนัยหนึ่งคุณอาจไม่ต้องใช้ Filezilla อย่างแน่นอน หากคุณไม่แน่ใจให้ถามฝ่ายสนับสนุนลูกค้า
ค้นหาไฟล์. htaccess
เมื่อคุณเข้าสู่ระบบคุณจะเห็นสิ่งที่ดูเหมือนเบราว์เซอร์ไฟล์คอมพิวเตอร์ของคุณ เราจำเป็นต้องค้นหาไฟล์เฉพาะที่เรียกว่า . .htaccess
- มันควบคุมวิธีที่เซิร์ฟเวอร์ของคุณจัดการการตั้งค่าความปลอดภัยที่หลากหลาย วิธีที่ง่ายที่สุดในการค้นหาคือการใช้ฟังก์ชั่นการค้นหาตัวจัดการไฟล์ CPANEL ที่ด้านบนขวา ผู้ใช้ Filezilla สามารถพึ่งพาคุณสมบัติที่คล้ายกัน
พิมพ์ .htaccess
ในหน้าต่างแล้วคลิก ไป
หากคุณมีเว็บไซต์เดียวที่เชื่อมโยงกับบัญชีโฮสติ้งของคุณนั่นควรจะค่อนข้างตรงไปตรงมา หากคุณมีหลายไซต์ให้แน่ใจว่าคุณกำลังคลิกที่ไฟล์. .htaccess
ที่เกี่ยวข้องกับเว็บไซต์ที่คุณจะทำการแก้ไขเหล่านี้
อีกรายละเอียดที่เป็นไปได้ที่จะต้องระวังคือความจริงที่ว่าแม้ในการตั้งค่าไซต์เดียวคุณอาจยังมีไฟล์. .htaccess
-ish อื่น ๆ โดยทั่วไปไฟล์ที่มี .htaccess
ในชื่อของพวกเขา แต่ก็มีคำอื่น ๆ หรืออักขระ
คุณไม่ต้องการสิ่งเหล่านั้น คุณต้องการเพียงคนเดียวที่เรียกว่า .htaccess
และไม่มีอะไรอื่น
การเพิ่มรหัสลงในไฟล์. htaccess เพื่อแก้ไขปัญหาความปลอดภัย
เมื่อคุณค้นหาไฟล์แล้วคุณจะต้องดาวน์โหลดก่อนที่คุณจะทำการแก้ไข ด้วยวิธีนี้หากมีสิ่งผิดปกติคุณมีการสำรองข้อมูลที่คุณสามารถอัปโหลดกลับเข้าไปในโฟลเดอร์
ไม่มีอะไรควรผิดพลาด แต่ดีกว่าที่จะปลอดภัยกว่าที่ คุณรู้-อะไร
เมื่อดาวน์โหลดการสำรองข้อมูลของคุณอย่างปลอดภัยคุณสามารถแก้ไขไฟล์. .htaccess
ได้อย่างปลอดภัย ในตัวจัดการไฟล์ของ CPANEL คลิกขวาที่ไฟล์และเลือก แก้ไข หากคุณใช้ FileZilla คลิกขวาและเลือก ดู/แก้ไข -จะเปิดไฟล์ในตัวแก้ไขข้อความเริ่มต้นของคุณ
ส่วนต่อไปคือจุดสูงสุดของภารกิจทั้งหมดนี้ นี่คือที่ที่คุณจะรู้สึกเหมือนเป็นผู้เชี่ยวชาญด้านความปลอดภัยของ WordPress สักครู่ สนุกกับมันในขณะที่มันกินเวลา
จะวางรหัสไว้ในไฟล์ .htaccess
ของคุณ 👨🏻💻
การติดตั้ง WordPress มักจะมีหลายส่วนที่นี่ทำเครื่องหมายด้วยความคิดเห็นที่เริ่มต้นด้วย # BEGIN
และ # END
มองหาบรรทัดที่บอกว่า:
# END WordPress
วิธีที่ปลอดภัยที่สุดคือการ เพิ่มส่วนหัวความปลอดภัยหลังจากนี้ หากคุณไม่เห็นบรรทัดที่แน่นอนหรือหากคุณไม่แน่ใจคุณสามารถเพิ่มส่วนหัวได้ในตอนท้ายของไฟล์ - เพียงตรวจสอบให้แน่ใจว่าได้ทิ้งบรรทัดว่างระหว่างรหัสใด ๆ ที่มีอยู่และเพิ่มเติมใหม่
นี่คือรหัส:
# BEGIN Security Headers Header unset X-Powered-By php_flag expose_php Off Header set X-Frame-Options "SAMEORIGIN" Header set X-Content-Type-Options "nosniff" Header set Strict-Transport-Security "max-age=31536000; includeSubDomains" Header set Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' *; script-src 'self' 'unsafe-inline' 'unsafe-eval' * data: blob:; style-src 'self' 'unsafe-inline' *; img-src 'self' data: *; frame-src 'self' *; font-src 'self' data: *; media-src 'self' *;" Header set Referrer-Policy "strict-origin-when-cross-origin" Header set Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=()" # END Security Headers
หลังจากเสร็จแล้วให้คลิกที่ บันทึกการเปลี่ยนแปลง ที่ด้านบนขวา สำหรับผู้ใช้ที่ไม่ใช่ cpanel ให้ค้นหาสิ่งที่ปุ่มเทียบเท่าอยู่ในอินเทอร์เฟซของคุณเอง
คุณสามารถเรียกใช้การสแกนความปลอดภัยอีกครั้งเพื่อดูผลกระทบของการเปลี่ยนแปลงของคุณ
ตรวจสอบความปลอดภัยอีกครั้ง
ก่อนอื่นให้ตรวจสอบส่วนหัวความปลอดภัย:
ไม่เลวร้ายเกินไปเหรอ?
เราไปจาก F ไปยัง A.
พูดคุยเกี่ยวกับการเรืองแสง!
ส่วนหัวความปลอดภัยทุกตัวที่เรากำหนดค่าจะแสดงให้เห็นอย่างถูกต้อง
ถัดไปตรวจสอบ Sucuri:
ดีกว่ามาก แต่แปลก ๆ ยังมีคำเตือนสองคำ
อันแรก เป็นบวกที่ผิดพลาดเพราะฉันรู้ว่าไซต์ของฉันมี WordFence ทำงานอยู่ ฉันไม่มีคำอธิบายใด ๆ สำหรับสิ่งนี้นอกจากบางที Sucuri ไม่รู้จัก Wordfence ไม่ว่าด้วยเหตุผลใดก็ตาม หากคุณเห็นคำเตือนแบบเดียวกันและคุณก็รู้ว่าคุณติดตั้ง WAF แล้วให้เพิกเฉยต่อมัน
ข้อความที่สองนั้น แตกต่างกันเล็กน้อย นอกจากนี้ยังแสดงให้เห็นในผลการรักษาความปลอดภัยด้านล่างรายงานเกรดของดาวฤกษ์ที่ฉันแสดงให้คุณเห็นแล้ว:
นี่คือสิ่งที่:
แม้จะถูกตั้งค่าสถานะเป็น "อันตราย" โดยเครื่องมือทั้งสอง แต่การใช้ งานที่ไม่ปลอดภัย นั้นก็โอเคอย่างสมบูรณ์แบบ
WordPress ต้องการความสามารถในการใช้งาน JavaScript และ CSS โดยเฉพาะอย่างยิ่งสำหรับตัวแก้ไขบล็อกและปลั๊กอิน ดังนั้นในขณะที่มีวิธีที่เข้มงวดทางเทคนิคในการจัดการกับสิ่งนี้ (นั่นคือสิ่งที่การอ้างอิง ที่ไม่เกี่ยวกับ สิ่งเหล่านั้นเกี่ยวกับ) การทำเช่นนั้นจะทำลายเว็บไซต์ของคุณ อย่างแท้จริง.
การเปรียบเทียบที่ดีที่สุดที่นี่คือการคิดถึงบ้าน คุณสามารถทำให้บ้านของคุณมีความปลอดภัยมากขึ้นในทางเทคนิคโดยปิดผนึกหน้าต่างและประตูทั้งหมดด้วยซีเมนต์ แต่นั่นจะทำให้บ้านของคุณไม่ทำงาน นี่เป็นความคิดเดียวกัน
ห่อหุ้ม
ปลั๊กอินความปลอดภัยของ WordPress เป็นรากฐานของกลยุทธ์การรักษาความปลอดภัยที่ดี - แต่ไม่สามารถเข้าถึงระดับเซิร์ฟเวอร์ที่จำเป็นต้องมีการป้องกันที่สำคัญบางอย่าง
ภาพหน้าจอก่อนและหลังจากการสแกนความปลอดภัยที่คุณเห็นเป็นข้อพิสูจน์เรื่องนี้
และตอนนี้คุณได้อ่านบทช่วยสอนนี้แล้วคุณก็สามารถใช้ความปลอดภัย WordPress ของคุณจาก "ปลั๊กอินป้องกัน" เป็น "ระดับเซิร์ฟเวอร์ที่ปลอดภัย"
ในบันทึกสุดท้ายเพื่อเป็นแนวปฏิบัติที่ดีที่สุดด้านความปลอดภัยฉันแนะนำให้ทำสิ่งต่อไปนี้:
- เรียกใช้การสแกนความปลอดภัยเหล่านี้ทุกเดือน
- เก็บเอกสารการกำหนดค่าความปลอดภัยของคุณ
- ทดสอบหลังจากการอัปเดต WordPress ที่สำคัญเพื่อให้แน่ใจว่าทุกอย่างยังคงทำงานตามที่ตั้งใจไว้
- เปลี่ยนที่อยู่หน้าเข้าสู่ระบบของคุณ
- จำกัด การพยายามเข้าสู่ระบบ
- เปิดใช้งานการรับรองความถูกต้องสองปัจจัย (หรือ 2FA สั้น ๆ )
- เก็บปลั๊กอินและธีมที่อัปเดตและลบชุดที่คุณไม่ได้ใช้
…และอีกมากมาย การรักษาความปลอดภัย WordPress สามารถพาคุณลงหลุมกระต่ายลึก แต่สิ่งที่คุณเรียนรู้ที่นี่เพียงพอที่จะเริ่มต้นและจะปกป้องไซต์ของคุณจากการโจมตีส่วนใหญ่
คุณมีคำถามหรือไม่? แจ้งให้เราทราบในความคิดเห็น ฉันยินดีที่จะช่วยเหลือคุณ