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

คู่มือฉบับสมบูรณ์การกำจัดมัลแวร์และรักษาความปลอดภัยเว็บไซต์ Joomla ที่ถูกแฮก

Joomla เป็น CMS อันดับสองที่นิยมหลัง WordPress และเป็นเป้าหมายของแฮกเกอร์อย่างสม่ำเสมอ กราฟด้านล่างแสดงว่า XSS เป็นช่องโหว่ที่ถูกใช้ประโยชน์มากที่สุดโดยผู้โจมตีใน Joomla เช่นเดียวกับ WordPress สาเหตุอื่นๆ ของการแฮก Joomla ได้แก่ Code Injection, SQLi ฯลฯ

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

  • คู่มือความปลอดภัย Joomla

เว็บไซต์ Joomla ที่ถูกแฮกอาจก่อให้เกิดปัญหาร้ายแรง แต่ก่อนเริ่มกระบวนการกำจัดการแฮก Joomla เรามาดูอาการของเว็บไซต์ Joomla ที่ถูกแฮกกันก่อน

อาการของเว็บไซต์ Joomla ที่ถูกแฮก

  • การค้นหา Google แสดง 'เว็บไซต์นี้อาจถูกแฮก' ในคำอธิบายเมตา
  • การขุดคริปโตเคอเรนซีในพื้นหลัง
  • เว็บไซต์เปลี่ยนเส้นทางไปยังสแปม
  • หน้า Index ถูกทำลายหรือแทนที่โดยการแฮก Joomla
  • ถูกออกจากระบบบัญชีผู้ดูแลระบบ
  • แอดมินใหม่ปรากฏขึ้น
  • การโหลดหน้าช้าลงหรือหนักขึ้น
  • สแปมที่ไม่เคยมีมาก่อนเริ่มปรากฏบนเว็บไซต์
  • เว็บไซต์ถูกใส่ในบล็อคลิสต์โดย Google เนื่องจาก 'มัลแวร์' หรือ 'ฟิชชิง'
  • สแปมนี้รวมถึงโฆษณาและการเปลี่ยนเส้นทางที่ไม่พึงประสงค์
  • การเพิ่มขึ้นของทรัฟฟิกที่ไม่เป็นธรรมชาติบนเว็บไซต์ คุณสามารถตรวจสอบได้ทั้งหมดด้วย Google Webmaster Tools
  • CMS หรือซอฟต์แวร์อื่นๆ อาจเสียหาย โดยเฉพาะไrewall!
คู่มือฉบับสมบูรณ์การกำจัดมัลแวร์และรักษาความปลอดภัยเว็บไซต์ Joomla ที่ถูกแฮก คู่มือฉบับสมบูรณ์การกำจัดมัลแวร์และรักษาความปลอดภัยเว็บไซต์ Joomla ที่ถูกแฮก

