WordPress Malware & Virus

เว็บโดนฝังลิงก์พนัน สล็อต บาคาร่า เกิดจากอะไร แก้อย่างไร (SEO Spam)

เว็บโดนฝังลิงก์พนัน สล็อต บาคาร่า เกิดจากอะไร แก้อย่างไร (SEO Spam)

สรุปคำตอบ

เว็บโดนฝังลิงก์พนัน คือการที่ผู้โจมตีเข้าถึงเว็บผ่านช่องโหว่ แล้วแทรกลิงก์ซ่อน คำค้น หรือสร้างหน้าใหม่เกี่ยวกับสล็อตและบาคาร่า เพื่อใช้ความน่าเชื่อถือของโดเมนดันอันดับเว็บอื่น Google จัดเป็น hacked content ประเภท content injection และ page injection วิธีแก้คือหาให้ครบทั้งไฟล์และฐานข้อมูล ปิดช่องโหว่และ Backdoor ทำให้ URL สแปมตอบ 404 หรือ 410 แล้วขอ Review ใน Search Console

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

Google จัดสิ่งนี้อยู่ในหมวด “hacked content” ซึ่งนิยามว่าเป็นเนื้อหาใดๆ ที่ถูกวางบนเว็บไซต์โดยไม่ได้รับอนุญาตเนื่องจากช่องโหว่ด้านความปลอดภัย (Google Search Central: Spam policies) บทความนี้เน้นเฉพาะการฝัง ลิงก์ เนื้อหา และหน้า สแปม ถ้าอาการของคุณคือคนกดเข้าเว็บแล้วถูกพาไปเว็บพนัน ให้อ่าน เว็บ WordPress เด้งไปเว็บพนัน ประกอบ เพราะกลไกและจุดที่ต้องแก้ต่างกัน

SEO Spam คืออะไร ทำไมแฮกเกอร์ต้องฝังลิงก์ในเว็บคนอื่น

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

รูปแบบตามนโยบาย Google ความหมาย อาการที่เจ้าของเว็บมักเห็น
Page injection แฮกเกอร์เพิ่มหน้าใหม่ที่มีเนื้อหาสแปมเพื่อปั่นเครื่องมือค้นหาหรือใช้หลอกลวง ค้นชื่อเว็บใน Google แล้วเจอหน้าที่ไม่เคยสร้าง เช่น หน้าสล็อตหรือภาษาญี่ปุ่น
Content injection แก้หน้าที่มีอยู่อย่างแนบเนียน เช่น เพิ่มลิงก์หรือข้อความที่ซ่อนด้วย CSS/HTML หรือใช้ cloaking หน้าเว็บดูปกติ แต่ในซอร์สโค้ดหรือในสายตา Googlebot มีลิงก์พนัน
Code injection ฝังโค้ด (มักเป็น JavaScript) ลงในหน้าหรือ iframe มีสคริปต์แปลกโหลดจากโดเมนภายนอก
Redirects พาผู้ใช้บางกลุ่มไปหน้าอันตรายตาม referrer, user agent หรืออุปกรณ์ เด้งไปเว็บอื่น (ดูบทความเรื่องเว็บเด้ง)

คำอธิบายในตารางสรุปจาก Spam policies ของ Google ส่วนรายงาน Security issues ใน Search Console ใช้ชื่อเรียกใกล้เคียงกันคือ URL injection (“A hacker has created new pages on your site, often containing spammy words or links”), Content injection และ Code injection (Search Console Help: Security issues report)

