Computer >> คอมพิวเตอร์ >  >> ระบบเครือข่าย >> ความปลอดภัยของเครือข่าย

เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ

PHP เป็นแกนหลักของ CMS ยอดนิยมเกือบทุกตัวในปัจจุบัน ด้วยความเรียบง่ายและไม่มีใบอนุญาต PHP จึงเป็นตัวเลือกที่ต้องการสำหรับการพัฒนาเว็บไซต์แบบไดนามิก อย่างไรก็ตาม เนื่องจากมาตรฐานการเข้ารหัสที่ไม่ดี ไซต์ PHP ที่ประนีประนอมจึงกลายเป็นเรื่องง่าย อินเทอร์เน็ตเต็มไปด้วยกระทู้ช่วยเหลือที่ผู้ใช้บ่นเกี่ยวกับเว็บไซต์ PHP ที่กำหนดเองที่ถูกแฮ็กหรือเว็บไซต์ PHP ที่เปลี่ยนเส้นทางการแฮ็ก สิ่งนี้นำไปสู่การเผยแพร่เชิงลบมากมายสำหรับ PHP เอง ซึ่งไม่สามารถตำหนิได้

ดังนั้น ถ้า PHP ไม่ผิด อะไรคือสาเหตุของการแฮ็คเว็บไซต์ PHP? บทความนี้จะอธิบายเกี่ยวกับช่องโหว่ด้านความปลอดภัยที่ส่งผลต่อเว็บไซต์ PHP และวิธีหลีกเลี่ยง

เว็บไซต์ PHP ที่กำหนดเองถูกแฮ็ก:ตัวอย่าง

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

เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ

เว็บไซต์ PHP ที่กำหนดเองถูกแฮ็ก:อาการ

  • หน้าฟิชชิ่งปรากฏบนไซต์ PHP ของคุณ โดยพยายามหลอกให้ผู้ใช้ป้อนข้อมูลที่ละเอียดอ่อน
  • ผู้ใช้คลิกลิงก์บางลิงก์ในไซต์ของคุณและไปสิ้นสุดที่โดเมนอื่น ซึ่งอาจเกิดจากการกำหนดค่าผิดพลาดหรือการแฮ็คเว็บไซต์ PHP
  • ตัวบล็อกโฆษณาจะแท็กและบล็อกองค์ประกอบบางอย่างของไซต์ของคุณสำหรับการขุดสกุลเงินดิจิทัล
  • ตัวจัดการไฟล์ PHP ที่ไม่รู้จักปรากฏบนไซต์และไซต์ PHP แสดงโฆษณาที่เป็นอันตราย
  • ไฟล์ PHP ได้รับการแก้ไขด้วยโค้ดที่ไม่รู้จักทำให้เกิดการเปลี่ยนเส้นทางหรือสร้างลิงก์ย้อนกลับสำหรับไซต์ตกปลา
  • เนื้อหาที่ไม่มีความหมายปรากฏบนเว็บไซต์ PHP ที่กำหนดเอง ซึ่งน่าจะเกิดจากการแฮชคีย์เวิร์ดภาษาญี่ปุ่นหรือการแฮ็กทางเภสัชกรรม ฯลฯ
  • ข้อความเตือนการระงับบัญชีปรากฏขึ้นเมื่อใช้โฮสติ้งบุคคลที่สามสำหรับไซต์ PHP ที่กำหนดเอง
  • ไซต์ PHP ที่กำหนดเองจะแสดงข้อความเตือนว่า Google และเครื่องมือค้นหาอื่นๆ ถูกขึ้นบัญชีดำสำหรับสแปมมัลแวร์ ฯลฯ
  • phpMyAdmin แสดงผู้ดูแลระบบฐานข้อมูลใหม่และไม่รู้จัก
  • อีเมลที่ส่งจากโดเมนเว็บไซต์ PHP ของคุณถูกแท็กว่าเป็นสแปม
  • ข้อความแสดงข้อผิดพลาดของไซต์ที่ไม่คาดคิดและไซต์ PHP ทำงานช้าและไม่ตอบสนอง
เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ

เว็บไซต์ PHP ที่กำหนดเองถูกแฮ็ก:13 เหตุผลทำไม

เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ

ข้อผิดพลาดในการกำหนดค่าเซิร์ฟเวอร์

1. สิทธิ์ของไฟล์ต่ำ

การอนุญาตไฟล์ให้สิทธิ์ในการแก้ไขไฟล์ PHP เฉพาะแก่ผู้ใช้บางประเภท ดังนั้น หากการอนุญาตของไฟล์ PHP ไม่ได้รับการตั้งค่าอย่างถูกต้อง อาจทำให้ผู้โจมตีสามารถแทรกไฟล์ PHP ของคุณด้วยสแปมมัลแวร์ ฯลฯ

2. รหัสผ่านเริ่มต้น

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