กระบวนการกำจัดการแฮกและมัลแวร์ Joomla

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

  1. ระบุการแฮก

    สแกนเว็บไซต์ Joomla เพื่อระบุตำแหน่งมัลแวร์และเพย์โหลดอันตราย ความปลอดภัย Joomla แบบรวมของ Astra รับประกันการตรวจสอบและระบุเว็บไซต์ Joomla ที่ถูกแฮกทันท่วงที

    จากนั้นตรวจสอบไฟล์ที่ถูกแก้ไขรวมถึงไฟล์หลัก คุณสามารถทำได้ด้วยการตรวจสอบไฟล์ด้วยตนเองผ่าน SFTP

    ตรวจสอบบัญชีผู้ใช้และผู้ดูแลระบบที่เป็นอันตราย

    ในกรณีที่เว็บไซต์ Joomla แสดงว่าถูกใส่บล็อคลิสต์โดย Google หรือหน่วยงานความปลอดภัยเว็บไซต์อื่นๆ คุณสามารถตรวจสอบสถานะความปลอดภัยของเว็บไซต์ Joomla! โดยใช้เครื่องมือวินิจฉัยของพวกเขา สำหรับการตรวจสอบความโปร่งใสของ Google เยี่ยมชมเว็บไซต์ Safe Browsing Site Status ซึ่งคุณสามารถดูได้

    • รายละเอียดความปลอดภัยของเว็บไซต์ ซึ่งให้ข้อมูลเกี่ยวกับการเปลี่ยนเส้นทางอันตราย สแปม และการดาวน์โหลด
    • รายละเอียดการทดสอบ ซึ่งแจ้งเกี่ยวกับการสแกนล่าสุดของ Google ที่พบมัลแวร์

      ใช้เครื่องมือตรวจสอบความปลอดภัยฟรีอย่าง Google Webmasters Central, Bing Webmaster Tools และ Norton SafeWeb เพื่อตรวจสอบรายงานความปลอดภัยของเว็บไซต์ของคุณ

      บล็อกที่เกี่ยวข้อง – บล็อคลิสต์ของเครื่องมือค้นหา

  2. แก้ไขการแฮก Joomla

    เมื่อได้ข้อมูลเกี่ยวกับตำแหน่งมัลแวร์ที่เป็นไปได้ ผู้ใช้ที่ถูกแฮก และการประเมินภัยคุกคาม ให้เลือกทำความสะอาดเว็บไซต์เต็มรูปแบบ เปรียบเทียบไฟล์ที่ติดเชื้อกับสำรองข้อมูลก่อนหน้าเพื่อประเมินขอบเขตของการแก้ไขและลบการเปลี่ยนแปลงอันตราย ทำความสะอาดฐานข้อมูล Joomla ที่ถูกแฮกโดยใช้แผงควบคุมฐานข้อมูล เช่น PHPMyAdmin หรือเครื่องมืออย่าง Search-Replace-DB หรือ Adminer

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

    1. ทำความสะอาดฐานข้อมูล

    ขั้นแรก เริ่มทำความสะอาดจากฐานข้อมูลที่ติดเชื้อ Joomla SQL injection สามารถสร้างผู้ใช้ฐานข้อมูลใหม่ได้ ในการค้นหาผู้ใช้ใหม่ที่สร้างหลังวันที่เฉพาะเจาะจง ใช้โค้ดต่อไปนี้:

    Select * from users as u

    AND u.created > UNIX_TIMESTAMP(STR_TO_DATE('My_Date', '%M %d %Y '));

    เมื่อพบผู้ใช้ผิดปกติ ให้ลบพวกเขาโดยใช้คำสั่ง SQL Drop User; ไม่ chỉแค่นี้ เพื่อป้องกันการติดเชื้อในอนาคต:

    • ทำความสะอาดข้อมูลนำเข้าโดยผู้ใช้ (Sanitize user input)
    • จำกัดสิทธิ์ฐานข้อมุดให้กับบัญชี
    • บล็อกการเปิดเผยข้อผิดพลาดฐานข้อมุดเฉพาะในเครื่องเท่านั้น
    • ใช้การแปลงชนิดข้อมูล (type casting) ทุกที่ที่เป็นไปได้

      2. รักษาความปลอดภัยเซิร์ฟเวอร์

      แม้การติดตั้งจะปลอดภัย เซิร์ฟเวอร์ที่มีข้อบกพร่องก็อาจทำให้ Joomla ถูกแฮก แม้จะมีรายการปัญหาความปลอดภัย Joomla ยาวมาก จุดสำคัญที่ต้องจดจำคือ:

    • ปิดพอร์ตที่เปิดอยู่ทั้งหมด
    • ลบซับโดเมนที่ไม่ได้ใช้
    • ตรวจสอบปัญหาการกำหนดค่าอย่างสม่ำเสมอ
    • หากคุณแชร์เซิร์ฟเวอร์ ให้ทำ subnetting หรือใช้ VPN
    • บล็อกข้อความข้อผิดพลาดที่รั่วไหลข้อมูล
    • ตั้งรหัสผ่านที่แข็งแกร่งและสุ่มสำหรับบัญชี FTP และฐานข้อมุด!
    • ให้แน่ใจว่าคุณใช้ไrewall หรือโซลูชันความปลอดภัยบางอย่าง

      3. การตั้งค่าสิทธิ์ (Setting Permissions)

    • เป็นการแรก ให้แน่ใจว่าไม่มีผู้ใช้สามารถอัปโหลดไฟล์รันได้ (executables) เช่น .php .aspx ฯลฯ เฉพาะไฟล์รูปภาพเท่านั้นที่อนุญาตให้อัปโหลดบนเซิร์ฟเวอร์
    • ต่อไป ตั้งค่าสิทธิ์ไฟล์สำหรับเซิร์ฟเวอร์ ไฟล์ที่ละเอียดอ่อนที่สุดคือไฟล์ .htaccess ดังนั้น ตั้งสิทธิ์ไฟล์ให้เหมาะสม ตั้งสิทธิ์ .htaccess เป็น 444 (r–r–r–) หรืออาจเป็น 440 (r–r—–)
    • ยังต้องแน่ใจว่าไฟล์ PHP ของคุณไม่สามารถเขียนทับได้ ดังนั้น ตั้ง *.php เป็น 444 (r–r–r–)
    • สำคัญที่สุด ใช้ส่วนขยาย (extensions) ที่นิยม Joomla เป็น CMS ค่อนข้างใหญ่ จึงมีทางเลือกเสมอ ส่วนขยายยอดนิยมได้รับอัปเดตเร็วกว่าในกรณีช่องโหว่ ลองใช้ส่วนขยายที่ได้รับความนิยมส่วนใหญ่!

      4. ตรวจสอบไฟล์ที่ถูกแก้ไขใน Joomla

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

    $ mkdir joomla$ cd joomla

    ขั้นแรก เราสร้างไดเรกทอรีชื่อ joomla และเปลี่ยนไปที่นั่น

    $ wget https://github.com/joomla/joomla-cms/releases/download/3.6.4/

    Joomla_3.6.4-Stable-Full_Package.tar.gz

    $ tar -zxvf Joomla_3.6.4-Stable-Full_Package.tar.gz

    คำสั่ง wget ดาวน์โหลดไฟล์ Joomla จาก GitHub บรรทัดที่สองแตกไฟล์

    $ diff -r joomla-3.6.4 ./public_html

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

    $ find ./ -type f -mtime -15
    คำสั่ง SSH นี้เปิดเผยไฟล์ที่ถูกแก้ไขใน 15 วันที่ผ่านมา คุณสามารถเปลี่ยน timestamp ได้เช่นกัน จงค้นหาไฟล์ที่ถูกแก้ไขล่าสุด!

    5. ตรวจสอบบันทึกผู้ใช้ (User Logs)

    บันทึกระบบ (System logs) เป็นเครื่องมือที่ดีที่สุดในการระบุสาเหตุของการแฮก Joomla บันทึกระบบบันทึกกิจกรรมก่อนหน้าทั้งหมดที่เกิดขึ้น ดังนั้นเมื่อไหนที่ XSS หรือ SQL injection เกิดขึ้น จะมีบันทึกคำขออยู่เสมอ นอกจากนี้ แฮกเกอร์มักสร้างบัญชีแอดมินใหม่ หากคุณต้องการตรวจสอบผู้ใช้ที่น่าสงสัย:

  1. ขั้นแรก ล็อกอิน แดชบอร์ด Joomla ของคุณ
  2. ตอนนี้ คลิกที่ ผู้ใช้ (Users) และเลือก จัดการ (Manage)
  3. ตรวจสอบผู้ใช้ที่น่าสงสัย โดยเฉพาะผู้ที่ลงทะเบียนล่าสุด
  4. ดำเนินการ ลบ (Remove) ผู้ใช้ที่ไม่รู้จัก
  5. ตรวจสอบ วันที่เยี่ยมชมล่าสุด (Last Visit Date) ด้วย
  6. ค้นหาว่าบันทึกเซิร์ฟเวอร์เก็บอยู่ที่ไหน ใช้เพื่อระบุ Joomla SQL injection ฯลฯ
  7. หากเห็นผู้ใช้ล็อกอินจาก IP ไม่รู้จัก ให้ลบพวกเขา

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