เหตุผลที่ผู้โจมตีเลือกเว็บคนอื่นแทนการทำเว็บของตัวเองอยู่ที่ “ลิงก์” ซึ่ง Google ระบุว่าการซื้อขายลิงก์เพื่อส่งผลต่ออันดับและการใช้โปรแกรมอัตโนมัติสร้างลิงก์ถือเป็น link spam (Spam policies: Link spam) การฝังลิงก์ลงในเว็บที่ถูกแฮกจึงเป็นการได้ลิงก์มาโดยไม่ต้องจ่าย และไม่ต้องขออนุญาตใคร ในคู่มือของ web.dev ระบุด้วยว่าผู้โจมตีมักหารายได้ด้วยการขายลิงก์บนหน้าที่ถูกแฮกให้บุคคลที่สาม หรือพาผู้เข้าชมไปหน้าที่ไม่เกี่ยวข้องซึ่งสร้างรายได้ให้ผู้โจมตี (web.dev: Fix the cloaked keywords and links hack)

รูปแบบที่พบบ่อย: สแปมพนัน Japanese Keyword Hack และ Pharma Hack

สแปมพนันออนไลน์ (สล็อต บาคาร่า คาสิโน)

จากเคสที่เราแก้ในเว็บไทย สแปมกลุ่มพนันเป็นรูปแบบที่พบบ่อยที่สุด มักมาในสองลักษณะ คือ ลิงก์ซ่อนที่แทรกในส่วนท้ายเว็บหรือในเนื้อหาบทความ และหน้าใหม่จำนวนมากที่ใช้คำค้นอย่าง “สล็อตเว็บตรง” หรือ “บาคาร่า” เป็นหัวข้อ ลักษณะแรกตรงกับ content injection และลักษณะหลังตรงกับ page/URL injection ตามนิยามข้างต้น

Japanese Keyword Hack

web.dev อธิบายว่าการแฮกแบบนี้ “มักสร้างหน้าใหม่ที่มีข้อความภาษาญี่ปุ่นที่สร้างอัตโนมัติ ในโฟลเดอร์ที่ตั้งชื่อแบบสุ่ม” เช่น http://example.com/ltjmnjp/341.html และหารายได้จากลิงก์ affiliate ไปยังร้านขายสินค้าแบรนด์ปลอม (web.dev: Fix the Japanese keyword hack) จุดที่สำคัญคือ คู่มือเดียวกันระบุว่าผู้โจมตีมักเพิ่มตัวเองเป็นเจ้าของ property ใน Search Console เพื่อปรับค่าอย่าง geotargeting หรือ sitemap และมักแก้ไขหรือเพิ่ม sitemap เพื่อให้ URL สแปมถูกจัดทำดัชนีเร็วขึ้น

Gibberish Hack และ Cloaked Keywords Hack

ทั้งสองแบบสร้างหน้าจำนวนมากที่มีประโยคไร้ความหมายอัดคำค้น บางครั้งใช้เทมเพลตของเว็บจริงทำให้ดูเผินๆ เหมือนเป็นส่วนหนึ่งของเว็บ (web.dev: Fix the gibberish hack; web.dev: Fix the cloaked keywords and links hack) คู่มือ cloaked keywords ระบุว่าผู้โจมตีมักแทรกสคริปต์ในไฟล์ index.php, wp-load.php, 404.php และ view.php และเพิ่มกฎใน .htaccess ที่ส่ง request ไปยังไฟล์ .php ชื่อสุ่ม

Pharma Hack และสแปมสินค้าอื่น

รูปแบบเดียวกันนี้ใช้กับสินค้าอื่นได้ทุกประเภท เช่น ยา สินค้าแบรนด์ปลอม หรือสินเชื่อ ตัวอย่างในนโยบาย Google เองก็ยกกรณีที่ผู้ใช้เห็นหน้าท่องเที่ยวแต่เครื่องมือค้นหาเห็นหน้าขายยาลดราคา (Spam policies: Cloaking) ชื่อเรียกต่างกันตามสินค้า แต่วิธีฝังและวิธีล้างแทบเหมือนกัน

