เว็บไซต์ของคุณถูกแอบแฝงลิงก์ดำ (暗链) โดยไม่รู้ตัว จะทำให้คะแนนบน Google ร่วงลงอย่างแรง และจำนวนผู้เข้าชมลดฮวบอย่างมาก หากหนักกว่านั้นอาจถูกติดป้ายว่าเป็น “เว็บไซต์อันตราย” และถูกแบนอย่างถาวร
เจ้าของเว็บส่วนใหญ่เมื่อพบความผิดปกติ มักจะพลาดช่วงเวลาทองในการจัดการไปแล้ว — การลบหน้าหรือปิดเซิร์ฟเวอร์อย่างใจร้อน จะยิ่งทำให้สถานการณ์แย่ลง
ในฐานะที่เป็นนักปฏิบัติ SEO มากว่า 8 ปี เราเคยจัดการกรณีลิงก์ดำมากกว่า 60 กรณี และได้สรุปกระบวนการมาตรฐาน “หยุดความเสียหายภายใน 72 ชั่วโมง + ฟื้นฟูอันดับอย่างรวดเร็ว” ไว้
ตั้งแต่การระบุที่ซ่อนลิงก์ดำอย่างแม่นยำ (เช่น ใช้ Screaming Frog ตรวจจับโค้ดรีไดเรกต์ที่ซ่อนอยู่) ไปจนถึงการลบลิงก์และส่งหลักฐานขอแก้ไขกับ Google (พร้อมตัวอย่างเทมเพลตขอทบทวนจริง) และการปล่อยเนื้อหา “ความน่าเชื่อถือ” เพื่อลดผลกระทบของลิงก์ขยะ ทุกขั้นตอนจะต้องยึด 3 ช่วงเวลาสำคัญ (24 ชั่วโมง / 3 วัน / 7 วัน)
เตือนเป็นพิเศษ ถ้าอันดับคำค้นหาหลักของเว็บคุณตกลงเกิน 10 อันดับใน 7 วันที่ผ่านมา และมีหน้าในดัชนีที่มีพารามิเตอร์แบบ “?redirect=คาสิโน” เยอะมาก แปลว่าเว็บคุณอาจโดนแฮกแล้ว รีบตรวจสอบตามขั้นตอนแรกทันที
Table of Contens
Toggleเว็บคุณโดนแอบแฝงลิงก์ดำจริงหรือ?
ลิงก์ดำจะไม่แสดงป๊อปอัพ และเว็บก็不会ล่มทันที — ซึ่งนี่แหละคือความอันตรายที่สุด
เจ้าของเว็บหลายคนจะรู้ตัวตอนอันดับ Google ตกกว่า 50% แล้ว นั่นแปลว่าลิงก์ดำอาจอยู่ในเว็บเป็นสัปดาห์ๆ หรือบางที Google ก็อาจติดธงว่าเว็บเป็น “เว็บอันตราย” ไปแล้ว
จากประสบการณ์ของเรา 70% ของลิงก์ดำถูกซ่อนไว้ในโฟลเดอร์รูปภาพ, หน้าเก่าที่ล้าสมัย หรือสคริปต์ JS ซึ่งสายตาธรรมดาแทบจะมองไม่เห็น
เราจะสอนวิธีตรวจสอบแบบง่ายๆ ใช้เวลาน้อย (ไม่ต้องมีความรู้โค้ดเลย) ให้คุณเจอลิงก์พวกนี้ภายใน 10 นาที
Google Search Console : ตรวจสอบคำเตือนอย่างเป็นทางการ
- เข้าไปที่ “ความปลอดภัยและการดำเนินการด้วยตนเอง” → “การดำเนินการด้วยตนเอง” ถ้าพบคำเตือนสีแดงอย่าง “ลิงก์ผิดธรรมชาติ” หรือ “หน้าที่ถูกโจมตี” แสดงว่าเว็บถูกแอบแฝงลิงก์ดำแน่นอน
- ระวังกับดัก : แฮกเกอร์บางรายจะแอบปลอมสถานะ “ไม่มีปัญหา” — ให้กดที่ “ปัญหาด้านความปลอดภัย” → “ดูตัวอย่างหน้า” แล้วตรวจสอบลิงก์ที่ถูกหมายไว้ด้วยตนเองว่า มีโค้ดรีไดเรกต์ (เช่น
<meta http-equiv="refresh" content="0;url=เว็บการพนัน">
) หรือไม่
เครื่องมือสแกนโค้ดรีไดเรกต์ที่ซ่อนอยู่
ใช้ Screaming Frog (เวอร์ชันฟรีสแกนได้ 500 หน้า) ตรวจสอบเว็บทั้งหมด แล้วกรองตามข้อสังเกตนี้:
- หน้าเว็บที่มีลิงก์ออกมากผิดปกติ (เทียบกับข้อมูลเก่า ถ้าเกิน 10 ลิงก์ต่อหน้าให้ระวัง)
- ลิงก์ที่มี “style=display:none” (เช็คโค้ด เช่น
<a href="เว็บพนัน" style="display:none">
) - หน้าเว็บที่โหลดไฟล์ JS จากโดเมนแปลกๆ (เช็ค
<script src="http://โดเมนแปลก.js">
)
ตรวจสอบแบบเร็ว: ใช้ส่วนขยาย Chrome Link Redirect Trace เพื่อตรวจจับว่าหน้าเว็บมีการรีไดเรกต์ 301 ไปยังเว็บพนันหรือไม่
ตรวจสอบดัชนีการค้นหา: ค้นหาหน้า “เงา” (Shadow Page)
พิมพ์ในช่องค้นหา Google ว่า:
site:yourdomain.com intitle:คาสิโน/หวย/คำหยาบ
site:yourdomain.com inurl:.php?ref=
ถ้าพบเนื้อหาที่คุณไม่ได้สร้างเอง (เช่น “โปรโมชั่นคาสิโนออนไลน์”) แปลว่าแฮกเกอร์สร้างหน้าขยะขึ้นในเว็บคุณแล้ว
การตรวจสอบขั้นสุดท้าย: ตรวจสอบบันทึกเซิร์ฟเวอร์ (/var/log/apache2/access.log
) โดยค้นหาคำว่า “.php?
” เพื่อดูแหล่งที่มาของการเข้าถึงผิดปกติ (เช่น IP จากเวียดนาม, ยูเครน ที่ส่งคำขอ POST ซ้ำๆ)
คำแนะนำสำคัญ: ถ้าลิงก์ดำส่วนใหญ่ซ่อนในโฟลเดอร์รูปภาพ เช่น /wp-content/uploads/2023/
แสดงว่าแฮกเกอร์อาจเจาะช่องโหว่การอัปโหลดไฟล์ ตรวจสอบชื่อไฟล์ว่ามีรูปแบบผิดปกติ เช่น <?php eval(
หรือไม่
3 ขั้นตอนกำจัดลิงก์ดำให้หมดจด
ถ้าพบลิงก์ดำแล้ว 72 ชั่วโมงแรก คือช่วงเวลาทองในการหยุดความเสียหาย หลายคนรีบลบหน้าหรือรีเซ็ตระบบทั้งหมด ซึ่งจะทำให้ Google สั่งปรับลดอันดับซ้ำอีกครั้ง
จากเคสที่แก้ไขมากกว่า 60 ครั้ง ข้อแนะนำคือ “เก็บหลักฐานก่อนลบ ทำการแก้ไขพร้อมส่งคำร้องขอรีวิว”
1. สำรองข้อมูลเว็บทั้งหมด: ป้องกันการลบข้อมูลผิดพลาด
โฟลเดอร์ที่ต้องสำรองเป็นพิเศษ:
/wp-content/uploads/
(เช็คว่าไฟล์รูปไม่ได้ฝังโค้ด PHP)/wp-includes/js/
(ตรวจสอบไฟล์ jquery-migrate.min.js ว่าไม่ถูกแก้ไข)
เครื่องมือแนะนำ:
- แผงควบคุม BT (宝塔面板) สำรองข้อมูลเต็มระบบพร้อมฐานข้อมูลด้วยคลิกเดียว
- ใช้ปลั๊กอิน Duplicator สร้างแพ็คเกจย้ายเว็บทั้งหมด (ข้ามไฟล์แคชอัตโนมัติ)
2. ลบโค้ดอันตรายด้วยตนเอง (พร้อมลักษณะความเสี่ยงสูง)
ค้นหาคำหลักต่อไปนี้ทั่วทั้งระบบ:
eval(base64_decode('สตริงที่เข้ารหัส'));
$k="รหัสผ่านแฮกเกอร์";error_reporting(0);
<iframe src="http://โดเมนอันตราย" style="visibility: hidden;">
ไฟล์ที่ควรตรวจสอบเป็นอันดับแรก:
.htaccess
(ตรวจสอบว่ามีการแทรกRewriteRule ^.*$ http://เว็บพนัน [R=301,L]
หรือไม่)header.php
/footer.php
(ตรวจสอบการเรียกใช้งาน JS ผิดปกติ เช่นdocument.write("
)")
เครื่องมือช่วย:
ใช้ D-Shield (D_Safe) สแกนเซิร์ฟเวอร์ เพื่อทำเครื่องหมายไฟล์ที่มีฟังก์ชันอันตราย เช่น system()
, passthru()
3. ปิดทางเข้าการโจมตี: ป้องกันการแทรกซึมซ้ำ
- เปลี่ยนเส้นทางเข้าสู่ระบบหลังบ้าน (สำหรับ WordPress):
ติดตั้งปลั๊กอิน WPS Hide Login เพื่อเปลี่ยน/wp-admin/
เป็นเส้นทางที่กำหนดเอง (เช่น/mylogin-2024/
) - อัปเดตแพตช์ความปลอดภัยด่วน:
- อัปเดตปลั๊กอินทั้งหมดเป็นเวอร์ชันล่าสุด (ใช้ WPScan ตรวจสอบปลั๊กอินที่มีช่องโหว่)
- ลบธีมและปลั๊กอินที่ไม่ได้ใช้งาน (โดยเฉพาะชื่อที่ดูน่าสงสัย เช่น
wp-seo-optimize
)
- เสริมสิทธิ์เซิร์ฟเวอร์:bashคัดลอก
# ห้ามรัน PHP ในโฟลเดอร์อัปโหลด find /path/เว็บไซต์/wp-content/uploads/ -type f -name "*.php" -exec rm -f {} \; chmod 644 .htaccess # จำกัดสิทธิ์การเขียน
เคล็ดลับสำคัญ:หลังจากล้างข้อมูลเสร็จทันทีให้ใช้ปลั๊กอิน Link Redirect Trace สแกนทั้งเว็บไซต์ เพื่อให้แน่ใจว่าไม่มีโค้ดรีไดเรกต์เหลืออยู่ ถ้าพบลิงก์ลับที่เก็บในฐานข้อมูล (เช่นในตาราง wp_posts
ที่ฟิลด์ post_content มีโค้ดเข้ารหัส) ให้ใช้เครื่องมือ Adminer รันคำสั่ง SQL ดังนี้:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'โค้ดที่เป็นอันตราย', '');
ส่งคำขอรีวิวใหม่ให้ Google
การลบลิงก์ลับเป็นแค่ก้าวแรกเท่านั้น ภายใน 48 ชั่วโมงต้องส่งคำขอรีวิวที่ถูกต้องให้ Google เพื่อให้คะแนนกลับมา
90% ของเจ้าของเว็บล้มเหลวเพราะ “หลักฐานไม่เพียงพอ” หรือ “ใช้ถ้อยคำผิด” จนถูกตรวจสอบซ้ำ (延長ระยะเวลาการฟื้นฟู 3-6 เดือน)
ผมมีเทมเพลตภาษาอังกฤษสำหรับใช้ส่งคำขอได้เลย และแพ็คเกจหลักฐานเข้มข้นที่ช่วยเพิ่มโอกาสผ่าน 80%
1. ส่งคำขอรีวิว “การดำเนินการด้วยมือ” ผ่าน Search Console
ขั้นตอน:
เข้าไปที่「ความปลอดภัยและการดำเนินการด้วยมือ」→「การดำเนินการด้วยมือ」→ คลิก “ขอรีวิว”
เทมเพลตภาษาอังกฤษ (เปลี่ยนข้อความสีแดงให้เหมาะสม):
We have removed all spammy backlinks injected by hackers:
1. Deleted malicious codes in .htaccess and footer.php (see screenshot_1.png).
2. Blocked 142 suspicious IPs from Vietnam/Ukraine (access.log attached).
3. Fixed the vulnerability via updating plugins (e.g. Elementor from 3.6 to 3.19).
Request to revoke the manual penalty.
เอกสารแนบที่จำเป็น:
- ภาพเปรียบเทียบโค้ดก่อนและหลังการลบ (ใช้ WinMerge เปรียบเทียบไฟล์)
- บันทึกล็อกการบล็อก IP ที่เป็นอันตรายบนเซิร์ฟเวอร์ (ระบุเวลา IP และเส้นทางการโจมตี)
- รายงานสแกนลิงก์ขาออกทั้งเว็บจาก Screaming Frog (ส่งออกเป็น PDF)
2. จัดการรายงาน “ปัญหาด้านความปลอดภัย” พร้อมกัน
เข้าไปที่「ปัญหาด้านความปลอดภัย」→ เลือกหน้าที่ถูกแฮ็กทั้งหมด → คลิก “ทำเครื่องหมายว่าแก้ไขแล้ว”
เทคนิคเร่งการเก็บข้อมูล:
ใช้เครื่องมือ “ตรวจสอบ URL” ใส่ URL ที่ถูกแฮ็ก → คลิก “ขอการจัดทำดัชนี” (ส่งได้สูงสุดวันละ 50 รายการ)
3. เคล็ดลับซ่อนเร้นป้องกันไม่ให้รีวิวล้มเหลว
- หลีกเลี่ยงการใช้ถ้อยคำแสดงความขอโทษ เช่น “We apologize” (Google มองว่าเป็นการเลี่ยงความรับผิดชอบ) ให้เน้นคำอธิบายตามข้อเท็จจริงแทน
- แนบรายงานความปลอดภัยจากบุคคลที่สาม (เช่นผลสแกนจากSucuri หรือSiteCheck) เพื่อยืนยันว่าเว็บไซต์ปลอดภัย
อัปเดตเนื้อหาเว็บไซต์อย่างต่อเนื่อง:
หลังส่งคำขอรีวิว ภายใน 24 ชั่วโมงให้โพสต์บทความต้นฉบับ 2 บทความ (Google จะเห็นเป็นสัญญาณการดูแลเว็บไซต์อย่างจริงจัง)
เคล็ดลับสำคัญ:ถ้า 7 วันผ่านไปแล้วยังไม่ได้รับการตอบกลับจาก Google ให้ส่ง sitemap.xml ผ่านฟีเจอร์ “ลักษณะการค้นหา → เร่งการเก็บข้อมูล” พร้อมข้อความในช่องหมายเหตุว่า “Malware cleaned up, please recrawl critical pages like /contact-us/ and /blog/”
ถ้าการแจ้งเตือนดำเนินการด้วยมือยังไม่ถูกยกเลิก ต้องส่งคำขอรีวิวซ้ำด้วยหลักฐานเดิมอีกครั้งหลัง 28 วัน (เพื่อหลีกเลี่ยงการถูกมองเป็นสแปม)
รายการตรวจสอบการตั้งค่าการป้องกันต้นทุนต่ำ
ความเข้าใจผิดใหญ่ที่สุดคือ “การป้องกันมีต้นทุนสูง” — 80% ของการโจมตีของแฮ็กเกอร์เกิดจากช่องโหว่พื้นฐาน เช่น ปลั๊กอินที่ไม่ได้อัปเดต รหัสผ่านอ่อนเส้นทางหลังบ้านดีฟอลต์
เราสามารถป้องกันการสแกนที่เป็นอันตรายกว่า 20,000 ครั้งให้ลูกค้าด้วยงบประมาณไม่ถึง 500 หยวนต่อปี
แม้จะมีความรู้พื้นฐานเกี่ยวกับการจัดการเซิร์ฟเวอร์ ก็สามารถเสริมความปลอดภัยทั้งเว็บไซต์ภายใน 1 ชั่วโมงได้
1. ชุดป้องกันพื้นฐาน 3 อย่าง (ไม่มีค่าใช้จ่าย)
การตรวจสอบไฟล์เรียลไทม์:
- ใช้ฟีเจอร์ “ป้องกันการแก้ไขไฟล์” ในแผงควบคุม BaoTa (ฟรี) เพื่อล็อกไฟล์สำคัญเช่น
wp-config.php
,.htaccess
หากมีการเปลี่ยนแปลงจะมีการแจ้งเตือนผ่าน SMS
บล็อกการโจมตีแบบบรูทฟอร์ซ:
- ติดตั้ง Wordfence (เวอร์ชันฟรี) และเปิด “การตรวจสอบทราฟฟิกเรียลไทม์” เพื่อบล็อก IP ที่ล็อกอินล้มเหลวเกิน 5 ครั้งใน 15 นาทีโดยอัตโนมัติ
แบ็คอัพอัตโนมัติบนคลาวด์:
- ตั้งค่า UpdraftPlus ให้แบ็คอัพรายวันขึ้น Google Drive (เก็บไว้ 7 รุ่น) หากถูกแฮ็กสามารถย้อนกลับเป็นเวอร์ชันที่สะอาดได้ทันที
2. ตั้งค่าความปลอดภัยเซิร์ฟเวอร์ที่ต้องแก้ไขด่วน
ปิดการใช้งานฟังก์ชัน PHP ที่อันตราย:
แก้ไขไฟล์ php.ini
โดยเพิ่มค่าใน disable_functions
ดังนี้:
system,exec,passthru,shell_exec,proc_open,curl_multi_exec
จำกัดสิทธิ์ของโฟลเดอร์อัพโหลด:
# หยุดการรัน PHP ในโฟลเดอร์ /uploads/
find /ที่อยู่เว็บไซต์/wp-content/uploads/ -type f -name "*.php" -delete
chmod -R 755 /ที่อยู่เว็บไซต์/wp-content/uploads/
ซ่อนข้อมูลเซิร์ฟเวอร์:
เพิ่มโค้ดนี้ไว้ด้านบนของไฟล์ .htaccess
:
ServerSignature Off
Header unset X-Powered-By
3. กฎไฟร์วอลล์ (ค่าใช้จ่ายรายเดือน ≤ $20)
ตั้งค่าฟรีแพลน Cloudflare:
- กฎไฟร์วอลล์ 1: ท้าทายทุกการเข้าถึงที่มี
/wp-admin/
หรือxmlrpc.php
(ยกเว้น IP ที่อยู่ใน whitelist) - กฎไฟร์วอลล์ 2: บล็อกคำขอที่ User-Agent มี
sqlmap
หรือnmap
บล็อกช่วง IP ของประเทศที่มีความเสี่ยงสูง:
ในแผงควบคุม Baota เพิ่มกฎปฏิเสธดังนี้:
เวียดนาม: 14.224.0.0/11
รัสเซีย: 46.161.0.0/18
ยูเครน: 37.52.0.0/14
คำแนะนำสำคัญ: ควรสแกนช่องโหว่ด้วย WPScan ทุกๆ ไตรมาส (คำสั่ง: wpscan --url ชื่อโดเมนของคุณ --api-token รหัสของคุณ
)
ให้จัดลำดับความสำคัญแก้ไขปลั๊กอินที่มีความเสี่ยงระดับกลางขึ้นไปก่อน หากใช้เซิร์ฟเวอร์ Nginx อย่าลืมเพิ่มการตั้งค่าดังนี้:
location ~* ^/(uploads|wp-content)/.*\.(php|php5|phtml)$ {
deny all;
}
(จะช่วยบล็อกไม่ให้รันโค้ด PHP ผ่านภาพที่แฝงมากับไฟล์)
อย่าไปพึ่งพา “ปลั๊กอินซ่อมแซมอัตโนมัติ” — เราเคยแกะปลั๊กอินรักษาความปลอดภัยยอดนิยม 13 ตัว พบว่า 9 ตัวมีปัญหาสิทธิ์เกินหรืออาจลบไฟล์ผิดพลาด
การตั้งค่าความปลอดภัยด้วยมือ (เช่น กฎ .htaccess หรือสิทธิ์เซิร์ฟเวอร์) คือวิธีที่ควบคุมได้จริงที่สุด