สิ่งที่ต้องทำหลังกำจัดการแฮก Joomla

อัปเดต

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

ปัจจุบัน Joomla เวอร์ชัน 3.x เป็นเวอร์ชันหลักที่เสถียรที่สุด ผู้ใช้สาขา 1.x และ 2.x ควรเปลี่ยนไปใช้ 3.x ทันที

นอกจากอัปเดตเวอร์ชันหลัก ยังต้องอัปเดตไฟล์หลัก Joomla ทั้งหมด คอมโพเนนต์ เทมเพลต โมดูล และปลั๊กอิน

ติดตั้งใหม่ (Reinstall)

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

หลังทำความสะอาดเว็บไซต์ Joomla ที่ถูกแฮกแล้ว ให้สำรองข้อมูล การมีกลยุทธ์สำรองข้อมูลที่ดี เป็นหัวใจของแนวทางปฏิบัติความปลอดภัยที่ดีที่สุด เก็บสำรองข้อมูลในตำแหน่ง off-site เพราะการเก็บบนเซิร์ฟเวอร์ก็อาจนำไปสู่การแฮกได้

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

รีเซ็ต

รีเซ็ตรหัสผ่านทั้งหมดเพื่อป้องกันการติดเชื้อซ้ำ ให้แน่ใจว่าคุณตั้งค่าการยืนยันตัวตนสองปัจจัย (2FA) บนบัญชีผู้ใช้ นอกจากนี้ ปฏิบัติตามหลักสิทธิ์น้อยที่สุด (least privilege) และให้สิทธิ์เข้าถึงจำกัดเฉพาะคนที่ต้องทำงานเฉพาะเจาะจง