สแปมหลายตัวเก็บเนื้อหาไว้ในฐานข้อมูลแทนไฟล์ Sucuri รายงานมัลแวร์ตัวหนึ่งที่สร้างตารางปลอมชื่อคล้ายตารางสำรอง (backupdb_prefix_posts) เพื่อเก็บโพสต์สแปม แล้วเพิ่ม filter ให้กับ the_content, wp_header และ wp_footer เพื่อต่อท้ายลิงก์สแปมในเนื้อหาก่อนส่งให้ผู้เข้าชม โดยลิงก์ “มองไม่เห็นสำหรับผู้เข้าชมที่เป็นคน แต่เครื่องมือค้นหาเก็บและจัดทำดัชนี” และเลือกแสดงเฉพาะผู้ใช้ที่ไม่ได้ล็อกอิน (Sucuri, 2018) นี่คือเหตุผลที่ผู้ดูแลที่ล็อกอินอยู่มักไม่เห็นอะไรผิดปกติ ส่วนการซ่อนเนื้อหาจากเจ้าของแต่แสดงให้ Google เห็นนั้น เราอธิบายแยกไว้ในบทความ Cloaking คืออะไร

ตัวอย่างโค้ดฝังลิงก์พนันที่ควรรู้จัก

ตัวอย่างในหัวข้อนี้ตัดส่วนที่ทำงานได้ออกแล้ว และเปลี่ยนโดเมนเป็นโดเมนสมมติ .example ใช้เพื่อให้จำหน้าตาได้เวลาเจอในเว็บของคุณเท่านั้น

ตัวอย่างโค้ดอันตราย · ตัดให้ใช้งานไม่ได้

1. บล็อกลิงก์ซ่อนในส่วนท้ายเว็บหรือในเนื้อหาบทความ

<div style="position:absolute;left:-9999px;top:-9999px">
  <a href="https://slot-site.example/…">สล็อตเว็บตรง</a>
  <a href="https://casino-site.example/…">บาคาร่าออนไลน์</a>
  …
</div>

จุดสังเกต: ลิงก์ถูกดันออกนอกจอด้วย CSS ซึ่งตรงกับตัวอย่าง hidden text and links ในนโยบาย Google (วางข้อความนอกจอ ตั้งขนาดตัวอักษรเป็น 0 หรือสีเดียวกับพื้นหลัง) รูปแบบอื่นที่พบคือ display:none, font-size:0 หรือ height:0;overflow:hidden

มักซ่อนอยู่ที่: footer.php ของ Theme, Widget แบบ HTML, ช่อง Custom Code ของ Theme และคอลัมน์ post_content ของบทความเก่าในฐานข้อมูล

ตัวอย่างโค้ดอันตราย · ตัดให้ใช้งานไม่ได้

2. โค้ดใน functions.php ที่ดึงลิงก์จากฐานข้อมูลมาแสดงเฉพาะคนที่ไม่ได้ล็อกอิน

<?php
add_action( 'wp_footer', function () {
    if ( is_user_logged_in() ) {
        return;                       // แอดมินจะไม่เห็นอะไร
    }
    $blob = get_option( 'theme_cache_css' );   // ชื่อ option ที่ตั้งให้ดูเหมือนของ Theme
    // ถอดรหัส $blob แล้ว echo ลิงก์สแปม — ตัดออก
    …
} );

จุดสังเกต: โค้ดที่ตรวจ is_user_logged_in() แล้วแสดงผลต่างกัน ร่วมกับ option ชื่อกลืนกับ Theme หรือ Plugin ลักษณะเดียวกับที่ Sucuri รายงาน การลบลิงก์ออกจากหน้าเว็บอย่างเดียวไม่พอ ต้องลบทั้งโค้ดและค่าที่เก็บในฐานข้อมูล

มักซ่อนอยู่ที่: functions.php ของ Theme ที่ใช้งานอยู่, ไฟล์ใน wp-content/mu-plugins/ และ Plugin ที่คุณไม่ได้ติดตั้งเอง

ตัวอย่างโค้ดอันตราย · ตัดให้ใช้งานไม่ได้

3. ตัวสร้างหน้าสแปม: กฎ .htaccess ส่งทุก URL ปลอมไปยังไฟล์ PHP ชื่อสุ่ม

