รายการตรวจสอบความปลอดภัย PHP ขั้นสูงสุดของแนวทางปฏิบัติที่ดีที่สุดของ WordPress

เผยแพร่แล้ว: 2017-11-03

มิร์ซาด / stock.adobe.com

กระบวนการรักษาความปลอดภัยเว็บไซต์ของคุณมีแนวโน้มที่จะจัดการกับวิธีรักษาความปลอดภัยเว็บไซต์ WordPress ของคุณในระดับเซิร์ฟเวอร์ตลอดจนปกป้องเว็บไซต์ของคุณในระดับไฟล์ แต่คุณจำเป็นต้องปกป้องภาษาการเขียนโปรแกรมของคุณหรือไม่? มีแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยของ PHP ที่คุณต้องปฏิบัติตามหรือไม่? PHP จำเป็นต้องได้รับการรักษาความปลอดภัยหรือไม่?

ใช่ใช่และใช่

หากคุณใช้งานเว็บไซต์ WordPress แต่ไม่ได้มุ่งเน้นที่การรักษาโค้ด PHP ของคุณให้ปลอดภัย คุณอาจเสี่ยงต่อเหตุการณ์สำคัญได้

โอ้ไม่ Omg GIF โดยเพื่อน

มีประโยชน์มากมายในการใช้ PHP ในการพัฒนาเว็บไซต์ WordPress ของคุณ:

  • ง่ายพอที่จะใช้เป็นมือใหม่และยืดหยุ่นเพียงพอสำหรับผู้เชี่ยวชาญด้านการเขียนโปรแกรม
  • มันใช้งานได้ดีในทุกแพลตฟอร์ม (เช่น Linux, Windows เป็นต้น)
  • นอกจากนี้ยังเป็นมิตรกับ WordPress อีกด้วย
  • สามารถปรับปรุงความเร็วไซต์ได้

ที่กล่าวว่า PHP ไม่ได้ไม่มีข้อบกพร่อง แอปพลิเคชันที่ตั้งโปรแกรมด้วย PHP อาจมีความเสี่ยงสำหรับ:

  • การฉีด SQL
  • การเขียนสคริปต์ข้ามไซต์
  • ข้อมูลรับรองการเข้าสู่ระบบที่ถูกเปิดเผย
  • การแย่งชิงเซสชัน
  • แบบฟอร์มที่ปลอมแปลง
  • และความเสี่ยงด้านความปลอดภัยที่น่ารังเกียจอื่นๆ

ที่เกี่ยวข้อง: วิธีตรวจสอบเวอร์ชัน PHP ของเว็บไซต์ WordPress ของคุณ (และอัพเกรดความเข้ากันได้)

แน่นอนว่านี่ไม่ได้หมายความว่าจะทำให้คุณหมดความต้องการที่จะใช้ PHP เพื่อเขียนโปรแกรมเว็บไซต์ WordPress ของคุณ มันเป็นภาษาที่น่าเชื่อถือและยืดหยุ่นสูง และเมื่อได้รับการรักษาความปลอดภัยอย่างถูกต้อง ก็จะเป็นเครื่องมือที่ทรงพลังอย่างเหลือเชื่อที่ยังช่วยปรับปรุงกระบวนการของคุณอีกด้วย

รายการตรวจสอบความปลอดภัยของ PHP ต่อไปนี้จะสอนแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยของ PHP ทั้งหมดที่คุณต้องรู้เพื่อรักษาภาษาการเขียนโปรแกรมและแอปพลิเคชันที่สร้างด้วย PHP ให้ปลอดภัยต่อไป

ทีมงานของเราที่ WP Buffs ช่วยให้เจ้าของเว็บไซต์ พันธมิตรเอเจนซี่ และพันธมิตรอิสระปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยของ PHP ไม่ว่าคุณจะต้องการให้เราจัดการ 1 เว็บไซต์หรือสนับสนุนไซต์ลูกค้า 1,000 แห่ง เราก็พร้อมช่วยเหลือคุณ

รายการตรวจสอบความปลอดภัย 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

บันทึก บันทึก