รายการตรวจสอบความปลอดภัย PHP ขั้นสูงสุดของแนวทางปฏิบัติที่ดีที่สุดของ WordPress
เผยแพร่แล้ว: 2017-11-03มิร์ซาด / stock.adobe.com
กระบวนการรักษาความปลอดภัยเว็บไซต์ของคุณมีแนวโน้มที่จะจัดการกับวิธีรักษาความปลอดภัยเว็บไซต์ WordPress ของคุณในระดับเซิร์ฟเวอร์ตลอดจนปกป้องเว็บไซต์ของคุณในระดับไฟล์ แต่คุณจำเป็นต้องปกป้องภาษาการเขียนโปรแกรมของคุณหรือไม่? มีแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยของ PHP ที่คุณต้องปฏิบัติตามหรือไม่? PHP จำเป็นต้องได้รับการรักษาความปลอดภัยหรือไม่?
ใช่ใช่และใช่
หากคุณใช้งานเว็บไซต์ WordPress แต่ไม่ได้มุ่งเน้นที่การรักษาโค้ด PHP ของคุณให้ปลอดภัย คุณอาจเสี่ยงต่อเหตุการณ์สำคัญได้
มีประโยชน์มากมายในการใช้ PHP ในการพัฒนาเว็บไซต์ WordPress ของคุณ:
- ง่ายพอที่จะใช้เป็นมือใหม่และยืดหยุ่นเพียงพอสำหรับผู้เชี่ยวชาญด้านการเขียนโปรแกรม
- มันใช้งานได้ดีในทุกแพลตฟอร์ม (เช่น Linux, Windows เป็นต้น)
- นอกจากนี้ยังเป็นมิตรกับ WordPress อีกด้วย
- สามารถปรับปรุงความเร็วไซต์ได้
ที่กล่าวว่า PHP ไม่ได้ไม่มีข้อบกพร่อง แอปพลิเคชันที่ตั้งโปรแกรมด้วย PHP อาจมีความเสี่ยงสำหรับ:
- การฉีด SQL
- การเขียนสคริปต์ข้ามไซต์
- ข้อมูลรับรองการเข้าสู่ระบบที่ถูกเปิดเผย
- การแย่งชิงเซสชัน
- แบบฟอร์มที่ปลอมแปลง
- และความเสี่ยงด้านความปลอดภัยที่น่ารังเกียจอื่นๆ
ที่เกี่ยวข้อง: วิธีตรวจสอบเวอร์ชัน PHP ของเว็บไซต์ WordPress ของคุณ (และอัพเกรดความเข้ากันได้)
แน่นอนว่านี่ไม่ได้หมายความว่าจะทำให้คุณหมดความต้องการที่จะใช้ PHP เพื่อเขียนโปรแกรมเว็บไซต์ WordPress ของคุณ มันเป็นภาษาที่น่าเชื่อถือและยืดหยุ่นสูง และเมื่อได้รับการรักษาความปลอดภัยอย่างถูกต้อง ก็จะเป็นเครื่องมือที่ทรงพลังอย่างเหลือเชื่อที่ยังช่วยปรับปรุงกระบวนการของคุณอีกด้วย
รายการตรวจสอบความปลอดภัยของ PHP ต่อไปนี้จะสอนแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยของ PHP ทั้งหมดที่คุณต้องรู้เพื่อรักษาภาษาการเขียนโปรแกรมและแอปพลิเคชันที่สร้างด้วย PHP ให้ปลอดภัยต่อไป
รายการตรวจสอบความปลอดภัย PHP ขั้นสุดยอดสำหรับ WordPress
ต้องการให้แน่ใจว่าเว็บไซต์ WordPress ของคุณปลอดภัยจากแฮกเกอร์หรือไม่? จากนั้น ก็ขึ้นอยู่กับคุณเพื่อให้แน่ใจว่าเครื่องมือทั้งหมดที่คุณใช้ในการสร้าง (รวมถึงภาษาการเขียนโปรแกรมของคุณ) เป็นไปตามแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย โดยเฉพาะเมื่อพูดถึง PHP คุณจะต้องใส่ใจกับสิ่งต่อไปนี้เป็นพิเศษ:
- แนวทางปฏิบัติที่ดีที่สุดในการเขียนโค้ด PHP
- ข้อจำกัดในการเข้าถึงบนแบ็กเอนด์ของเว็บไซต์ของคุณ
- การจัดการบัญชีผู้ใช้และการตรวจสอบ
- การตรวจสอบความถูกต้อง การฆ่าเชื้อ และการหลบหนีข้อมูล
- ข้อมูลที่ผู้ใช้ส่งข้อมูลและการตรวจสอบการอัพโหลด
- ความน่าเชื่อถือของโฮสต์เว็บ
หากคุณต้องการข้อมูลเพิ่มเติมเกี่ยวกับจุดตรวจสอบความปลอดภัยของ PHP ข้างต้นและวิธีใช้งานในการพัฒนา WordPress โปรดอ่าน รายการตรวจสอบความปลอดภัยของ PHP ขั้นสุดยอดต่อไป
แนวทางปฏิบัติที่ดีที่สุดของ PHP
- ใช้ PHP7 : ใช้ PHP เวอร์ชันล่าสุดเสมอ เช่นเดียวกับไลบรารีและแอปพลิเคชันบุคคลที่สามที่คุณใช้ควบคู่ไปด้วย
- ซ่อนเวอร์ชัน : PHP เวอร์ชันปัจจุบันที่คุณใช้สามารถแจ้งให้แฮกเกอร์ทราบว่าคุณเปิดเว็บไซต์ทิ้งไว้เพื่อปิดช่องโหว่ประเภทใด ดังนั้นให้ปิดการตั้งค่านี้ในส่วนหัวของคุณโดยใช้ expose_php
- เปลี่ยนชื่อ phpinfo : ข้อมูลเพิ่มเติมเกี่ยวกับการติดตั้งของคุณจะต้องซ่อนไว้ด้วย ดังนั้นอย่าลืมเปลี่ยนชื่อไฟล์ phpinfo.php
- เปลี่ยนรหัสข้อผิดพลาด : เปลี่ยนข้อความแสดงข้อผิดพลาดเริ่มต้นที่แสดงต่อผู้ใช้เมื่อการเชื่อมต่อกับไซต์ของคุณล้มเหลว วิธีนี้จะป้องกันไม่ให้พวกเขาเห็นข้อมูลเกี่ยวกับ IP หรือเส้นทางไฟล์ของคุณ ให้บันทึกข้อผิดพลาดเหล่านั้นไว้ที่ฝั่งของคุณแทน
- จำกัดคำสั่งของระบบ : ฉันทามติทั่วไปคือคุณไม่ควรใช้ฟังก์ชันเชลล์ใน PHP อย่างไรก็ตาม หากคุณจำเป็นต้องใส่ข้อมูลผู้ใช้
ปกป้องแบ็กเอนด์
- ใช้ SFTP : เมื่อถ่ายโอนไฟล์บนแบ็กเอนด์ ให้ใช้ SFTP เสมอ
- จำกัดการเข้าถึงไดเรกทอรี : เปลี่ยนชื่อไดเรกทอรีเริ่มต้นสำหรับแอปพลิเคชัน PHP ของคุณ
- กำหนดค่าเส้นทางเซสชัน : หากคุณใช้โฮสติ้งที่ใช้ร่วมกันสำหรับเว็บไซต์ของคุณ ผู้ใช้รายอื่นบนเซิร์ฟเวอร์อาจสามารถดูข้อมูลเซสชันของคุณได้ คุณสามารถหยุดสิ่งนี้ได้โดยจัดเก็บเส้นทางเซสชันใหม่ไว้ใต้ไดเรกทอรีราก
- สร้างผู้ดูแลระบบแยกต่างหาก : หากคุณใช้งานเว็บไซต์ที่ใช้ PHP มากกว่าหนึ่งเว็บไซต์บนเซิร์ฟเวอร์เดียว ตรวจสอบให้แน่ใจว่าคุณใช้ผู้ดูแลระบบแยกต่างหากซึ่งมีข้อมูลการเข้าสู่ระบบที่แตกต่างกันโดยสิ้นเชิงสำหรับแต่ละรายการ วิธีนี้จะป้องกันการติดไวรัสข้ามไซต์
- ทำให้ไดเรกทอรีเป็นแบบอ่านอย่างเดียว : ปกป้องไดเรกทอรีที่เข้าถึงเว็บของคุณได้โดยตั้งค่าเป็นแบบอ่านอย่างเดียว
- จัดเก็บไฟล์ที่ละเอียดอ่อนไว้ภายนอกไดเร็กทอรี : ไฟล์แอปพลิเคชันที่มีความละเอียดอ่อน (เช่น ไฟล์การกำหนดค่า) จะต้องถูกวางลงในไดเร็กทอรีที่ไม่สามารถเข้าถึงเว็บได้ จากนั้นคุณสามารถกำหนดเส้นทางได้โดยใช้สคริปต์ PHP
ข้อมูลผู้ใช้ที่ปลอดภัย
- เข้ารหัสรหัสผ่านทั้งหมด : สิ่งนี้ชัดเจน แต่ให้แน่ใจว่าคุณใช้มันทั่วทั้งกระดานสำหรับรหัสผ่านของคุณและผู้ใช้ที่เข้าสู่ระบบทั้งหมด
- เซสชันที่ปลอดภัย : ป้องกันการไฮแจ็กเซสชันโดยการสร้างรหัสเซสชันที่ซับซ้อน คุณสามารถเพิ่มโทเค็นพิเศษให้กับแต่ละ URL ได้ด้วย
- ทำลายเซสชันเก่า : เมื่อมีคนออกจากระบบหรือหากสิทธิ์การเข้าถึงมีการเปลี่ยนแปลง ให้ลบคุกกี้ออกจากเซสชันและบังคับใช้รหัสเซสชันใหม่เสมอ
- ตรวจสอบผู้ใช้ใหม่ : ตรวจสอบข้อมูลประจำตัวของผู้ใช้ใหม่เสมอและให้สิทธิ์การเข้าถึงแก่พวกเขาตามนั้น นี่เป็นสิ่งสำคัญอย่างยิ่งหากพวกเขากำลังพยายามเข้าถึงเพจที่ถูกจำกัด
- ใช้คันเร่ง : การเข้าสู่ระบบที่ล้มเหลวมากเกินไปควรถูกบล็อกด้วยคันเร่งรหัสผ่าน
ตรวจสอบอินพุตและเอาท์พุตจากผู้ใช้
- ตรวจสอบและฆ่าเชื้ออินพุต : ข้อมูล, ไฟล์, URL, เนื้อหาที่ฝัง, CSS หรือ HTML ที่ส่งผ่านเว็บไซต์ของคุณโดยผู้ใช้ที่รู้จักหรือไม่รู้จัก จำเป็นต้องได้รับการตรวจสอบและฆ่าเชื้อ ซึ่งหมายความว่าควรอนุญาตให้เฉพาะข้อมูลที่คุณคาดว่าจะได้รับ (เช่น ชื่อผู้ใช้สำหรับชื่อผู้ใช้ ที่อยู่อีเมลสำหรับที่อยู่อีเมล ฯลฯ) ใช้คำที่ “แย่” เช่น “จาก” หรือ “ที่ไหน” หรือใช้เครื่องหมายวรรคตอนเช่นเครื่องหมายคำพูดเดี่ยว ในเรดาร์ของคุณ เนื่องจากอาจเป็นสัญญาณว่ามีคนพยายามแอบโค้ดที่เป็นอันตรายเข้ามาในไซต์ของคุณ
- เอาต์พุต Escape : ก่อนที่จะเผยแพร่ข้อมูลผู้ใช้หรือไฟล์ใดๆ ไปยังไซต์ของคุณ ตรวจสอบให้แน่ใจว่ามีการ Escape ไว้ด้วย เพื่อป้องกันไม่ให้อักขระและโค้ดที่อาจเป็นอันตรายเข้าถึงได้ (เช่น เครื่องหมายคำพูดเดี่ยวหรือ <script>)
- จำกัดข้อมูล POST : หากแฮกเกอร์ต้องการโจมตีไซต์ของคุณด้วยข้อมูลจำนวนมหาศาล คุณสามารถหลีกเลี่ยงได้โดยการตั้งค่าขีดจำกัดจำนวนข้อมูล POST ที่สามารถส่งข้อมูลได้ คุณยังสามารถจำกัดเวลาในการป้อนข้อมูลได้อีกด้วย
- ปิดการใช้งาน Register_Globals : ไม่ควรมีเวลาจำกัดว่าข้อมูลประเภทใดที่สามารถส่งข้อมูลในแบบฟอร์มของเว็บไซต์ของคุณได้ น่าเสียดายที่ Register_globals เป็นการเปิดโอกาสให้แฮกเกอร์
- ปิดการใช้งาน Magic_Quotes : Magic_quotes ในตัวมันเองจะไม่เป็นอันตรายต่อไซต์ของคุณ แต่ผู้ที่ใช้มันเพื่อหลบหนีข้อมูลที่ส่งออกของคุณอาจทำให้เกิดช่องโหว่โดยไม่ได้ตั้งใจ
ตรวจสอบการอัปโหลด
- ปิดการใช้งานการอัพโหลดไฟล์ : สิ่งนี้อาจไม่สามารถทำได้เสมอไป แต่หากคุณไม่ต้องการรับไฟล์หรือข้อมูลจากผู้ใช้ ให้ยกเลิกฟังก์ชันนี้
- ตรวจสอบไฟล์ที่อัปโหลด : หากคุณจำเป็นต้องอนุญาตให้ผู้ใช้อัปโหลดไฟล์ไปยังไซต์ของคุณ คุณจะต้องวิเคราะห์เนื้อหาไฟล์เพื่อหาการแทรกที่เป็นอันตราย เป็นทางลัด คุณสามารถบันทึกไฟล์ใหม่ในรูปแบบอื่นได้ หากยังใช้งานได้ ก็มีแนวโน้มว่าจะมีปัญหาน้อยลง
- ใช้เครื่องสแกนไวรัส : หากไซต์ของคุณยอมรับไฟล์ที่อัปโหลดจำนวนมาก คุณจะต้องติดตั้งเครื่องสแกนไวรัส
ใช้เว็บโฮสติ้งที่ปลอดภัย
- ใช้โฮสต์ที่เชื่อถือได้: ไม่ว่าคุณจะทุ่มเทความพยายามมากเพียงใดในการรักษาความปลอดภัยเว็บไซต์ ไฟล์ พื้นที่เข้าสู่ระบบ หรือภาษาการเขียนโปรแกรม การรักษาความปลอดภัยจะต้องเริ่มต้นที่ระดับโฮสติ้ง นั่นเป็นเหตุผลที่คุณต้องร่วมมือกับโฮสต์เว็บที่เชื่อถือได้ซึ่งให้ความสำคัญกับความปลอดภัยและให้การสนับสนุน PHP7 โดยเฉพาะ
- รับ CDN: อีกวิธีหนึ่งในการลดภัยคุกคามความปลอดภัยในระดับเซิร์ฟเวอร์คือการรับเครือข่ายการจัดส่งเนื้อหา (CDN) แม้ว่าสิ่งเหล่านี้มักจะเกี่ยวข้องกับการปรับปรุงประสิทธิภาพสำหรับเว็บไซต์ที่ท่องไปทั่วโลกมากที่สุด แต่ CDN ยังให้การปกป้องอีกชั้นหนึ่งอีกด้วย
- รับใบรับรอง SSL: นี่เป็นแนวทางปฏิบัติที่ดีที่สุด ไม่ว่าคุณจะเขียนโปรแกรมด้วย PHP หรือไม่ก็ตาม ใบรับรอง SSL จะเพิ่มเลเยอร์การเข้ารหัสเพิ่มเติมระหว่างเซิร์ฟเวอร์ของคุณและเบราว์เซอร์ของผู้เยี่ยมชม
แม้ว่าแต่ละประเด็นข้างต้นนั้นใช้ได้จริง แต่ประเด็นนี้คุ้มค่าที่จะเน้นย้ำ เนื่องจากคุณภาพของเว็บโฮสติ้งที่คุณไว้วางใจนั้นสามารถสร้างหรือทำลายกลยุทธ์ด้านความปลอดภัยของไซต์ของคุณได้ในท้ายที่สุด
เนื่องจากมักจะแยกแยะข้อดีและข้อเสียออกจากกันได้ยาก โดยเฉพาะอย่างยิ่งเมื่อมองหาสิ่งที่เฉพาะเจาะจงเช่นการรองรับ PHP7 เราจึงขอแนะนำให้คุณเริ่มต้นด้วยโฮสต์เว็บ เช่น WP Engine และ Kinsta
ที่เกี่ยวข้อง: โฮสติ้ง WordPress ที่มีการจัดการเต็มรูปแบบผ่าน WP Engine & Kinsta
WP Engine เป็นผู้ให้บริการโฮสติ้ง WordPress ที่มีการจัดการ ซึ่งรวมการรองรับ PHP7 ในแต่ละแผนโฮสติ้ง นอกจากนี้ WP Engine ยังจัดการหัวข้อของ PHP7 บนบล็อกเป็นประจำโดยมีการกล่าวถึงปลั๊กอินตัวตรวจสอบความเข้ากันได้ของ PHP เป็นพิเศษ การจะบอกว่าบริษัทนี้ทุ่มเทให้กับการสนับสนุนผู้ใช้ PHP7 นั้นคงเป็นการพูดที่น้อยไป
บริษัทโฮสติ้ง WordPress ที่ได้รับการจัดการอีกแห่งหนึ่ง Kinsta โฮสต์เว็บไซต์ไคลเอนต์ทั้งหมดด้วย PHP7 นี่คือเพื่อให้แน่ใจว่ามีประสิทธิภาพและความเร็วสูงทั่วทั้งกระดาน Kinsta ยังให้ผู้ใช้สามารถอัปเดต PHP Engine เป็นเวอร์ชัน PHP ล่าสุดได้
และแน่นอนว่ายังมีโฮสติ้ง WordPress ที่มีการจัดการเต็มรูปแบบของ WP Buffs ที่ต้องพิจารณาด้วยเช่นกัน WP Buffs ยังคงนำหน้าอยู่เสมอโดยคอยอัปเดตเซิร์ฟเวอร์และเวอร์ชัน PHP ให้ทันสมัยอยู่เสมอ ดังนั้นคุณจึงไม่ต้องกังวลกับการจัดการการอัปเกรดเหล่านั้นด้วยตัวเอง (ซึ่งเป็นส่วนหนึ่งของความสุขในการจ้างการจัดการ WordPress จากภายนอก) กับคนอื่นใช่ไหม?)
ห่อ
เมื่อสร้างเว็บไซต์ WordPress ความปลอดภัยถือเป็นเรื่องสำคัญเสมอ นั่นคือสาเหตุว่าทำไมคุณถึงใช้ปลั๊กอินและธีมที่น่าเชื่อถือ และคอยอัปเดตคอร์ของคุณอยู่เสมอ ท่ามกลางแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยอื่นๆ PHP ก็ไม่แตกต่างกัน จัดการเหมือนที่คุณทำกับเครื่องมือ WordPress อื่นๆ ของคุณ: อัปเดตให้ทันสมัยและปฏิบัติตามแนวทางปฏิบัติด้านความปลอดภัยที่ดีที่สุดอยู่เสมอ และคุณ (และเว็บไซต์ของคุณ) ก็สามารถนอนหลับสบายขึ้นมากในเวลากลางคืน
ต้องการแสดงความคิดเห็นหรือเข้าร่วมการสนทนาหรือไม่?เพิ่มความคิดเห็นของคุณบน Twitter
บันทึก บันทึก