# ใน .htaccess
RewriteEngine On
RewriteRule ^([a-z]{6,8})/([0-9]+)\.html$ wp-xkqv.php?d=$1&p=$2 [L]

<?php // wp-xkqv.php
// โหลดเทมเพลตหน้าเว็บจริง + คำค้นพนัน
// สุ่มประโยค แทรกลิงก์ไป *.example แล้วส่ง HTTP 200 — ตัดออก
…

จุดสังเกต: URL รูปแบบ /โฟลเดอร์สุ่ม/ตัวเลข.html ที่ไม่มีอยู่จริงบนดิสก์ แต่ตอบ HTTP 200 พร้อมเนื้อหาสแปม ตรงกับรูปแบบใน web.dev ที่ยกตัวอย่าง /ltjmnjp/341.html หน้าเป็นหมื่นหน้าอาจมาจากไฟล์เดียว

มักซ่อนอยู่ที่: โฟลเดอร์ราก (root) ของเว็บ ข้างไฟล์ของ WordPress โดยตั้งชื่อขึ้นต้นด้วย wp- ให้ดูกลมกลืน

วิธีเช็คว่าเว็บโดนฝังสแปม

เริ่มจากสิ่งที่ Google เห็น แล้วค่อยตามไปหาต้นเหตุในเว็บ ขั้นตอนนี้สอดคล้องกับแนวทางใน web.dev: How do I know if my site was hacked?

  1. รายงาน Security issues ใน Search Console ถ้า Google ตรวจพบ รายงานจะระบุประเภทและตัวอย่าง URL (รายละเอียดการอ่านรายงานอยู่ในบทความ Search Console แจ้ง Security Issues)
  2. ค้นด้วย site: ใน Google เพื่อดูหน้าที่ถูกจัดทำดัชนี web.dev แนะนำให้ไล่ดูหลายหน้าผลค้นหาเพื่อหา URL ผิดปกติ แต่เอกสารของ Google ก็ระบุว่าคำสั่ง site: “ไม่จำเป็นต้องแสดงทุก URL ที่ถูกจัดทำดัชนี” (Google: site: search operator) ผลที่ไม่พบจึงไม่ได้แปลว่าเว็บสะอาด
  3. URL Inspection ตรวจหน้าที่สงสัยว่า Google เห็นอะไร วิธีละเอียดอยู่ในบทความ Cloaking คืออะไร
  4. รายชื่อผู้ใช้และเจ้าของใน Search Console เพราะการแฮกบางแบบเพิ่มผู้โจมตีเป็นเจ้าของ property (web.dev)
คำสั่งตรวจสอบ · ใช้ได้จริง

4. คำค้นใน Google สำหรับหาหน้าสแปม (แทน yoursite.com ด้วยโดเมนของคุณ)

site:yoursite.com สล็อต
site:yoursite.com บาคาร่า
site:yoursite.com casino OR slot OR viagra
site:yoursite.com inurl:.html

บรรทัดสุดท้ายใช้กับเว็บ WordPress ที่ปกติไม่มี URL ลงท้าย .html ถ้าเจอจำนวนมากควรตรวจต่อ ลองเพิ่มคำภาษาญี่ปุ่นหรือชื่อแบรนด์สินค้าที่ไม่เกี่ยวกับธุรกิจของคุณด้วย

คำสั่งตรวจสอบ · ใช้ได้จริง

5. SQL หาลิงก์ซ่อนและคำพนันในฐานข้อมูล WordPress

-- บทความ/หน้าที่มีคำพนันหรือสไตล์ซ่อนเนื้อหา
SELECT ID, post_type, post_status, post_title FROM wp_posts
WHERE post_content LIKE '%สล็อต%' OR post_content LIKE '%บาคาร่า%'
   OR post_content LIKE '%casino%'
   OR post_content LIKE '%left:-9999px%' OR post_content LIKE '%display:none%';

-- option ที่มีลิงก์ HTML (Widget ปกติก็อยู่ที่นี่ ต้องอ่านทีละรายการ)
SELECT option_name, LENGTH(option_value) AS size FROM wp_options
WHERE option_value LIKE '%<a href=%' ORDER BY size DESC;

