ลดความยุ่งยากในการใช้คลาวด์ พูดคุยกับเจ้าหน้าที่

สแกนและกำจัดมัลแวร์ด้วย ImunifyAV บน Plesk
Home สแกนและกำจัดมัลแวร์ด้วย ImunifyAV บน Plesk

สแกนและกำจัดมัลแวร์ด้วย ImunifyAV บน Plesk

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

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

สิ่งที่ต้องเตรียม

  • Plesk Obsidian และสิทธิ์ผู้ดูแลระบบ
  • พื้นที่หน่วยความจำว่างอย่างน้อย 1 GB
  • ข้อมูลสำรองที่ใช้การได้ ก่อนลบหรือแก้ไฟล์ใด ๆ

ขั้นตอนที่ 1: ติดตั้ง

ไปที่ Extensions ค้นหา ImunifyAV แล้วติดตั้ง จะพบเมนูใหม่ในแถบด้านซ้าย

# ตรวจสถานะ
sudo systemctl status imunify-antivirus
sudo imunify-antivirus version

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

ขั้นตอนที่ 2: สแกนครั้งแรก

ในหน้า ImunifyAV กด Start Scanning เลือกสแกนทุกผู้ใช้หรือเฉพาะบางโดเมน

# สแกนจากบรรทัดคำสั่ง
sudo imunify-antivirus malware on-demand start --path /var/www/vhosts/example.com

# ดูสถานะ
sudo imunify-antivirus malware on-demand status

# ดูผลลัพธ์
sudo imunify-antivirus malware malicious list --limit 50

การสแกนครั้งแรกใช้เวลานานตามจำนวนไฟล์ ปล่อยให้ทำงานจนจบ

ขั้นตอนที่ 3: อ่านผลการสแกน

ผลลัพธ์แสดงรายการไฟล์พร้อมชนิดของภัยคุกคาม ชนิดที่พบบ่อยในเว็บไทย

  • Web Shell ไฟล์ที่ให้ผู้โจมตีรันคำสั่งบนเซิร์ฟเวอร์ผ่านเบราว์เซอร์ อันตรายที่สุด
  • Backdoor ช่องทางลับที่ให้กลับเข้ามาได้แม้แก้รหัสผ่านแล้ว
  • SEO Spam โค้ดที่แทรกลิงก์ซ่อนไปยังเว็บพนันหรือขายยา ซึ่งทำให้เว็บถูกลงโทษจาก Google
  • Phishing หน้าปลอมที่เลียนแบบธนาคารหรือบริการอื่น ซึ่งทำให้โดเมนถูกขึ้นบัญชีดำ

คลิกที่ไฟล์เพื่อดูโค้ดที่ตรวจพบ ซึ่งช่วยยืนยันว่าเป็นของจริงหรือผลบวกลวง

ขั้นตอนที่ 4: จัดการไฟล์ที่พบ

อย่าลบทันที ทำตามลำดับนี้

  1. สำรองไฟล์นั้นไว้ก่อนเพื่อใช้วิเคราะห์
  2. ตรวจว่าเป็นไฟล์จริงของระบบหรือไม่ โดยเทียบกับต้นฉบับของ WordPress หรือปลั๊กอิน
  3. หากเป็นไฟล์แปลกปลอม ให้ย้ายไปกักกันก่อนแทนการลบ
  4. ตรวจว่าเว็บยังทำงานปกติ
# เทียบไฟล์หลักของ WordPress กับต้นฉบับ
cd /var/www/vhosts/example.com/httpdocs
wp core verify-checksums
wp plugin verify-checksums --all

คำสั่งนี้บอกได้ทันทีว่าไฟล์ไหนถูกแก้ไขจากต้นฉบับ ซึ่งเป็นวิธีที่แม่นยำที่สุดสำหรับ WordPress

# กักกันไฟล์แทนการลบ
sudo mkdir -p /root/quarantine
sudo mv /var/www/vhosts/example.com/httpdocs/wp-content/uploads/2026/xx.php /root/quarantine/

ขั้นตอนที่ 5: ตั้งสแกนอัตโนมัติ

ในหน้า ImunifyAV ไปที่ Settings แล้วเปิด

  • Enable background scanning สแกนไฟล์ที่เปลี่ยนแปลงอย่างต่อเนื่อง
  • Scan modified files ตรวจเฉพาะไฟล์ที่เพิ่งถูกแก้ ซึ่งเร็วและจับได้ทันเหตุการณ์
  • ตั้งรอบสแกนเต็มรูปแบบสัปดาห์ละครั้งในช่วงที่มีผู้ใช้น้อย
