สแกนและกำจัด Malware ออกจาก WordPress บน Cloud VPS

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

สัญญาณบ่งชี้ว่า WordPress ของคุณติด Malware

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

1. เว็บไซต์โหลดช้าผิดปกติ

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

2. Redirect ไปยังเว็บไซต์ที่ไม่รู้จัก

เมื่อผู้ใช้เข้าชมเว็บไซต์ของคุณ แต่ถูก Redirect ไปยังเว็บไซต์ที่ไม่รู้จัก เช่น หน้าประกาศโฆษณา หรือเว็บไซต์ที่น่าสงสัย นี่คือสัญญาณที่ชัดเจนของการติด Malware

3. Google Search Console เตือนเว็บไซต์อันตราย

Google Search Console จะแสดงการแจ้งเตือน “Malware Detected” หรือ “Hacked” เมื่อเว็บไซต์ของคุณติดเชื้อ นี่คือสัญญาณที่เชื่อถือได้จากตัว Google เอง

4. ไฟล์แปลกๆ ในโฟลเดอร์ WordPress

อาจมีไฟล์ที่คุณไม่รู้จักเกิดขึ้นใหม่ในโฟลเดอร์ wp-content, wp-includes หรือตั้งแต่รูท เช่น ไฟล์ .php ที่มีชื่อแปลกๆ หรือไฟล์ซ่อน

5. Admin User ที่ไม่รู้จัก

ตรวจสอบผู้ใช้ในหน้า WordPress Admin > Users หากมี User ที่มีสิทธิ Admin ที่คุณไม่เคยสร้าง อันนี้คือประตูหลังที่แฮกเกอร์ไว้เพื่อเข้าถึงระบบได้ตลอดเวลา

วิธีการสแกน Malware จาก WordPress

เมื่อสงสัยว่าเว็บไซต์ติด Malware แล้ว ต้องทำการสแกนอย่างทันท่วงทีเพื่อยืนยันและค้นหาแหล่งที่มาของเชื้อ มีหลายวิธีที่สามารถทำได้:

วิธี 1: ใช้ Wordfence Security Plugin

Wordfence เป็น Plugin ยอดนิยมที่ช่วยตรวจสอบความเสถียรของ WordPress:

  • ไปที่ WordPress Admin > Plugins > Add New
  • ค้นหา “Wordfence Security” และกด Install
  • Activate Plugin
  • ไปที่ Wordfence > Scan
  • คลิก “Start New Scan” เพื่อเริ่มการสแกน
  • รอให้การสแกนเสร็จ (อาจใช้เวลาสักพักขึ้นอยู่กับขนาดของเว็บไซต์)
  • ตรวจสอบผลลัพธ์ และ Quarantine ไฟล์ที่น่าสงสัย

วิธี 2: ใช้ Sucuri Security Plugin

Sucuri Security เป็น Alternative อีกตัวหนึ่งที่ได้รับความนิยม:

  • ติดตั้ง “Sucuri Security” Plugin จาก WordPress.org
  • ไปที่ Sucuri > Security Audit
  • คลิก “Run Security Scan” เพื่อสแกนเต็มระบบ
  • บันทึกผลลัพธ์และแก้ไขปัญหาตามที่ Plugin เสนอแนะ

วิธี 3: สแกนด้วย ClamAV บน Server

หากคุณมีสิทธิเข้า SSH ของ Cloud VPS ของคุณ ClamAV เป็นเครื่องมือสแกน Malware แบบสัตว์ดุร้ายที่ทำงานบนระบบปฏิบัติการ:

# ติดตั้ง ClamAV
sudo apt update
sudo apt install clamav clamav-daemon

# Update virus definitions
sudo freshclam

# สแกน WordPress directory
sudo clamscan -r /var/www/html/wordpress-folder

# สแกนแบบละเอียด (recursive) และแสดง log
sudo clamscan -r -i /var/www/html/wordpress-folder | tee malware_scan.log

วิธี 4: ค้นหาไฟล์ที่น่าสงสัยด้วย Command Line

บางครั้ง Malware ซ่อนตัวในไฟล์ที่ดูเหมือนปกติ คุณสามารถใช้ Command ต่อไปนี้ในการค้นหา:

# ค้นหาไฟล์ PHP ที่มี eval() function
find /var/www/html -name "*.php" -type f | xargs grep -l "eval("

# ค้นหาไฟล์ที่มี base64_decode (Malware มักจะใช้)
grep -r "base64_decode" /var/www/html/

# ค้นหาไฟล์ PHP ที่ไม่ปกติ
find /var/www/html -name "*.php" -newermt "7 days ago" -type f

# ดูไฟล์ที่เพิ่มล่าสุด
ls -lart /var/www/html/ | tail -20

ขั้นตอนกำจัด Malware ทีละขั้น