-- ตารางที่ไม่ได้มาจาก WordPress หรือ Plugin ที่คุณรู้จัก
SHOW TABLES;

รันใน phpMyAdmin ของ Hosting ถ้าตารางใช้ prefix อื่นที่ไม่ใช่ wp_ ให้เปลี่ยนตามค่าใน wp-config.php ผลลัพธ์บางรายการอาจเป็นเนื้อหาปกติ ให้เปิดดูก่อนลบเสมอ และสำรองฐานข้อมูลก่อนแก้

คำสั่งตรวจสอบ · ใช้ได้จริง

6. คำสั่งบนเซิร์ฟเวอร์ (SSH) หาไฟล์และข้อความต้องสงสัย

# ค้นคำพนันในฐานข้อมูลทุกตาราง (WP-CLI)
wp db search 'สล็อต' --all-tables

# ตรวจไฟล์ core เทียบกับ checksum ของ WordPress.org และเตือนไฟล์แปลกในโฟลเดอร์ราก
wp core verify-checksums --include-root

# ไฟล์ PHP ที่ถูกแก้ใน 14 วันล่าสุด และไฟล์ PHP ในโฟลเดอร์ uploads
find . -name '*.php' -mtime -14 -print
find wp-content/uploads -name '*.php' -print

# ฟังก์ชันที่มักใช้ซ่อนโค้ด (Plugin ปกติบางตัวก็ใช้ ต้องอ่านบริบท)
grep -rlE 'base64_decode|gzinflate|str_rot13|strrev|eval\(' --include='*.php' wp-content

ตัวเลือก --all-tables ค้นทุกตารางรวมถึงตารางที่ไม่ได้ลงทะเบียนกับ WordPress (WP-CLI: wp db search) และ --include-root เตือนเมื่อพบไฟล์ที่ไม่ใช่ของ WordPress ในโฟลเดอร์ราก (WP-CLI: wp core verify-checksums) รายชื่อฟังก์ชันใน grep มาจากคู่มือของ web.dev

ถ้ายังไม่คุ้นกับการอ่านผลลัพธ์ บทความ วิธีเช็กไฟล์แปลกปลอมใน WordPress อธิบายว่าไฟล์แบบไหนผิดปกติ

ผลกระทบต่ออันดับ SEO และแบรนด์

  • คำเตือนในผลค้นหาและเบราว์เซอร์ หน้าที่ได้รับผลกระทบจากปัญหาด้านความปลอดภัยอาจแสดงพร้อมป้ายเตือนในผลค้นหา หรือหน้าเตือนก่อนเข้าเว็บในเบราว์เซอร์ (Security issues report)
  • อันดับลดหรือหายจากผลค้นหา Google ระบุว่าเว็บที่ละเมิดนโยบายอาจอยู่อันดับต่ำลงหรือไม่ปรากฏในผลค้นหาเลย ทั้งจากระบบอัตโนมัติและการตรวจโดยคนที่นำไปสู่ manual action (Spam policies) ประเภท manual action ที่เกี่ยวข้อง เช่น Hidden text and/or keyword stuffing และ Unnatural links from your site (Manual actions report)
  • ชื่อแบรนด์ผูกกับคำพนัน คนที่ค้นชื่อธุรกิจอาจเห็นหัวข้อสล็อตใต้โดเมนของคุณ ซึ่งกระทบความเชื่อมั่นโดยตรง
  • เป็นสัญญาณว่ามีช่องทางเข้าถึงเว็บ การที่ใครแก้ไฟล์หรือฐานข้อมูลได้ แปลว่าอาจเข้าถึงข้อมูลอื่นได้ด้วย ควรประเมินผลกระทบต่อข้อมูลลูกค้าตามขั้นตอนใน เว็บ WordPress โดนแฮก ต้องทำอะไรก่อน