บทความที่เกี่ยวข้อง – วิธีลบ WordPress Backdoor?

3. เปิดใช้งานการจัดทำดัชนีไดเรกทอรี

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

4. เปิดพอร์ต

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

5. ที่พักแย่

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

โค้ด PHP ที่มีช่องโหว่

6. การฉีด PHP SQL

การฉีด SQL ใน PHP ส่วนใหญ่เกิดจากการไม่มีอินพุตของผู้ใช้ที่ไม่ถูกสุขอนามัย เนื่องจากมาตรฐานการเข้ารหัสไม่ดี รายการที่ไม่ถูกสุขอนามัยได้ไปถึงเซิร์ฟเวอร์ฐานข้อมูลโดยตรงและดำเนินการ สาเหตุหลักบางประการของ SQLi ในหน้า PHP ที่กำหนดเองคือ:

  • ขาดการกรองอักขระเว้นวรรค
  • การใช้เครื่องหมายคำพูดเพื่อคั่นสตริง
  • ส่งข้อมูลของผู้ใช้ที่ไม่ได้รับอนุญาตไปยังฐานข้อมูล
  • การใช้งานการเข้ารหัส Unicode ไม่ถูกต้อง
  • ผสมโค้ดกับข้อมูล
  • การปรับเปลี่ยนประเภทไม่ถูกต้อง

7. PHP การเขียนสคริปต์ข้ามไซต์

XSS เป็นอีกสาเหตุหนึ่งที่ทำให้ไซต์ PHP แบบกำหนดเองถูกแฮ็กหลังจากการฉีด SQL การโจมตีทั้งสองนี้แพร่หลายบนเว็บจนปรากฏอยู่ใน OWASP 10 อันดับแรกทุกปี XSS ยังเกิดจากการขาดการดูแลข้อมูลของผู้ใช้ ในไซต์ PHP และโดยทั่วไป การโจมตี XSS แบ่งออกเป็นสามประเภทหลัก:

  • จัดเก็บ XSS: XSS ประเภทนี้อาศัยผู้ดูแลระบบเว็บในการคลิกลิงก์เฉพาะซึ่งจะโหลดสคริปต์ที่เป็นอันตรายเพื่อขโมยคุกกี้
  • XSS ที่สะท้อน: เป็น XSS ที่ค่อนข้างจริงจังและมักจะพบได้ในเว็บไซต์ PHP ที่มีฟอรัม การสนทนา ฯลฯ รหัสที่เป็นอันตรายของ XSS ประเภทนี้ถูกเก็บไว้ในเซิร์ฟเวอร์และจะดำเนินการทุกครั้งที่ผู้ใช้เข้าชมหน้า PHP นี้
  • DOM ตาม XSS: XSS ประเภทนี้สามารถเป็นหนึ่งในสองประเภทข้างต้น แต่การตรวจจับ XSS ประเภทนี้ค่อนข้างยากและสามารถหลบหนีได้หลังจากการตรวจสอบโค้ดแล้ว

โดยทั่วไปแล้ว ไซต์ที่เสี่ยงต่อ XSS มักตกเป็นเป้าหมายสำหรับการแฮ็กการเปลี่ยนเส้นทางเว็บไซต์ PHP หรือขโมยคุกกี้ของผู้ดูแลระบบ

8. การปลอมแปลงคำขอข้ามไซต์ PHP

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

9. รวมไฟล์ PHP ในเครื่อง

ช่องโหว่ในการรวมไฟล์เกิดขึ้นเมื่อผู้โจมตีสามารถเข้าถึงไฟล์ภายนอกไดเร็กทอรีราก ”www “. ผู้ร้ายหลักของช่องโหว่นี้คือสคริปต์ที่เข้ารหัสไม่ดีซึ่งใช้ชื่อไฟล์เป็นพารามิเตอร์ ช่องโหว่นี้ทำให้ผู้โจมตีสามารถอ่านไฟล์การกำหนดค่าที่ละเอียดอ่อนและรหัสผ่านจากไซต์ PHP ที่คุณกำหนดเองได้ ข้อมูลที่ได้รับจากไฟล์เหล่านี้สามารถใช้โดยผู้โจมตีเพื่อเข้าสู่ระบบด้วยสิทธิ์ของผู้ดูแลระบบ ซึ่งนำไปสู่เว็บไซต์ PHP ที่ถูกแฮ็ก

ข้อบกพร่อง Zero-Day ใน PHP

10. ปลั๊กอินหรือธีมของ Buggy

ปลั๊กอินหรือธีม PHP ที่มีโค้ดไม่ดีเป็นช่องโหว่ที่อยู่บนเซิร์ฟเวอร์ของคุณ กำลังรอให้ถูกโจมตี มีหลายกรณีที่ผู้โจมตีกำหนดเป้าหมายเฉพาะปลั๊กอินแบบบั๊กกี้เพื่อทำการโจมตีจำนวนมากบนไซต์ PHP หากเว็บไซต์ PHP ของคุณถูกแฮ็ก อาจเป็นปลั๊กอินหรือธีมที่มีโค้ดไม่ดี