เมื่อพบ Malware แล้ว ต้องทำการกำจัดอย่างรวดเร็วและเป็นระบบ:

ขั้นตอนที่ 1: เปลี่ยนรหัสผ่านทุกบัญชี

ทำการเปลี่ยนรหัสผ่าน WordPress Admin ทุกบัญชี รวมถึงรหัสผ่าน FTP/SFTP และ Database ด้วย นี่เป็นการตัดห้ามแฮกเกอร์จากการเข้าใช้งานต่อไป

# เปลี่ยนรหัสผ่าน Database ผ่าน WP-CLI (ถ้ามี)
wp user update admin --prompt=user_pass

# หรือในฐาน MySQL
ALTER USER 'wordpress_user'@'localhost' IDENTIFIED BY 'new_password';

ขั้นตอนที่ 2: ลบ User Admin ที่ไม่รู้จัก

เข้าไปที่ WordPress Admin > Users และตรวจสอบหากมี User ที่ไม่คุ้นเคย ให้ลบออกทันที สำคัญคือต้องตรวจสอบว่าไฟล์ที่สร้างเมื่อสร้าง User นั้นไม่มีอยู่อีก

ขั้นตอนที่ 3: ลบ Plugin และ Theme ที่น่าสงสัย

Malware มักจะแอบเข้ามาผ่าน Plugin หรือ Theme ที่ไม่รักษาความปลอดภัย ลบ Plugin และ Theme ที่คุณไม่ได้ใช้งาน และตรวจสอบ Plugin ที่อัปเดตไม่ถี่ถ้วน

ขั้นตอนที่ 4: ติดตั้ง WordPress Core ใหม่

การติดตั้ง WordPress Core ใหม่จะแทนที่ไฟล์ WordPress ดั้งเดิมด้วยไฟล์ที่สะอาด ซึ่งจะกำจัด Malware ใด ๆ ที่อาจซ่อนตัวในไฟล์เหล่านี้:

# ใช้ WP-CLI ถ้ามี
wp core download --force

# ตรวจสอบความถูกต้องของไฟล์
wp core verify-checksums

ขั้นตอนที่ 5: ล้าง Database จาก Malware Code

Malware บางตัวฝังตัวในข้อมูล Database เช่น Posts, Pages หรือ Options ตรวจสอบ Database โดยใช้ Search Replace Plugin:

# ใช้ WP-CLI ในการค้นหาและแทนที่
wp db query "SELECT * FROM wp_posts WHERE post_content LIKE '%suspicious_code%';"

# ลบ suspicious options
wp option delete suspicious_option_name

ขั้นตอนที่ 6: ส่ง Request ตรวจสอบ Google Search Console

หลังจากกำจัด Malware แล้ว ต้องแจ้ง Google ให้ทราบว่าเว็บไซต์ได้รับการแก้ไขแล้ว:

  • เข้า Google Search Console
  • ไปที่ Security Issues
  • คลิก “Request Review” เพื่อให้ Google ตรวจสอบอีกครั้ง
  • รอการยืนยันจาก Google (อาจใช้เวลา 1-2 สัปดาห์)

ป้องกัน Malware ในอนาคต

การป้องกัน Malware นั้นดีกว่าการกำจัด เราแนะนำวิธีการป้องกันต่อไปนี้:

1. ใช้ Web Application Firewall (WAF)

ใช้ WAF เช่น Cloudflare WAF หรือ ModSecurity เพื่อกรองการโจมตีมากมายก่อนที่จะถึงเซิร์ฟเวอร์ของคุณ Dot Enterprise Cloud VPS รองรับการใช้งาน Cloudflare ได้อย่างยอดเยี่ยม

2. ทำ Backup อัตโนมัติ

ตั้งค่า Backup อัตโนมัติเพื่อให้สามารถกู้คืนข้อมูลได้อย่างรวดเร็วเมื่อติด Malware Dot Enterprise Cloud VPS มีเครื่องมือ Backup ที่สะดวก คุณสามารถตั้งค่าให้ Backup ทุกวัน หรือทุกสัปดาห์

3. อัปเดต WordPress, Plugin, และ Theme เป็นประจำ

การอัปเดตจะปิดช่องโหว่ที่แฮกเกอร์อาจใช้ประโยชน์ ตั้งค่า WordPress ให้อัปเดตอัตโนมัติหรือทำการอัปเดตด้วยตนเองเป็นประจำ

4. จำกัดสิทธิ์ไฟล์

ตั้งค่าสิทธิ์ไฟล์ให้ถูกต้อง โดยเฉพาะ wp-config.php ควรจำกัดให้เฉพาะเจ้าของแฟ้มเท่านั้นที่อ่านได้:

# กำหนดสิทธิ์ wp-config.php
chmod 400 wp-config.php

# กำหนดสิทธิ์ wp-content
chmod 755 wp-content
find wp-content -type f -exec chmod 644 {} \;