ขั้นตอนลบสแปมและลบหน้าขยะออกจาก Google

  1. สำรองสภาพปัจจุบัน ทั้งไฟล์และฐานข้อมูล เพื่อใช้ตรวจย้อนหลังว่าเข้ามาทางไหน
  2. ลบเจ้าของที่ไม่รู้จักใน Search Console พร้อมไฟล์ยืนยันหรือกฎ .htaccess ที่ใช้ยืนยันของผู้โจมตี ตามขั้นตอนใน web.dev
  3. คืน .htaccess เป็นค่าปกติ แล้วลบกฎ rewrite ที่ส่งไปไฟล์ชื่อสุ่ม
  4. ติดตั้ง Core, Theme และ Plugin ใหม่จากแหล่งทางการ และตรวจ sitemap ว่ามี URL แปลกหรือ sitemap ที่ไม่ได้สร้างเองหรือไม่ (web.dev แนะนำทั้งสองข้อ)
  5. ล้างฐานข้อมูล ลบลิงก์ซ่อนใน wp_posts, option ที่ถูกฝัง และตารางที่ไม่ได้เป็นของ WordPress หรือ Plugin ที่ใช้อยู่
  6. หา Backdoor และปิดช่องโหว่ ถ้าข้ามข้อนี้ สแปมมักกลับมาภายในไม่กี่วัน อ่าน Backdoor ใน WordPress ทำไมล้างแล้วกลับมาติดซ้ำ
  7. ให้ URL สแปมตอบ 404 หรือ 410 แล้วตรวจด้วย URL Inspection ว่า Google เห็นเป็น Not Found จริง ไม่ใช่แค่คุณเห็น (web.dev)
  8. ใช้ Removals tool เมื่อต้องการซ่อนเร่งด่วน คำขอที่สำเร็จมีผลประมาณหกเดือน และเป็นการซ่อนจากผลค้นหาชั่วคราวเท่านั้น ถ้าต้องการลบถาวรต้องลบเนื้อหาให้ตอบ 404/410 ใส่รหัสผ่าน หรือใส่ noindex เครื่องมือนี้มีตัวเลือก “Remove all URLs with this prefix” สำหรับซ่อนทั้งโฟลเดอร์ที่ขึ้นต้นเหมือนกัน (Search Console Help: Removals tool)
  9. ขอ Review ใน Security issues report และอธิบายสิ่งที่แก้ไข
อย่าเข้าใจผิด: Removals tool ไม่ได้ลบหน้าออกจากดัชนีถาวร และ Google ยังรวบรวมข้อมูลหน้าได้ระหว่างที่ซ่อนอยู่ ถ้าหน้าสแปมยังตอบ HTTP 200 เมื่อพ้นช่วงเวลา หน้าอาจกลับมาในผลค้นหา

วิธีกู้อันดับหลังล้างเว็บ

ก่อนขอ Review คู่มือ web.dev: Request a review กำหนดให้ยืนยันความเป็นเจ้าของใน Search Console ล้างสิ่งที่ผู้โจมตีทำ แก้ช่องโหว่ และนำเว็บที่สะอาดกลับออนไลน์ให้ครบก่อน ส่วนระยะเวลา คู่มือเดียวกันระบุว่า Review สำหรับเว็บที่ถูกแฮกด้วยสแปม “อาจใช้เวลาถึงหลายสัปดาห์” เพราะต้องตรวจโดยคน และเมื่อผ่านแล้วคำเตือนจะถูกถอดภายใน 72 ชั่วโมง ถ้าเป็น manual action ให้ส่ง reconsideration request ที่อธิบายปัญหา ขั้นตอนที่แก้ และผลลัพธ์ (Manual actions report)

  • ส่ง sitemap ที่สะอาดซึ่งมีเฉพาะ URL จริงของเว็บ และลบ sitemap ที่ผู้โจมตีเพิ่ม
  • ใช้ URL Inspection ขอให้จัดทำดัชนีหน้าสำคัญ เช่น หน้าแรกและหน้าบริการ ใหม่ (การขอไม่ได้รับประกันว่าจะถูกจัดทำดัชนี ตาม URL Inspection tool help)
  • ติดตามคำค้น site: และรายงานใน Search Console เป็นระยะ จากเคสที่เราแก้ หน้าสแปมที่ตอบ 404 แล้วจะหายจากผลค้นหาทีละส่วนตามรอบการรวบรวมข้อมูล ไม่ได้หายพร้อมกันทั้งหมด