11. แพ็คเกจ PHP ที่ถูกบุกรุก

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

การโจมตีด้านวิศวกรรมสังคม

12. ฟิชชิ่ง

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

13. หางเสือ

Tailgating เป็นอีกรูปแบบหนึ่งของการโจมตีแบบฟิชชิ่ง ในการโจมตีนี้ ผู้โจมตีจะประนีประนอมกับบัญชีผู้ใช้ระดับต่ำก่อนแล้วจึงใช้เพื่อยกระดับสิทธิ์ นักวิจัยของเราพบว่า Tailgating ถูกพบในกรณีศึกษาหนึ่ง และมักใช้เพื่อหลบเลี่ยงการตรวจจับ ผลที่ตามมาของ tailgating อาจมีตั้งแต่การขโมยข้อมูลไปจนถึงไซต์ PHP ที่ถูกแฮ็ก

เว็บไซต์ PHP ที่กำหนดเองถูกแฮ็ก? ส่งข้อความถึงเราบนวิดเจ็ตแชท และเรายินดีที่จะช่วยคุณแก้ไขเว็บไซต์ PHP ที่ถูกแฮ็ก

เว็บไซต์ PHP แบบกำหนดเองถูกแฮ็ก:การรักษาความปลอดภัยเว็บไซต์

เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ

ตั้งค่าการอนุญาตที่ถูกต้อง

PHP มีฟังก์ชันสามอย่างต่อไปนี้เพื่อตรวจสอบสิทธิ์ของไฟล์:

  1. is_readable(): ฟังก์ชันนี้จะคืนค่าบูลีนเป็น true หากผู้ใช้ได้รับอนุญาตให้อ่านไฟล์ PHP
  2. is_writable(): ฟังก์ชันนี้จะคืนค่าบูลีนเป็น true หากผู้ใช้ได้รับอนุญาตให้เขียนไปยังไฟล์ PHP
  3. is_executable(): ฟังก์ชันนี้จะคืนค่าบูลีนเป็น true หากผู้ใช้ได้รับอนุญาตให้เรียกใช้ไฟล์ PHP

ในทำนองเดียวกัน ฟังก์ชัน chmod() ของ PHP สามารถใช้เปลี่ยนสิทธิ์ของไฟล์ได้ เพียงป้อนชื่อไฟล์ที่ได้รับอนุญาต เช่น "chmod($RandomFile,0644);". ในภาพด้านล่าง คุณจะพบรายการสิทธิ์ของไฟล์ทั้งหมดและสิ่งที่พวกเขาทำ นอกจากนี้ อย่าลืมเพิ่ม "0" ก่อนการอนุญาตไฟล์เพื่อบอกล่าม PHP ว่าอินพุตเป็นเลขฐานแปด

เว็บไซต์ PHP ถูกแฮ็ก? ช่องโหว่ PHP เหล่านี้อาจเป็นสาเหตุ

ตั้งรหัสผ่านที่ปลอดภัย

ตรวจสอบให้แน่ใจว่ารหัสผ่านของคุณสำหรับไซต์ PHP ที่กำหนดเองนั้นปลอดภัย ทำให้เป็นการผสมผสานระหว่างตัวเลข ตัวอักษร และสัญลักษณ์ได้เป็นอย่างดี นอกจากนี้ ก่อนตั้งรหัสผ่าน ขอแนะนำให้เรียกดูพจนานุกรมรหัสผ่านยอดนิยม เช่น Rockyou.txt และตรวจสอบว่าไม่มีรหัสผ่านที่คุณกำลังตั้งค่าอยู่หรือไม่ ในกรณีของผู้ใช้ Linux คำสั่ง Grep จะมีประโยชน์สำหรับการค้นหาไฟล์ขนาดใหญ่ดังกล่าว เพียงค้นหา grep -i '*YourNewpass*' rockyou.txt นอกจากนี้ เพื่อหลีกเลี่ยงไม่ให้ต้องสร้างรหัสผ่านใหม่ คุณสามารถใช้เครื่องมือออนไลน์อื่นๆ เพื่อรับรหัสผ่านที่ปลอดภัย ยาวและสุ่มได้

ปิดใช้งานการจัดทำดัชนีไดเรกทอรี

หากต้องการปิดใช้งานการสร้างดัชนีในไดเร็กทอรีเฉพาะ ให้เพิ่มโค้ดต่อไปนี้ในไฟล์ .htaccess (ในกรณีที่ไม่มี .htaccess ให้สร้างขึ้นใหม่):

ตัวเลือก -ดัชนี

ใช้โฮสติ้งที่ปลอดภัย

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

การตรวจสอบโค้ด PHP

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

สาธิต Astra ตอนนี้!