เคล็ดลับความปลอดภัย Joomla หลังการแฮก

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

  1. อัปเดต Joomla เวอร์ชัน ส่วนขยาย และปลั๊กอินเป็นประจำ:

    เว็บไซต์ Joomla ที่ปลอดภัยคือเว็บไซต์ที่อัปเดตเป็นประจำ ทุกการอัปเดตเวอร์ชันปล่อยออกมาพร้อมการปรับปรุงความปลอดภัยและแก้ไขบั๊ก เวอร์ชัน Joomla ที่เก่า หรือส่วนขยาย/ปลั๊กอินที่เก่าสามารถปล่อนแฮกเกอร์เข้าได้

  2. ใช้รหัสผ่านที่แข็งแกร่ง:

    ข้อมูลเข้าสู่ระบบที่อ่อนแออาจรั่วไหลผ่าน Brute Force และเป็นช่องโหว่ความปลอดภัยทั่วไป นำไปสู่การถูกแฮก รหัสผ่านที่เดาได้ง่ายและบัญชีแอดมินค่าเริ่มต้น ทำให้ง่ายต่อผู้ทำร้ายในการเข้าถึงเว็บไซต์ Joomla ของคุณโดยผิดกฎหมาย ทำให้โดนกิจกรรมอันตรายหลายอย่าง รหัสผ่านที่ยาวและมีหลายตัวอักษร ทำให้ปลอดภัยกว่ารหัสสั้น

  3. สำรองข้อมูลเป็นระยะ:

    การสำรองข้อมูลไฟล์และฐานข้อมุดเป็นประจำ ช่วยชีวิตคุณเมื่อเกิดเหตุการณ์ไม่พึงประสงค์ ส่วนขยายอย่าง Easy Joomla Backup ให้การสำรองข้อมูลอัตโนมัติตามกำหนด ซึ่งสามารถกู้คืนได้ในกรณีสูญเสียข้อมูลจากการแฮก

  4. จำกัดการเข้าถึงหน้าแอดมิน:

    ผู้ทำร้ายมักใช้โจมตี brute force บนหน้าล็อกอินแอดมินที่เดาได้ง่าย ดังนั้น จำเป็นต้อง จำกัดการเข้าถึงพื้นที่ผู้ดูแลระบบ แนะนำให้ไม่ใช้ URL หน้าล็อกอินแอดมินค่าเริ่มต้น แทนที่ด้วยชื่อเฉพาะ เพิ่มเติม แผงแอดมินต้องมีการป้องกันด้วยรหัสผ่าน ส่วนขยายอย่าง Admin tools, RSFirewall ฯลฯ ช่วยให้เจ้าของเว็บไซต์ Joomla เปลี่ยน URL หน้าล็อกอินได้

  5. ส่วนขยายความปลอดภัย:

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

  6. การใช้การยืนยันตัวตนสองปัจจัย:

    รหัสการยืนยันตัวตนสองปัจจัย (ที่รู้จักกันในชื่อ One time password: OPT) ทำให้เว็บไซต์ Joomla ของคุณปลอดภัยยิ่งขึ้น แม้รหัสผ่านจะถูกเดาหรือรั่วไหล ยังต้องผ่านรหัสยืนยันตัวตนเพื่อเข้าถึงบัญชีโดยผิดกฎหมาย

  7. ระวังการดาวน์โหลดที่เสียหาย:

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

  8. การรับรอง SSL:

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

  9. ปิดใช้งานเลเยอร์ FTP:

    เลเยอร์ FTP โดยทั่วไปไม่จำเป็นใน Joomla และปิดใช้งานโดยค่าเริ่มต้น จำเป็นต้องเก็บไว้เช่นนั้น เพราะเลเยอร์ FTP ที่เปิดใช้งานเป็นช่องโหว่ความปลอดภัยหลักในเว็บไซต์ Joomla

  10. สิทธิ์ไฟล์และไดเรกทอรีที่เหมาะสม:

    จัดการสิทธิ์ไฟล์และไดเรกทอรีเสมอ และอย่าให้สิทธิ์เต็ม 777 แบบใดๆ ใช้ 755 สำหรับโฟลเดอร์ 644 สำหรับไฟล์ และ 444 สำหรับไฟล์ configuration.php