เราไม่มีแหล่งอ้างอิงที่ระบุว่าอันดับจะกลับมาเท่าเดิมภายในกี่วัน จึงไม่ขอระบุตัวเลข ขั้นตอนหลังล้างเว็บแบบครบถ้วนอยู่ในบทความ หลังล้างไวรัส WordPress ต้องทำอะไรต่อ

วิธีป้องกัน

web.dev สรุปช่องทางหลักที่เว็บถูกแฮกเพื่อทำสแปมไว้ ได้แก่ รหัสผ่านที่ถูกเดาหรือรั่ว การไม่ติดตั้งอัปเดตความปลอดภัย Theme และ Plugin ที่ล้าสมัย การหลอกลวงทางสังคม (social engineering) นโยบายความปลอดภัยที่หละหลวม และข้อมูลรั่วไหล (web.dev: Top ways sites get hacked by spammers) มาตรการป้องกันจึงตอบโจทย์ทีละข้อ

  • อัปเดต Core, Theme และ Plugin สม่ำเสมอ และลบตัวที่ไม่ได้ใช้ (ทำไมต้องอัปเดต Plugin และ Theme)
  • ใช้รหัสผ่านไม่ซ้ำ เปิด 2FA และจำกัดจำนวนผู้ใช้ระดับ Administrator
  • ไม่ใช้ Theme หรือ Plugin เถื่อน (nulled)
  • ตรวจรายชื่อเจ้าของใน Search Console และเปิดการแจ้งเตือนทางอีเมล
  • สำรองข้อมูลแบบที่กู้คืนได้จริง และทำ Security Hardening ตาม WordPress Security Checklist

ถ้าล้างเองแล้วสแปมกลับมาซ้ำ หรือไม่แน่ใจว่าหาครบ ทีมของเรารับ ล้างไวรัสและมัลแวร์ WordPress ครอบคลุมการลบหน้าสแปม ลิงก์ซ่อน Backdoor และการขอ Review

คำถามที่พบบ่อย

เปิดเว็บเองไม่เห็นลิงก์พนัน แต่ Google ขึ้นคำว่าสล็อต เป็นไปได้ไหม?

เป็นไปได้ โค้ดสแปมหลายแบบแสดงเฉพาะกับเครื่องมือค้นหาหรือคนที่ไม่ได้ล็อกอิน ซึ่งเรียกว่า cloaking ให้ตรวจด้วย URL Inspection ใน Search Console อ่านต่อที่ Cloaking คืออะไร

เว็บโดนฝังลิงก์พนันกับเว็บเด้งไปเว็บพนันต่างกันอย่างไร?

การฝังลิงก์หรือหน้าสแปมมุ่งปั่นอันดับให้เว็บอื่น ส่วนการเด้งพาผู้เข้าชมออกไปเว็บพนันโดยตรง ทั้งสองแบบอาจเกิดพร้อมกันได้ วิธีแก้เรื่องเด้งอยู่ในบทความ เว็บ WordPress เด้งไปเว็บพนัน

ลบหน้าสแปมแล้ว ทำไมยังเห็นใน Google?

Google ต้องรวบรวมข้อมูล URL นั้นใหม่จึงจะรู้ว่าหน้าหายไปแล้ว ให้ตรวจว่า URL ตอบ 404 หรือ 410 จริงด้วย URL Inspection และใช้ Removals tool ซ่อนชั่วคราวประมาณหกเดือนระหว่างรอ

Removals tool ลบหน้าสแปมออกจาก Google ถาวรไหม?

