WordPress เป็นหนึ่งใน CMS ยอดนิยมที่สุดสำหรับสร้างเว็บไซต์และร้านค้าออนไลน์ อย่างไรก็ตาม ความนิยมทำให้มันเป็นเป้าหมายบ่อยของแฮกเกอร์และ SEO spammers แฮกเกอร์ทำเป้าหมายเว็บไซต์ที่ใช้ WordPress ด้วยมัลแวร์และพยายามแฮกหลากหลายรูปแบบ เทคนิคแฮกที่บ่อยที่สุดที่พวกเขาใช้คือ พยายามจัดการดัชนีการค้นหาให้รวมเนื้อหาที่ไม่สมควรอยู่ในตำแหน่งการค้นหาที่เด่นชัด เทคนิค Black Hat SEO (การแฮก) นี้มีชื่อเรียกอีกอย่างว่า 'WordPress Pharma hack หรือ SEO Spam'
ทำไมแฮกเกอร์จึงทำเป้าหมายเว็บไซต์ WordPress ด้วย Pharma Hack?
คำตอบง่าย การค้นหาออนไลน์เป็นแหล่งอ้างอิงที่มีค่ามาก และ SEO hacks เป็นวิธีง่ายที่สุด لتحقيقนี้โดยไม่ต้องทำงานที่จำเป็น มันได้ตำแหน่งที่ถูกต้องใน SERP ให้แฮกเกอร์โดยการแฮกเข้าเว็บไซต์ที่มีอำนาจสูง (high-authority) และติดเชื้อพวกเขาด้วยการแฮกเปลี่ยนเส้นทางสแปม การโจมตีล่าสุดอย่าง "Pharma Hack" หรือ "Pharma SEO Spam" ค่อนข้างคล้ายกับการโจมตี Spam link Injection ที่ปรากฏออกมา และพบว่าเป็นหนึ่งในเทคนิค Black Hat SEO ที่พบบ่อยที่สุดที่แฮกเกอร์ใช้
Pharma Hack คืออะไร?
Pharma hack เป็นประเภทการติดเชื้อมัลแวร์ที่ติดเชื้อเว็บไซต์ WordPress นำเว็บไซต์ที่ถูกต้องไปเปลี่ยนเส้นทางถึงหน้าสแปมที่แสดงโฆษณาขายสินค้าแบรนด์ปลอมของยาเสพติดที่ผิดกฎหมาย เช่น Viagra และ Cialis บางครั้งอาจมีการติดเชื้อผลิตภัณฑ์เภสัชกรรมอื่นๆ ได้ แต่ Viagra และ Cialis เป็นที่พบบ่อยที่สุด
ในหนึ่งในการแฮก WordPress Pharma ล่าสุด เราเห็นรูปแบบที่ซับซ้อนของการแฮก ในรูปแบบนี้ แฮกเกอร์ปรับผลการค้นหา Google ด้วยชื่อเว็บไซต์ในหัวข้อ ทำให้คนเชื่อว่าเว็บไซต์ที่ถูกต้องนั้นจริงๆ เกี่ยวกับผลิตภัณฑ์เภสัชกรรม
วิธีตรวจสอบว่าเว็บไซต์ WordPress ของคุณติดเชื้อ Pharma Hack หรือไม่
SEO สแปมยากต่อการตรวจจับ เพราะมองไม่เห็นโดยตรงต่อเว็บมาสเตอร์ สแปมเมอร์ทำทุกอย่างเพื่อซ่อนงานของพวกเขา ปฏิบัติตามแนวทางอย่าง 'cloaking' อย่างไรก็ตาม มีวิธีคุณสามารถตรวจสอบได้ว่าเว็บไซต์ของคุณติดเชื้อ Pharma hack หรือไม่ อ่านต่อไปเพื่อดูว่าคุณสามารถหา WordPress pharma hack ได้อย่างไร:
วิธีที่ 1: ตรวจสอบด้วย Google Search
รายการเว็บไซต์ที่ได้รับผลกระทบสามารถแสดงได้โดยการค้นหา Google ด้วยคีย์เวิร์ดอย่าง viagra wp-page แต่ ตามนโยบายเว็บมาสเตอร์ของ Google เว็บไซต์ที่ได้รับผลกระทบไม่มองเห็นบนหน้าแรก ดังนั้น คุณจะต้องเลื่อนไปหน้า 3 หรือ 4 หากเว็บไซต์ของคุณปรากฏในการค้นหา หมายความว่าคุณเป็นเหยื่อของ WordPress Pharma Hack หรือ Black Hat SEO Spam อื่นๆ
รายการนี้ไม่ได้รวมเว็บไซต์ที่ติดเชื้ออย่างเดียว แต่มองเห็นหน้าปลอมด้วย การคลิกหน้าดังกล่าวอาจเปลี่ยนเส้นทางคุณไปหน้าอื่น หรือโหลดเนื้อหาบนหน้าเดียวกันเป็นผลมาจากการติดเชื้อ
เพื่อตรวจสอบว่าหน้าไหนของเว็บไซต์คุณติดเชื้อ viagra SEO spam เพิ่มคีย์เวิร์ด 'viagra' กับโดเมนเนมของคุณใน google search คือ viagra mydomain.com บางครั้งมีเพียงไม่กี่หน้าบนเว็บไซต์ของคุณที่ติดเชื้อ และมองไม่เห็นโดยคุณ การค้นหานี้จะดึงหน้าที่ติดเชื้อออกมา หากพวกเขาเปลี่ยนเส้นทางไปเว็บไซต์ขาย Viagra และ Cialis คุณติดเชื้อ SEO สแปม บางครั้ง แทนที่จะเปลี่ยนเส้นทาง เนื้อหาถูกโหลดบนหน้าเดียวกันเป็นผลมาจากการติดเชื้อ
วิธีที่ 2: ตรวจสอบผลลัพธ์ในฐานะ Google Bot
ตามที่ระบุ หน้าสแปมเหล่านี้มองไม่เห็นบนเครื่องมือค้นหา แต่ user agents บางตัว เช่น Googlebot สามารถมองเห็นได้ ในการดูว่า Googlebot มองเห็นอะไร คุณสามารถใช้ User-Agent Switcher ของเบราว์เซอร์ คุณสามารถติดตั้งได้สำหรับ Chrome หรือ Firefox
- ติดตั้ง User-Agent Switcher add-on ที่คุณชอบ
- ไปที่หน้าเว็บที่ติดเชื้อ
- แก้ไข User-Agent string เป็นอย่างใดอย่างหนึ่งด้านล่าง:
a) Mozilla/5.0 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)
b) Googlebot/2.1 (+https://www.google.com/bot.html) - คลิกขวาที่ หน้าและดูแหล่งที่มาของหน้า (view page source) นี่จะช่วยให้คุณเห็นการเปลี่ยนเส้นทาง
หมายเหตุ: การเก็บ User-Agent Switcher เปิดไว้นาน อาจทำให้คุณถูกบล็อกหรือบล็อคลิสต์จากเว็บไซต์ที่รักษาความปลอดภัยอย่างเหมาะสม เพราะคุณจะปรากฏเป็น Googlebot ให้พวกเขา
คล้ายกับนี้ หากคุณมองหาการกำจัด pharma hack ใน CMS Drupal หรือไซต์ PHP โปรดอ่าน คู่มือ Drupal pharma hack.
โครงสร้างของ WordPress Pharma Hack
การเกิดขึ้น (Occurrence)
ในการทำ WordPress pharma hack ผู้โจมตีใช้ช่องโหว่ที่รู้จักหรือ zero-day exploit ก่อน นี่คือรายการครบถ้วนของสิ่งที่อาจผิดพลาดในกรณีดังกล่าว เพื่อความเข้าใจง่าย บางอย่างที่พบบ่อยที่สุดคือ:
- SQL injections หรือ XSS เกิดจากมาตรฐานการเขียนโค้ดที่ผิดพลาด ควรติดตามทั้งสองอย่างนี้
- รหัสผ่านบัญชีหรือ FTP ที่อ่อนแอเป็นสาเหตุหลักอันดับสอง ไม่กี่วันมา GitHub repository ของ Linux Gen ก็ถูกแฮกจากข้อมูลเข้าสู่ระบบที่อ่อนแอ
- ส่วนใหญ่ เนื้อหาการแสดงรายการและการแสดงข้อผิดพลาด เปิดใช้งานอยู่ ผลคือไฟล์สำคัญอ่านได้สาธารณะบนเน็ต
- การใช้ปลั๊กอินที่ไม่ได้รับแพทช์หรือล้าสมัย เป็นหนึ่งในสาเหตุหลักของการแฮก WordPress อย่าลืมอัปเดต!
ความต่อเนื่อง (Persistence)
WordPress pharma hacks ทำงานโดยการเปลี่ยนแปลงเนื้อหาของไดเรกทอรีราก ส่วนใหญ่การโจมตีสแปมเกิดผ่านโฟลเดอร์ /misc และ /includes สแปมเมอร์ได้ความต่อเนื่อง (prolonged access) โดยวิธีที่รู้จัก เช่น:
- แก้ไขไฟล์อย่าง
index.php, wp-page.php, nav.phpฯลฯ - เพิ่มหน้าใหม่อย่าง
leftpanelsin.php, cache.phpฯลฯ - แก้ไข
xmlrpc.phpเพื่อหลีกเลี่ยงการตรวจจับโดยเว็บมาสเตอร์ - ใช้การเข้ารหัส base64 เพื่อทำให้โค้ดคลุมเครือ
- ซ่อนไฟล์สแปมภายในโฟลเดอร์
/imagesโปรแกรมรวบรวมเว็บ (web crawlers) ไม่คาดหวังว่าจะเห็นไฟล์ที่นี่ จึงหลีกเลี่ยงการตรวจจับ - ต่อจุด (dot) นำหน้านามสกุลไฟล์ ดังนั้น จึงเปลี่ยนชื่อหน้าเป็น
.somefileเพื่อให้มองไม่เห็น - Cloaking: แยกแยะ web crawlers ตาม user-agent ผลคือ เนื้อหาที่ Googlebot เห็น ต่างจากเนื้อหาที่ Mozilla user เห็น
- ใช้ cron jobs เพื่อติดเชื้อซ้ำ
ผลลัพธ์ (Results)
- เว็บไซต์ของคุณสูญเสียชื่อเสียงที่สร้างได้ยาก จากการแสดงโฆษณา Viagra และ Cialis
- คุณอาจถูกบล็อคลิสต์โดย Google ซึ่งทำให้คืนชื่อเสียงยาก
- ผู้ใช้ของคุณไมไว้วางใจเว็บไซต์
- อันดับการค้นหาของคุณตกต่ำ
- เว็บไซต์ของคุณเริ่มสร้างคลิกให้เว็บไซต์อื่นๆ ที่คุณพยายามได้มา
Google แสดงผลสแปม Pharma สำหรับเว็บไซต์ของคุณ? ส่งข้อความมาที่แชทวิดเจ็ต.
วิธีแก้ไข WordPress Pharma hack
WordPress Pharma Hack ซ่อนอยู่ ดังนั้น การหาไฟล์ติดเชื้อและลบพวกเขาจะเป็นงานที่ยาวนานและเหนื่อยล้าสักหน่อย นี่คือสิ่งที่คุณควรทำเพื่อลบการแฮก:
1. สำรองข้อมูล (Take a backup)
การสร้างสำรองข้อมูลเว็บไซต์ครบถ้วนเป็นแนวทางปฏิบัติที่แนะนำ อาจช่วยได้หากอะไรผิดพลาดในกระบวนการทำความสะอาด ดังนั้น ตรวจสอบให้แน่ใจว่ามีกลยุทธ์สำรองข้อมูลพร้อม สำรองข้อมูลควรประกอบด้วยไฟล์หลัก ฐานข้อมูล และไฟล์ปลั๊กอินและธีม
2. สแกนเว็บไซต์หามัลแวร์
ใช้เครื่องมือสแกนมัลแวร์ออนไลน์อย่าง VirusTotal เพื่อตรวจจับการติดเชื้อ คุณยังลอง Astra's Malware Scanner สำหรับการสแกนที่แม่นยำมากขึ้น นี่จะตรวจจับไฟล์และโค้ดอันตรายทั้งหมดในเว็บไซต์ของคุณภายในนาที และช่วยเร่งกระบวนการกำจัดมัลแวร์ให้คุณ
3. ลบไฟล์ที่ติดเชื้อ
เชื่อมต่อเซิร์ฟเวอร์โฮสติ้งผ่าน FTP คุณยังสามารถใช้ตัวจัดการไฟล์ได้ จากนั้น นำทางไปโฟลเดอร์ /wp-contents/ และหาไฟล์ที่ถูกแฮกในปลั๊กอิน
ไฟล์ที่ถูกแฮกจะมีคำอย่าง .class, .cache, .old ในชื่อ เพื่อปลอมเป็นไฟล์ปลั๊กอิน จุด (.) นำหน้าชื่อไฟล์จะทำให้มองไม่เห็น เว้นแต่จะเลือกตัวเลือก "show hidden files" ลบไฟล์ดังกล่าวทุกไฟล์
4. ล้างไดเรกทอรี temp
ไดเรกทอรี /wp-contents/temp/ อาจปรากฏเป็นผลมาจากการติดเชื้อ ไปที่ /wp-contents/temp/ และล้างเนื้อหา แฮกเกอร์ใช้โฟลเดอร์ temp และไฟล์ TMP เพื่อหลีกเลี่ยงการเสียหายใดๆ ระหว่างการติดตั้งมัลแวร์
5. ตรวจสอบไฟล์ .htaccess
ไฟล์ .htaccess เป็นไฟล์การตั้งค่าเซิร์ฟเวอร์ กำหนดวิธีที่เซิร์ฟเวอร์ประมวลผลคำขอ แฮกเกอร์ใช้พลังของไฟล์สร้างประตูหลังเข้าเว็บไซต์ของคุณ คอยหาโค้ดอย่างนี้:
RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
RewriteCond %{HTTP_USER_AGENT} (google|yahoo|msn|aol|bing) [OR] #checks for Google, Yahoo, msn, aol and bing crawler
RewriteCond %{HTTP_REFERER} (google|yahoo|msn|aol|bing)
RewriteRule ^(.*)$ somehackfile.php?$1 [L] #redirects to a hack file
คุณยังสามารถสร้างไฟล์ .htaccess ใหม่ได้
- ไปที่แดชบอร์ด WordPress ของคุณ
- คลิก Settings แล้วเลือก Permalink
- คลิก Save!
6. ลบโค้ดอันตรายจากฐานข้อมูล
แนะนำอย่างยิ่งให้สร้างสำรองข้อมูลก่อนทำการเปลี่ยนแปลงฐานข้อมูล หากคุณยังไม่เคยทำ คุณควรทำตอนนี้จริงๆ เพราะขั้นตอนนี้อาจละเอียดอ่อน
สำหรับขั้นตอนนี้ คุณสามารถซื้อบริการกำจัดมัลแวร์มืออาชีพ หรือลองทำความสะอาดฐานข้อมูลด้วยตนเอง
- ไปที่ phpMyAdmin
- เลือกฐานข้อมูล
- คลิกที่ตาราง wp_options
- ค้นหารายการอันตรายโดยใช้แท็บ Search
รายการอันตรายบางอย่างที่คุณควรค้นหาคือ:
- wp_check_hash
- class_generic_support
- widget_generic_support
- ftp_credentials
- fwp
หมายเหตุ: ระมัดระวังอย่าลบข้อมูลสำคัญจากตาราง wp_options เพราะอาจทำให้เว็บไซต์ทำงานผิดปกติและล่ม
หมายเหตุ: หากคุณไม่คุ้นเคยกับเทคนิคมากนัก แนะนำให้ขอความช่วยเหลือจากภายนอก
7. ค้นหาและลบโค้ดน่าสงสัย
โค้ดที่ดูน่าสงสัย บ่อยครั้งเป็นสาเหตุหลักที่เว็บไซต์ WordPress ถูกแฮก โค้ดตัวอย่างอาจดูอย่างนี้:
<ul id="menu">
<li><a href="attackerdomain.com">Something1</a></li>
โค้ดประเภทนี้เปลี่ยนเส้นทางเว็บไซต์ของคุณไปโดเมนที่ผู้โจมตีควบคุม ดังนั้น การตรวจสอบโดเมนที่ไม่คุ้นเคยเป็นความคิดที่ดี นี่เป็นหนึ่งในสาเหตุหลักของ WordPress pharma hacks
บ่อยครั้งผู้โจมตีซ่อนโค้ดใน base64 เพื่อหลีกเลี่ยงการตรวจจับ ตัวอย่าง attackerdomain.com จะดูอย่าง "YXR0YWNrZXJkb21haW4uY29t" ทำให้ยากต่อการตรวจจับ ในการค้นหาการเข้ารหัส base 64 ในไฟล์ คำสั่ง grep ช่วยได้:
find . -name "*.php" -exec grep "base64"'{}'\; -print &> b64-detections.txt
โค้ดชิ้นนี้ค้นหาในไฟล์ .php ที่คุณเลือก สำหรับการเข้ารหัส base64 ผลลัพธ์ถูกเก็บในไฟล์ชื่อ b64-detections.txt สุดท้าย คุณสามารถใช้แหล่งข้อมูลออนไลน์ถอดรหัสเหล่านี้และดูว่ากำลังเกิดอะไรขึ้นเบื้องหลัง
8. ล้างไดเรกทอรี temp (ซ้ำ)
ไปที่ /wp-contents/temp/ และล้างเนื้อหา แฮกเกอร์ใช้โฟลเดอร์ temp และไฟล์ TMP เพื่อหลีกเลี่ยงการเสียหายใดๆ ระหว่างการติดตั้งมัลแวร์
9. สแกนหาความแตกต่างของเนื้อหา
คุณสามารถใช้ปลั๊กอินออนไลน์สแกนการเปลี่ยนแปลงไฟล์ ตัวอย่างสแกนเนอร์คือ Exploit Scanner มันสแกนไฟล์หลักทั้งหมดและไฟล์ของบุคคลที่สามใน WordPress official repository สำหรับชื่อไฟล์หรือรายการน่าสงสัยและผิดปกติ
หลังจาก 알아ว่าไฟล์ไหนถูกแฮก คุณสามารถลบโค้ดติดเชื้อหรือกู้คืนไฟล์ปลั๊กอินได้ สำคัญคือทำความสะอาดโค้ดอย่างละเอียด – โค้ดอันตรายที่เหลืออยู่อาจติดเชื้อเว็บไซต์ของคุณซ้ำ
วิธีป้องกัน WordPress Pharma Hack
- ใช้ข้อมูลเข้าสู่ระบบและรหัสผ่านที่แข็งแกร่งสำหรับเว็บไซต์และล็อกอินฐานข้อมูล แฮกเกอร์สามารถ brute-force ข้อมูลเข้าสู่ระบบที่อ่อนแอและแฮกเข้าเว็บไซต์ของคุณได้ง่าย
- นำไrewall เว็บไซต์มาใช้สำหรับเว็บไซต์ WordPress ของคุณ จะช่วยรักษาความปลอดภัยเว็บไซต์จากการติดเชื้อ Pharma hack และปกป้องจากภัยคุกคามไซเบอร์หลากหลาย
- จำกัดสิทธิ์โฟลเดอร์เพื่อป้องกันการเข้าถึงที่ไม่พึงประสงค์
- ปิดใช้งานหรือลบปลั๊กอินและธีมที่น่าสงสัยหรือไม่ได้ใช้ใน WordPress ของคุณ ส่วนใหญ่ปลั๊กอินและธีมกลายเป็นจุดเข้าที่ง่ายสำหรับแฮกเกอร์ เนื่องจากช่องโหว่ที่มีอยู่ในพวกเขา
- หากเวอร์ชัน CMS หลัก ปลั๊กอิน หรือธีม ล้าสมัย ควรอัปเดตโดยเร็วที่สุด เพื่อป้องกันการใช้ประโยชน์จากช่องโหว่ ซึ่งอาจทำให้คุณเป็นเหยื่อ Pharma hack
- เป็นแนวทางปฏิบัติที่ดีเสมอ ที่จะรู้ช่องโหว่และช่องโหว่ความปลอดภัยทั้งหมดในเว็บไซต์ WordPress ของคุณ เพื่อค้นพบช่องโหว่ความปลอดภัยที่เป็นไปได้และแก้ไขก่อนที่แฮกเกอร์จะใช้ประโยชน์ – คุณควรทำการตรวจสอบความปลอดภัย (security audits) เป็นประจำสำหรับเว็บไซต์ของคุณ และป้องกันการแฮกอย่าง Pharma hack