sudo imunify-antivirus config update '{"MALWARE_SCAN_SCHEDULE": {"interval": "week", "day_of_week": 7, "hour": 2}}'
sudo imunify-antivirus config show | grep -A5 SCHEDULE

ขั้นตอนที่ 6: เมื่อพบว่าเว็บถูกแฮก ให้ทำครบทุกข้อ

การลบไฟล์ที่พบอย่างเดียวไม่พอ เพราะช่องทางที่ผู้โจมตีเข้ามายังอยู่ ทำตามลำดับนี้ทั้งหมด

  1. แยกเว็บออกก่อน ปิดเว็บชั่วคราวหรือจำกัดการเข้าถึง เพื่อหยุดความเสียหาย
  2. เปลี่ยนรหัสผ่านทุกตัว ทั้งผู้ดูแล WordPress ฐานข้อมูล FTP SSH และ Plesk
  3. ตรวจบัญชีผู้ดูแลที่ถูกเพิ่ม
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
  1. ตรวจงานตามเวลาที่ถูกเพิ่ม
sudo crontab -l -u example_user
wp cron event list
  1. อัปเดตทุกอย่าง WordPress ปลั๊กอิน ธีม และ PHP
  2. ถอนปลั๊กอินและธีมที่ไม่ได้ใช้ ซึ่งเป็นช่องทางที่ถูกใช้บ่อยที่สุด
  3. ตรวจไฟล์ที่ถูกแก้ล่าสุด
find /var/www/vhosts/example.com/httpdocs -type f -name '*.php' -mtime -14 -ls | head -40
  1. ตรวจว่ามีไฟล์ PHP ในโฟลเดอร์อัปโหลด ซึ่งไม่ควรมีเลย
find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -name '*.php' -o -name '*.phtml'
  1. ปิดการรันไฟล์ PHP ในโฟลเดอร์อัปโหลด
location ~* /wp-content/uploads/.*\.(php|phtml|php5|pht)$ {
    deny all;
    return 403;
}
  1. สแกนซ้ำจนสะอาด แล้วเฝ้าดูต่ออีกอย่างน้อยสองสัปดาห์

ขั้นตอนที่ 7: ป้องกันไม่ให้เกิดซ้ำ

  • เปิดการอัปเดตอัตโนมัติสำหรับ WordPress และปลั๊กอิน
  • ใช้การยืนยันตัวตนสองขั้นตอนสำหรับหน้าล็อกอิน
  • ตั้งสิทธิ์ไฟล์ให้ถูกต้อง โฟลเดอร์ 755 ไฟล์ 644 และ wp-config.php เป็น 640
  • เปิด Fail2Ban เพื่อบล็อก IP ที่พยายามเดารหัสผ่าน
  • สำรองข้อมูลนอกเครื่องและซ้อมกู้คืน
cd /var/www/vhosts/example.com/httpdocs
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
chmod 640 wp-config.php

ปัญหาที่พบบ่อย

แจ้งว่าพบแต่เป็นไฟล์ปกติ

ปลั๊กอินบางตัวใช้โค้ดที่ถูกบีบอัดหรือเข้ารหัสซึ่งดูคล้ายมัลแวร์ ตรวจด้วย wp plugin verify-checksums หากตรงกับต้นฉบับแปลว่าปลอดภัย แล้วเพิ่มเข้ารายการยกเว้น

สแกนแล้วเซิร์ฟเวอร์ช้ามาก

ตั้งให้สแกนในช่วงที่มีผู้ใช้น้อย และจำกัดทรัพยากรที่ใช้

sudo imunify-antivirus config update '{"MALWARE_SCANNING": {"cpu_avail": 25, "io_avail": 25}}'

ลบไฟล์แล้วกลับมาอีก

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

เว็บพังหลังลบไฟล์

ลบไฟล์จริงของระบบไป กู้จากไฟล์ที่กักกันไว้หรือจากไฟล์สำรอง นี่คือเหตุผลที่ต้องกักกันแทนการลบทันที

หากสงสัยว่าเว็บถูกบุกรุก ติดต่อทีมงาน THAI DATA CLOUD ทันทีที่ https://thaidata.cloud/contact/

ผู้ให้บริการคลาวด์ไทย
เพื่อธุรกิจของคนไทย

"มุ่งมั่น" และ "มั่นคง"
พร้อมรับมือทุกการเติบโต
Trust Cloud
คลาว์ที่ปลอดภัย
คือรากฐานที่มั่นคง
cloud security