ไม่ถาวร เป็นการซ่อนชั่วคราวประมาณหกเดือน การลบถาวรต้องทำให้หน้าตอบ 404/410 ใส่รหัสผ่าน หรือใส่ noindex ตามเอกสารของ Search Console

ขอ Review หลังล้างสแปมใช้เวลานานเท่าไร?

คู่มือของ web.dev ระบุว่า Review ของเว็บที่ถูกแฮกด้วยสแปมอาจใช้เวลาถึงหลายสัปดาห์ เพราะต้องตรวจโดยคน และเมื่อผ่านแล้วคำเตือนจะถูกถอดภายใน 72 ชั่วโมง

ทำไมล้างสแปมแล้วกลับมาอีก?

สาเหตุที่พบบ่อยคือยังมี Backdoor หรือช่องโหว่เดิมยังไม่ถูกปิด ผู้โจมตีจึงฝังซ้ำได้ ดูวิธีตรวจในบทความ Backdoor ใน WordPress

แหล่งอ้างอิง

  1. Google Search Central. (ม.ป.ป.). Spam policies for Google web search. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://developers.google.com/search/docs/essentials/spam-policies
  2. Google Search Console Help. (ม.ป.ป.). Security issues report. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://support.google.com/webmasters/answer/9044101
  3. Google Search Console Help. (ม.ป.ป.). Manual actions report. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://support.google.com/webmasters/answer/9044175
  4. Google Search Console Help. (ม.ป.ป.). Removals and SafeSearch reports tool. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://support.google.com/webmasters/answer/9689846
  5. Google Search Console Help. (ม.ป.ป.). URL Inspection tool. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://support.google.com/webmasters/answer/9012289
  6. Google Search Central. (ม.ป.ป.). Google Search operator: site:. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://developers.google.com/search/docs/monitor-debug/search-operators/all-search-site
  7. web.dev. (ม.ป.ป.). Fix the Japanese keyword hack. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://web.dev/articles/fix-the-japanese-keyword-hack
  8. web.dev. (ม.ป.ป.). Fix the cloaked keywords and links hack. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://web.dev/articles/fix-the-cloaked-keywords-hack
  9. web.dev. (ม.ป.ป.). Fix the gibberish hack. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://web.dev/articles/fix-the-gibberish-hack
  10. web.dev. (ม.ป.ป.). How do I know if my site was hacked?. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://web.dev/articles/how-do-i-know-if-my-site-was-hacked
  11. web.dev. (ม.ป.ป.). Request a review. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://web.dev/articles/request-a-review
  12. web.dev. (ม.ป.ป.). Top ways sites get hacked by spammers. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://web.dev/articles/top-ways-sites-get-hacked-by-spammers
  13. Peixoto, P. (2018). Clever SEO Spam Injection. Sucuri Blog. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://blog.sucuri.net/2018/12/clever-seo-spam-injection.html
  14. WordPress Developer Resources. (ม.ป.ป.). wp db search. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://developer.wordpress.org/cli/commands/db/search/
  15. WordPress Developer Resources. (ม.ป.ป.). wp core verify-checksums. สืบค้นเมื่อ 3 ตุลาคม 2026, จาก https://developer.wordpress.org/cli/commands/core/verify-checksums/
อ่านบทความหลักของหมวดนี้ WordPress ติดไวรัส คืออะไร? อาการและวิธีตรวจสอบเบื้องต้น

บทความอื่นในหมวดนี้

เว็บโดนแฮก ทำอย่างไรดี? ขั้นตอนกู้เว็บ WordPress ทีละขั้น

ขั้นตอนกู้เว็บ WordPress ที่โดนแฮกทีละขั้น เรียบเรียงจาก NIST SP 800-61 Rev. 3, เอกสาร FAQ My site was hacked ของ WordPress.org และคำแนะนำของ Google สำหรับเว็บที่ถูกแฮก

42 นาที 18 Jun 2026
อ่านต่อ
LINE ส่งปัญหา