WordPress น่าจะเป็นโซลูชันจัดการเนื้อหาออนไลน์ที่ถูกที่สุดและง่ายที่สุด WordPress มานานแล้ว และเป็นพลังขับเคลื่อนส่วนใหญ่ของเว็บในปัจจุบัน อย่างไรก็ตาม ความนิยมนี้มาพร้อมกับราคาที่สูง คือเป็น CMS ที่ถูกโจมตีมากที่สุดในโลก ผลลัพธ์คือผู้ใช้มักร้องเรียนเกี่ยวกับปัญหา WordPress ถูกแฮกส่งสแปมให้ลูกค้า และการจัดการ WordPress spam อาจทำให้หงุดหงิดมากกว่า เพราะมันสามารถทำลายชื่อเสียงของเว็บไซต์ในระยะยาว ตามหนังสือ WordPress Ultimate Security,
ในบทความนี้ เราจะอภิปรายกรณีบางกรณีของ WordPress ถูกแฮกส่งสแปม และเรียนรู้วิธีจัดการกับมัน
บทความเกี่ยวข้อง: โจมตี WordPress ในปี 2018
อาการ WordPress ถูกแฮกส่งสแปม
เมื่อปัญหา WordPress ถูกแฮกส่งสแปม เกิดขึ้น อาจใช้เวลาชั่วโมงหรือวันในการตรวจจับ เพราะอีเมลสแปมใช้เวลาประพฤติบนเว็บ แต่มีอาการบางอย่างที่สามารถบ่งชี้การโจมตีแบบนี้ได้:
- บริการออนไลน์ที่ตรวจสอบเซิร์ฟเวอร์สำหรับสแปม ใส่ IP ของคุณในบัญชีดำ (blacklist) เนื่องจาก WordPress ถูกแฮกส่งสแปม ผลคือ อีเมลที่ถูกต้องที่คุณส่ง จบอยู่ในโฟลเดอร์สแปมของผู้รับ
- เครื่องมือค้นหาบางตัว เช่น Google ใส่เว็บไซต์ WordPress ของคุณในบัญชีดำ เนื่องจากส่งสแปม
- เว็บไซต์ WordPress ของคุณช้าลงอย่างกะทันหัน เนื่องจากสแปมจำนวนมากถูกเพิ่มเข้าไปในคิว MTA
- ข้อผิดพลาดมากเกินไปปรากฏในบันทึก (logs) โดยเฉพาะข้อความส่งอีเมลล้มเหลว
- ISP เตือนคุณเกี่ยวกับสแปมออก (outbound spam) จำนวนมาก
- เว็บไซต์ WordPress ของคุณเริ่มทำให้แบนด์วิดท์ติดขัด
- ได้รับข้อความเตือนอย่าง "MTA Queue is too large!"
สาเหตุ WordPress ถูกแฮกส่งสแปม
มัลแวร์ (Malware)
WordPress ถูกแฮกส่งสแปม อาจมาจากการติดเชื้อมัลแวร์ นอกจากนี้ โจมตีพยายามอัปโหลดสคริปต์ร้ายไปยังเซิร์ฟเวอร์ WordPress สคริปต์ร้ายเหล่านี้สร้างการเชื่อมต่อกับเซิร์ฟเวอร์จดหมาย SMTP และผลิตสแปม โค้ดต้นทางของมัลแวร์อย่างหนึ่งแสดงด้านล่าง ตามที่เห็นในภาพ นี่คือมัลแวร์ง่ายๆ ที่สร้างข้อความสแปมและเข้ารหัสใน base 64 encoding เพื่อหลบหลีกการตรวจจับ
ช่องโหว่ในโค้ด (Coding Vulnerabilities)
ช่องโหว่ในการเขียนโค้ด เช่น SQLi, XSS, RCE ฯลฯ สามารถนำไปสู่ WordPress ถูกแฮกส่งสแปม โจมตีสามารถบุกครอบเว็บไซต์ WordPress ของคุณด้วยช่องโหว่เหล่านี้ และฉีดโค้ดร้ายเข้าไปในไฟล์ที่ถูกต้อง ไฟล์อย่าง index.php, functions.php, themes.php ฯลฯ สามารถถูกฉีดโค้ดร้ายเพื่อส่งสแปมได้เนื่องจากช่องโหว่ในโค้ดเหล่านี้
คู่มือเกี่ยวข้อง – การกำจัดมัลแวร์ WordPress
ช่องโหว่ของเซิร์ฟเวอร์ (Server Vulnerabilities)
การกำหนดค่าเซิร์ฟเวอร์ผิดพลาดสามารถส่งมอบเว็บไซต์ของคุณให้โจมตี ซึ่งสามารถใช้ส่งสแปมได้ ตัวอย่างเช่น การใช้พอร์ต 25 สำหรับการเชื่อมต่อ SMTP ทำให้เซิร์ฟเวอร์กลายเป็นเป้าหมายของสแปมเมอร์ แทนที่จะใช้พอร์ต 587 เนื่องจากบาง ISP บล็อกพอร์ต 25 เช่นเดียวกัน การแบ่งปันพื้นที่เว็บ (shared webspace) ก็อาจนำไปสู่การแพร่กระจายมัลแวร์สแปมบนหลายเว็บไซต์ เพื่อป้องกัน ให้ใช้ subnetting การกำหนดค่าเซิร์ฟเวอร์ผิดพลาดอื่นๆ เช่น Indexing เปิดอยู่, พอร์ตเปิด ฯลฯ ก็อาจนำไปสู่ WordPress ถูกแฮกส่งสแปม
บทความเกี่ยวข้อง: การป้องกัน WordPress Spambots ด้วย Astra
การตรวจจับ WordPress ถูกแฮกส่งสแปม
บ่อยครั้ง สคริปต์ PHP ร้ายเป็นผู้รับผิดชอบต่อ WordPress ถูกแฮกส่งสแปม การตรวจจับและลบสคริปต์เหล่านี้หมายถึงการกำจัดสแปม ดังนั้น เพื่อล่า พวกเขา ให้เริ่มด้วยการล็อกอินเข้าสู่เซิร์ฟเวอร์ด้วยสิทธิ์ผู้ดูแลระบบ
ขั้นตอน 1
หลังจากที่คุณได้สิทธิ์ผู้ดูแลระบบแล้ว ตอนนี้เริ่มจับอีเมลออก (outbound emails)
ขั้นตอน 2
เพื่อจับอีเมลสแปม ขั้นแรก สร้างไฟล์ที่จะบันทึกข้อมูลทั้งหมด สามารถทำได้ด้วยคำสั่งต่อไปนี้:
touch /var/log/phpmail.log
ให้แน่ใจว่าไฟล์ phpmail.log ที่เพิ่งสร้างเขียนได้ (writable) ทำได้โดยรันคำสั่ง:
chown httpd:httpd /var/log/phpmail.log
ขั้นตอน 3
เมื่อสร้างไฟล์นี้แล้ว ถึงเวลารีสตาร์ทเซิร์ฟเวอร์ Apache ด้วยคำสั่ง:
service httpd restart
ขั้นตอน 4
อีเมลเหล่านี้ตอนนี้สามารถจับและบันทึกในไฟล์ log ผ่านคำสั่งนี้:
tail -f /var/log/phpmail.log
ตัวเลือก -f ของคำสั่ง tail ที่นี่จะบันทึกข้อมูล logging ทั้งหมดลงไฟล์ phpmail.log เนื้อหาของไฟล์ log จะมีลักษณะประมาณภาพด้านล่าง
ที่นี่ ในภาพนี้ ไฟล์ที่รับผิดชอบส่งอีเมลสแปมออกไป มองเห็นได้ในบรรทัดแรกเลย นี่คือไฟล์ functions.php ของ WordPress ที่ติดเชื้อ ดังนั้น โชคดีที่คุณระบุสคริปต์ส่งสแปมสำเร็จ ตอนนี้เราจะดำเนินการลบมัน
คู่มือเกี่ยวข้อง – การลบการโจมตี WordPress
การทำความสะอาด WordPress ถูกแฮกส่งสแปม
เมื่อระบุสคริปต์แล้ว ให้เปิดเพื่อตรวจสอบโค้ด โดยทั่วไป โจมตีจะพยายามซ่อนโค้ดด้วยเทคนิคอย่าง base64 encoding, FOPO ฯลฯ สำหรับอ้างอิง ดูโค้ดในภาพที่ดูไม่อ่านออก
โค้ดนี้เมื่อถอด obfuscation จะกลายเป็นโค้ดในภาพด้านล่าง ดังนั้น เมื่อถอดรหัส พบว่า ฟังก์ชัน eval() ซึ่งประมวลผลสตริงเป็นโค้ด PHP ถูกใช้โดยโจมตีเพื่อสูบสแปม
การใช้งานมันจึงเป็นอันตรายต่อคุณภาพโค้ด ดังนั้น ลบโค้ดร้ายทั้งหมด อย่างไรก็ตาม หากคุณไม่แน่ใจว่ามันทำอะไร ให้คอมเมนต์บรรทัดนั้นออก และติดต่อผู้เชี่ยวชาญเพื่อกำจัดมัลแวร์ คุณยังสามารถลบไฟล์ที่ติดเชื้อและแทนที่ด้วยไฟล์ใหม่ได้ อย่างไรก็ตาม ในกรณีเช่นนี้ ต้องระวัง เพราะบางไฟล์อย่าง .htaccess สำคัญต่อการทำงานของเซิร์ฟเวอร์ สุดท้าย หลังทำความสะอาดแล้ว ให้ลบข้อความสแปมที่เหลือทั้งหมดในคิว MTA ซึ่งเซิร์ฟเวอร์พยายามส่งซ้ำ สามารถทำได้ผ่านคำสั่ง:
sudo postsuper -d ALL
sudo postsuper -d ALL deferred
การบรรเทา WordPress ถูกแฮกส่งสแปม
โซลูชันความปลอดภัยอย่าง Astra สามารถปกป้องเว็บไซต์ WordPress ของคุณ 24/7 ต่อทุกประเภทของสแปม Astra ตรวจสอบトラフィกอย่างต่อเนื่องเพื่อบล็อกสแปมเข้าและออกทุกประเภท สำคัญที่สุด Astra ราคาเหมาะสมมากสำหรับบล็อกส่วนตัวบน WordPress ด้วยราคาเริ่มต้นเพียง $25 สร้างขึ้นเฉพาะสำหรับ WordPress และ CMS เหมือน WordPress Astra สามารถลบสแปมและปกป้องคุณจากมันได้