เว็บโดนแฮก ทำไง ? ปัญหาใหญ่ของคนทำเว็บ …. สวัสดีครับ วันนี้ผม คนทำเว็บนอกคอก จะมาเล่าให้ฟัง ถึงประสบการณ์ “แก้เว็บถูกแฮก ด้วยตัวเอง” โดยเป็นเว็บที่สร้างขึ้นด้วย WordPress นะครับ พร้อมจะแสดงตัวอย่าง ด้วยภาพประกอบ อธิบายขั้นตอนที่ผมใช้แบบ Step by Step อย่างละเอียด
แต่บทความนี้เราจะไม่พูดเรื่องที่ว่า โดน Hack เพราะอะไร หรือ มัน Hack ยังไง หรือ ป้องกันยังไง นะครับ
เราจะพูดเฉพาะ “เว็บ WordPress ที่โดนแฮกไปแล้ว และจะแก้ไข หรือกู้เว็บ กลับมายังไง” เท่านั้นนะ
(ส่วนวิธีป้องกัน วิธีเลือก Host วิธีทางเทคนิคอื่นๆ ด้าน WordPress Security ไว้ว่ากันอีกที)
[ ทำความเข้าใจกันก่อน บทความนี้สำหรับใคร ? ]
ก่อนอื่น จากที่ผมได้วงเล็บไว้ ใน TITLE ว่า สำหรับคนทั่วไป มันหมายถึง
– คนที่ไม่ใช่ System Admin
– คนที่ไม่ใช่ Web Developer
– คนที่ไม่รู้เรื่อง CODE เลย
– คนที่ไม่รู้เรื่อง Hack เลย
– คนที่ไม่รู้เรื่อง Network / Server / Hosting เลย
ใช่ครับ คนข้างบนนั่นคือ ตัวผมเอง (ซึ่งผมเชื่อว่าหลายคนเป็นแบบผม จึงใช้คำว่า คนทั่วไป)
ทีนี้ คำว่าคนทั่วไป นั่นไม่ใช่คนธรรมดาๆทั่วไปที่ไม่รู้อะไรเลย
บทความนี้อย่างน้อย ผู้อ่านต้อง
1. เป็นคนทำเว็บ สร้างเว็บด้วย WordPress (platform อื่นไม่เกี่ยวนะครับ)
2. มีรหัสผ่าน Control Panel หรือ Admin Panel (สามารถเข้าไปจัดการไฟล์ใน Host ได้)
(ถ้าใช้ WordPress Hosting ของต่างประเทศ ก็ไม่นับครับ เพราะผมไม่แน่ใจเค้าให้คุณเข้าไปแก้ไขไฟล์ได้มั้ย)
3. เป็นผู้ที่สร้างเว็บ หรือ ผู้ที่ดูแลเว็บ ที่โดนแฮก นั่นเอง
[ ที่มาที่ไป ]
ก่อนที่ผมจะนำเสนอบทความนี้ ผมรับทำเว็บด้วย WordPress มาได้ประมาณ 2 ปี นะครับ โดย ผมไม่ใช่ Developer นะ (ไม่รู้เรื่อง CODE เลย) ผมเป็นเพียง User คนนึง หรือเรียกง่ายๆว่า เป็นคนลองเล่น หัดทำเว็บโดยใช้ WordPress และศึกษามั่วเอง [จึงเป็นที่มาของคำว่า คนทำเว็บนอกคอก]
ผมทำเว็บที่ใช้ WordPress มาประมาณ 60 กว่าเว็บไซต์ และดูแลเว็บเหล่านั้นให้กับลูกค้าอยู่
ด้วยความที่เราไม่รู้เรื่อง Server/Hosting อะไรพวกนี้เลย
ปกติมีเรื่องอะไร ผมจะติดต่อทางผู้ให้บริการเช่า Host จัดการให้ทั้งหมด
ซึ่งบางครั้งและบ่อยครั้งผมก็รู้สึกเกรงใจ เจ้าหน้าที่ Support
(เพราะเรามีเรื่องไปถามไปรบกวนเค้าเยอะ แต่ก็ได้รับความช่วยเหลืออย่างดีตลอด)
ทีนี้พอเกิดปัญหา เว็บลูกค้าโดนแฮก ครั้งแรก ด้วยความที่เราไม่เคยมาก่อน
ตอนนั้นผม ตกใจ และ สติแตก มากมาย … ถึงกับ น้ำตาซึม ไปบ่นให้แม่ฟัง …
ว่า ทำไมมันต้อง มาแฮกเว็บผมด้วย เราไปทำอะไรมัน มันถึงมาแกล้งเรานะ ฮือๆๆ
(โดยหวังว่า คนที่รักเราและเรารักที่สุด จะช่วยอะไรเราได้บ้าง)
แม่ผมก็ช่วยเรียก “สติ” ผมกลับคืนมา ด้วยคำพูดที่ว่า … แฮก คืออะไร ?
( – จบเลย เจอแบบนี้ – )
เมื่อผมได้สติ ผมรู้ทันที งานนี้ ขนาดแม่กู ยังพึ่งไม่ได้ แล้วเราจะพึ่งใครได้ละ … นอกจาก … ต้องพึ่งตัวเอง !!
(ผมจึงเริ่มศึกษา เริ่มมั่ว เริ่มหาวิธี แก้ไปเรื่อยๆ)
[ กูอายลูกค้าว่ะ ]
เมื่อมีลูกค้า แจ้งมาว่า … คุณโจ้ เว็บมันขึ้นหน้าจอแดงๆ เตือน ว่าโดนแฮก !!
มันทำให้เกิด ความรู้สึก … อาย ต่อลูกค้า เป็นอย่างมาก
มีเพื่อนผมถามว่า … “เมิงแก้แฮก ให้ลูกค้า คิดตังป่าว ?”
ผมรีบตอบทันที “แค่เว็บที่กูทำให้ โดนแฮก กูก็อายจะแย่แล้ว ยังมีหน้าไปเก็บตังเค้าได้ยังไง ?”
2 ปีที่ผ่านมา ผมโดน Google แจ้งเตือนว่า เว็บ WordPress โดนแฮก มาแล้ว รวมทั้งหมด 13 ครั้ง กับ 7 เว็บ (จากทั้งหมด 60 เว็บที่ดูแลอยู่) แรกๆผมมั่วๆแก้ได้เบื้องต้น ก็รู้สึกดีใจ … แต่สักพัก มันก็ ติดอีก หรือ โดนแจ้งเตือนอีก ซ้ำๆกับเว็บเดิม
นั่นบ่งบอกว่า ผมแก้แบบไม่สุด คือ แก้ยังไม่ครบทุกจุด หรือ แก้ไม่สะอาด นั่นเอง
เพราะ Hacker ยังมีฝั่งไฟล์ หรือ ฝั่ง Script วาง Backdoor เอาไว้อยู่
ผมพยายามจะทำความเข้าใจว่า หน้าตา Script มันเป็นอย่างไร
ผมพยายามหาเครื่องมือ หรือ Plugin มาช่วยตรวจสอบว่าไฟล์อะไรบ้างมีปัญหา
ผมพยายามมั่วๆ จนสุดท้าย เออ โอเคละ มันน่าจะพอ ใช้งานได้ละ
… ผมพอจะพูดกับลูกค้าได้อย่างเต็มปาก ว่า
“พี่ครับ ตอนนี้ผมแก้ไขให้เว็บกลับมาปกติได้แล้วครับ”
ด้วยสาเหตุนี่เอง ผมถึงอยากเอามาเล่าให้คนทำเว็บ ที่อาจจะประสบชะตากรรม แบบเดียวกับผมได้รู้ว่า … ชีวิต ยังพอมีความหวัง !! (WordPress โดนแฮก … เรายังพอมีความหวังที่จะแก้ได้ ด้วยตัวเอง)
เอาละเราจะเข้าเรื่องกันจริงๆเสียที โม้มากไปละ
[ สิ่งที่จำเป็นต้องทำ ก่อนจะแก้เว็บโดนแฮก ]
1. ลงทะเบียนเว็บกับ Google Webmaster Tool
ปกติแล้วทำเว็บเสร็จทุกครั้ง เราควรจะต้อง Add Site ของเราเข้าไปใน ► Google Search Console (หรือที่ชื่อเดิม เราคุ้นเคยกันดีคือ Google Webmaster Tool) เจ้าเครื่องมือตัวนี้ถือเป็นสิ่งจำเป็น เพราะนอกเหนือจากมันจะช่วยเราในด้าน
• รายงานผล Traffic – SEO
• เช็คยอดผลการค้นหา Keyword ที่ Google Index
• รายงานตรวจสอบดู Backlink
• นำมาใช้วิเคราะห์ Keyword เพื่อต่อยอดในการทำ Search Engine Marketing (Google)
• และอื่นๆอีกมากมาย ที่ส่งผลระหว่าง เว็บไซต์ของเรากับ Google
สิ่งสำคัญที่สุดคือ Google Webmaster Tool จะช่วยด้าน Security Issues
รายงาน+ตรวจจับ ด้านความปลอดภัยให้กับเว็บไซต์ของเราได้
ซึ่งแน่นอน หากเว็บเราโดนแฮก Google จะแจ้งเตือนเรามา
หากเราได้ ลงทะเบียนเว็บไว้กับ Google Search Console
รูปแบบการโดนแฮก ก็มีแตกต่างกัน ที่พบบ่อยๆ เวลาโดน Google เตือนมา เช่น
– Hacked content detected
– Malware detected
2. ควร Scan Virus ในเครื่องคอมของเราก่อน
แนะนำให้ติดตั้ง โปรแกรม Anti-Virus (มีหลายตัวนะครับ ที่ใช้ได้ดี) และอย่าลืม อัพเดทฐานข้อมูลไวรัสเป็นตัวล่าสุดก่อน ถ้าถามว่า ผมใช้ตัวไหน ผมบอกก็ได้ว่าผมใช้ ของ ESET นะ ตัวราคา 999 บาท. (ไปซื้อ License พร้อมโหลดที่ – https://eset.co.th/th/store/)
[ ขั้นตอนการแก้เว็บ WordPress โดนแฮก ]
ผมจะขอสรุปเป็น ขั้นตอนก่อน แล้วค่อย อธิบายเพิ่มเติมโดยการลงรูปภาพ
เล่าวิธีขั้นตอนแก้ไขเป็นขั้นๆ อีกครั้งหนึ่งนะครับ เพื่อให้ เข้าใจได้ง่ายๆ
วิธีแก้ไขเว็บโดนแฮก (ที่ผมใช้แก้นะครับ) :
1. Google จะแจ้งปัญหามาว่า พบ Content อะไรบ้างที่โดนแฮส (กดดูตรง Security Issue เพื่อดูรายงาน)
2. ให้เข้าไปจัดการไฟล์ ค้นหาและไล่ลบไฟล์แปลกๆ บนโฮส (เข้าทาง Control Panel หรือ DirectAdmin)
3. ไล่ลบไฟล์ชื่อแปลกๆ โดยส่วนมาก แฮกเกอร์จะฝั่งไฟล์ไว้ หรือถ้า โดนหนักๆ เค้าอาจจะ Upload ไฟล์ Zip
ลงมาในโฮสแล้วแตกซิบ อาจจะมาทั้งแบบเป็น Folder เลย หรือ สุ่มกระจายๆหลายจุด
แนวโน้มของไฟล์ที่ไม่ปลอดภัย :
– ชื่อไฟล์แปลกๆ
– มักจะมี นามสกุล .php
– มักจะมี นามสกุล .php.suspected
– มักจะอยู่ใน Folder /wp-content/uploads/
– มักกระจายอยู่ใน /Plugin ต่างๆ
– มักกระจายอยู่ใน /Theme ที่เราใช้ (และไม่ได้ใช้ด้วย)
– มักจะแทรก Script ลงไปใน Core WordPress
– มักจะแทรก Script ลงไปที่ Header.php และ Footer.php ของธีม
– มักจะแทรก Script ที่ wp-config.php
– มักจะแทรก Script ที่ wp-setting.php
Script แปลกๆ มักจะเป็น Code ยาวๆที่เรามองดูแล้ว จะพอรู้ทันทีว่า ผิดปกติ
ดูไม่ยากมากนัก มักจะอยู่ บนๆ หรือไม่ก็ ล่างสุดเลย ก็ให้ลบออก เฉพาะ Script
โหแล้วเราจะรู้ได้ไง ฟังดูแล้ว ปวดหัว แต่เด้วไว้ดูรูปภาพประกอบนะครับ
(แรกๆผมก็คิดแบบนั้น แต่เพราะคำว่า กูอายลูกค้า ทำให้ผมต้องสู้ต่อไป)
4. ตรวจสอบ Script แปลกๆ ใน header.php (ใน Theme ที่เราใช้อยู่)
5. ตรวจสอบ Script แปลกๆ ใน footer.php (ใน Theme ที่เราใช้อยู่)
6. ตรวจสอบ Script แปลกๆ ในไฟล์ wp-config.php (ที่ httpdocs)
7. ตรวจสอบ Script แปลกๆ ในไฟล์ wp-settings.php (ที่ httpdocs)
8. ใช้ Plugin – Wordfence หรือ WP Scan เช็คดูอีกครั้งว่ามีไฟล์ได้เป็น backdoor มั้ย
9. ถ้า WordPress เราติด (wp-admin หรือ wp-include) ให้ลง WordPress ใหม่
10. ถ้า Theme เราติด ให้ลบแล้วลงใหม่ โหลดตัวต้นฉบับใหม่มาลง
11. ถ้า Plugin เราติด ให้ลบแล้วลงใหม่ เอาตัวล่าสุดมาลง
12. พอลบไฟล์แปลกๆ + Script แปลกๆ และลอง Scan จนคิดว่า น่าจะ Clean แล้ว
ให้ยื่นเรื่องไปให้ Google ตรวจสอบเว็บเราอีกที (รอประมาณไม่เกิน 24 ชม.)
13. เข้า WordPress ไปดู ว่า มี User แปลกๆนอกจากเรามั้ย
(กรณีเราโดนแฮก Password – WordPress Admin) ถ้าพบว่ามีก็ให้ลบออก
14. เข้าไปเปลี่ยน Password – WordPress Admin (เปลี่ยนทาง Database)
15. [สำคัญสุด] แจ้งทางโฮส ให้ช่วย Reset Password ของ Control Panel / DirectAdmin / FTP
เขียนเป็นข้อๆแบบนี้ อาจจะงงๆ เพื่อให้ ผู้อ่านเข้าใจได้ง่ายขึ้น มันเลยต้องแสดงให้ดูด้วยภาพ
ผมจึง Capture หน้าจอมาลงให้ ในช่วงที่ผมแก้ไขจริงๆ ไปดูกันครับ
[ อธิบายวิธีแก้ ด้วยภาพจริง เว็บจริงที่โดนแฮก ]
เพราะ ตั้งใจจะเอามาโพสอยู่แล้ว โชคดี ที่ 2 วันก่อน (10/11/2016) ผมพึ่งโดนแฮก ไปล่าสุด
ย้ำอีกที มันจะไม่มีประโยชน์เลยถ้า เว็บคุณไม่ได้โดนแฮกอยู่นะ
ดังนั้น คุณไม่จำเป็นต้องอ่านต่อแล้ว หาก WordPress คุณยังปกติดี
ไว้รอโดนแฮก ค่อยมาอ่านก็ได้ครับ … [เพราะยาวนะ 50 กว่ารูป]
เริ่ม …
สัญญาณเตือนว่าเว็บโดนแฮก
มีเมล์แจ้งเตือนจาก Google มาบอกว่า Malware detected
เมื่อคลิกเข้าไปดูที่ Google Webmaster Tool แล้ว หน้าตาจะประมาณนี้
เมื่อเว็บที่เราโดน Google หมายหัวไว้แล้ว เวลาพิมพ์เข้าเว็บ จะขึ้นหน้าจอเตือน สีแดง
ไม่เพียงแค่นั้น มันยังแจ้งเตือนคนอื่นๆ บนหน้าจอ SERP เวลาค้นหาอีกด้วย (คนเห็นก็ไม่กล้าคลิกแล้วแบบนี้ =.=”)
เริ่มเครียด … อย่าพึ่งตกใจไป … มาเริ่มลุยหาทางแก้กัน
ช่วงที่ 1 : จัดการกับปัญหาที่ตัวหลักของเว็บ WordPress
เริ่มจาก เข้าไปที่ Host ดูไฟล์ (ใน httpdocs)
หมายเหตุ : หน้าตาของ Control Panel/Admin Panel ของแต่ละคนอาจจะแตกต่างกันออกไปนะครับ
(ของผม ตัวโฮส ใช้เป็น Plesk เว่อร์ชั่นใหม่ มั้ง หน้าตาเป็นแบบที่เห็นอ่ะ Host อื่นหน้าตาอาจจะเป็นอีกแบบ)
ภาพด้านบน คือ เว็บที่โดนแฮก เนื่องจากผมไม่รู้ และไม่แน่ใจ ว่าไฟล์อะไรมันโดน
ในเบื้องต้น … ผมจึงเปิดอีกเว็บที่ปกติ มาเทียบกันดู (ภาพด้านล่าง คือ เว็บที่ไม่โดนแฮก – และพึ่งสร้างเสร็จใหม่ๆ)
เมื่อพอเปรียบเทียบกันแบบคร่าวๆ ตามประสาคนที่ ไม่ใช่ WordPress Developer แล้ว
จะเห็นไฟล์ + Folder แปลกๆ ที่เพิ่มขึ้นมา ดังภาพด้านล่าง ซึ่งผมก็ไม่คิดอะไรมาก ลบไฟล์แปลกๆออกเลย
(อันนี้เราต้องใช้ Sense กันเสียหน่อย แต่หากคุณโดนแฮกบ่อยๆ จะคุ้นเคยกับมันมากขึ้น)
ตัวสำคัญอันดับแรก คือ ไฟล์ index.php
จะเห็นว่า มี CODE แปลกๆ เพิ่มเข้ามา
ถามว่า รู้ได้ไงว่ามันแปลก ผมใช้วิธี เปรียบเทียบกับ ไฟล์ index.php ของเว็บที่ไม่โดนแฮก ครับ
ก็ลองเปิด สองหน้าจอ เทียบกันดู เลยสดๆ
เช่นเดียวกัน ไฟล์สำคัญอันดับ 2 คือ wp-config.php โดนเหมือนกัน
(บางครั้ง ตำแหน่ง อาจจะดูด้านบนสุดเลยนะ หรือ อาจจะเป็น CODE เยอะๆเลย ดูน่ากลัว)
ไฟล์ที่ 3 ที่ต้องดู คือ wp-setting.php
จะเห็นชุด CODE โหดๆมาแล้ว ถ้าคุณไม่รู้ ก็ให้ ลองเปิดเทียบกับ เว็บที่ปกติ จะเห็นว่า มันต่างกัน
(บางที ถ้าคุณพึ่งเริ่มโดน หรือ โดนไม่มาก … ไฟล์นี้ อาจจะ ปกติ ไม่เป็นอะไร)
เราก็ ลบออก ยกชุด แล้วเทียบกับ ไฟล์ wp-setting.php ของอีกเว็บที่ ไม่โดนแฮกดู
ไฟล์ต่อไปที่สำคัญและ โดยตลอด คือ header.php ใน Theme ที่เราใช้อยู่
ก็จะโดนแทรก Script ตามภาพด้านล่าง (เจ้า Script ที่ Header นี้เอง ที่บ่อยครั้ง
มันเป็นตัวทำให้ ANTI VIRUS ในคอมเราแจ้งเตือน ว่าเว็บนี้ติด Malware)
ให้ลบออกเลย แต่ บ่อยครั้งที่ ลบไปแล้ว มันจะกลับมาอีก
บางที ลบปุบ refresh ปับ มันมาอีกแล้ว นึกว่า ผีหลอก
สาเหตุเพราะ ยังมีไฟล์อื่นๆ อีกเพียบ เราต้องไล่แก้กันต่อไป
อีกไฟล์ ที่ มีโอกาส ที่ แฮกเกอร์ จะฝั่ง Script เอาไว้ ก็คือ footer.php ใน Theme ที่เราใช้
แต่ว่า โอกาสพบ จะไม่บ่อยนัก แต่มีบ้าง ในบางที (แต่ header นี่ 100%)
อีกจุดที่ คุณจะพบไฟล์แปลกๆได้ นั่นคือ Folder : wp-content/uploads/
จุดนี้เป็น ตัวที่เราต้องไล่เช็คดู ทุกปีทุกเดือน โดยปกติแล้ว Folder นี้ เราไว้ใช้เก็บรูปภาพ
หรือ เอกสาร PDF , หรือ ไฟล์วีดีโอ … มีเดียต่างๆ ดังนั้น จะทำให้เรามองไฟล์แปลกๆได้ง่าย
เพราะไฟล์ รูปส่วนมากก็จะเป็น .jpg .png หรือ ไฟล์ มีเดียต่างๆ เช่น .pdf .doc .mp3 .mp4 ฯลฯ
แต่ไฟล์แฮกจะมีชื่อแปลกๆ และเป็นไฟล์นามสกุล .php และ .php.suspected ซึ่งลบได้เลย
ในส่วนของไฟล์ .suspected นั้น เคยคุยกับโฮส เค้าบอกว่ามันเป็นไฟล์ของระบบ ที่ตรวจพบความปกติ
แต่ภายหลัง ผมลองใช้โปรแกรม Scan ดู มันบอกว่า ไม่ปลอดภัย ..
สุดท้าย ไม่สนแล้ว ว่ามันคืออะไร มีที่มายังไง … สรุปก็คือ ลบ แม่ง เลย
ตัวอย่าง ไฟล์ที่แปลกปลอม ใน folder – uploads
มาเป็นชุดก็มี
เมื่อคุณ ลบไฟล์แปลกๆใน uploads แล้ว รวมถึง เช็ค Script ในไฟล์สำคัญๆข้างต้นแล้ว
ในบางครั้ง Hacker อาจจะฝั่งไฟล์ไว้ในตัว Core ของ WordPress
เนื่องจากเราไม่ใช่ผู้เชี่ยวชาญหรือผู้พัฒนาโปรแกรม WordPress
จึงไม่ควรไปยุ่ง ไปแก้ ไปลบอะไร เมื่อ WordPress โดนแฮก
วิธีที่ User ผู้ใช้งานอย่างเรา ควรทำ คือ
การอัพเดท Core WordPress เป็น Version ใหม่ล่าสุด
แต่การอัพเดทนั้น ถ้าจะให้ ชัวร์ ผมแนะนำ ให้ทำแบบ Manaul Update
ซึ่งวิธีการก็ไม่ยากครับ
ช่วงที่ 2 : จัดการกับปัญหาที่ CORE WordPress
ให้เข้าไป Download โปรแกรม WordPress ตัวล่าสุดได้ที่
► https://wordpress.org/download/
เมื่อโหลดมาแล้ว ให้ อัพโหลดไฟล์ ลงไปในโฮส
อัพเสร็จเรียบร้อย ให้ Double Click แตกซิบออกมา
ไฟล์ WordPress ตัวใหม่ จะอยู่ใน Folder httpdocs/wordpress/
จากนั้นให้เรา ลบ Folder เก่า คือ wp-admin กับ wp-includes ทิ้งได้เลย
จากนั้น ให้เรา เข้าไปใน WordPress ตัวใหม่ ที่พึ่งแตกซิบ ใน Folder httpdocs/wordpress/
และ Select ทุกไฟล์ ยกเว้น wp-content เพื่อย้ายไปด้านนอก
เลือก Replace existing files ทับไฟล์เก่าอื่นๆ ทั้งหมด
เมื่อย้ายเสร็จแล้ว เราจะได้ Core WordPress เป็น เว่อร์ชั่นล่าสุด และ CLEAN
ทำให้ เราไม่ต้องกังวลอีกต่อไป อีกว่า Hacker จะฝั่งไฟล์หรือ Script อะไรใน
ตัว wp-admin และ wp-include ซึ่งเป็นที่เก็บของตัว Core WordPress
โดยปกติแล้ว วิธีการ Manual Update WordPress นั่นสามารถทำได้ง่ายๆ
ด้วยวิธีนี้ ซึ่งหัวใจของมัน จะอยู่ที่ การเก็บข้อมูลเก่า ที่สำคัญ 2 ตัว คือ
1. ข้อมูลใน Folder “wp-content”
2. ไฟล์ “wp-config.php”
เมื่อเว็บไซต์โดนแฮก การอัพเดท WordPress เป็น Version ล่าสุด
แบบ Manaul นี้เอง คือวิธีแก้ไข ในตำแหน่ง Core WordPress
ที่นี้ ก็จะเหลือไฟล์แปลกๆใน httpdocs แล้วที่เราต้องมา กำจัด
ตามภาพด้านล่าง
ผมใช้วิธี เปิดเทียบดู ระหว่าง ไฟล์ WordPress ที่โหลดมา (แตกซิบดู)
เอามาเทียบดูว่า บนโฮสจริงเรา มีไฟล์อะไรที่ รู้สึกแปลกปลอม
ในที่นี้ จะเห็น มี view.php + wp-crons.php.suspected ก็ลบได้เลย
แต่บางไฟล์ จะเป็นไฟล์พวก config ของ plugin บางอย่าง
หรือไฟล์ htaccess หรือ ไฟล์ html ที่ไว้ลงทะเบียนกับ google webmaster tool
(ในส่วนนี้ ผมเชื่อว่า คนทำเว็บ น่าจะพอดูกันออก นะครับ)
มาถึงตอนนี้ ก็เป็นอันเสร็จกระบวนการ แก้ไข HACK ในส่วนของ ตัวหลักๆ
ที่จะสามารถทำให้เว็บไซต์ พอจะเข้าไป Dashboard ได้ตามปกติแล้ว
- Core WordPress
- Config File ต่างๆ
- Header.php (ของธีม)
- ไฟล์ใน Folder – Upload
4 ตัวนี้ เป็นเสมือน ตัวหลักๆ ที่เราจำเป็นต้องจัดการในเบื้องต้นเสียก่อน
ช่วงที่ 3 : จัดการกับปัญหา User ที่แปลกปลอม
ก่อนที่เราจะ เข้าไปสู่กระบวนการ ตรวจเช็ค Backdoor และเก็บกวาดส่วนที่เหลือ
หลังจากอัพเดท WP เว่อร์ชั่นล่าสุดไป ระบบอาจแจ้งให้เรา Update Database
เมื่อทำการ Login พอกดอัพเดทเรียบร้อยแล้ว เมื่อเราเข้าไป Dashboard ของ WordPress
จุดแรกที่ให้เข้ามาดูก่อน คือ Users ให้ลบ User แปลกๆออก
จากภาพด้านล่าง จะเห็นว่า มันมี User แปลกๆ โผล่เข้ามา
ที่นี้บางทีเราอาจจะไม่สามารถลบได้ ซึ่งสามารถแก้ไขด้วยการ
เข้าไปลบที่ Database เอง ในส่วนนี้ อาจจะฟังดูยากสักหน่อย
แต่จริงๆไม่ได้ยากมาก เพราะผมเองที่ไม่รู้เรื่อง Database ยังทำได้
ก็ให้เราเข้าไปใน Database -> phpMyAdmin (ดูรูปประกอบ – บางโฮส หน้าตาจะไม่เหมือนกัน)
หน้าตาของ phpMyAdmin ที่เก็บ Database ข้อมูลของ WordPress นั้น
จะเป็นเหมือนดังคล้ายๆรูปภาพด้านล่าง
ให้ เข้าไปที่ตำแหน่ง wp_users (บางครั้งจะมีชื่ออื่นๆ แต่สังเกตที่ลงท้ายด้วย users)
เมื่อเข้าไปดูแล้ว จะพบว่า มี user ชื่อ wpservicecontroller ซึ่งตรงนี้เอง
เป็น User ที่แฮกเกอร์แทรกเพิ่มเข้ามา (บางครั้งจะเป็นชื่ออื่นๆ) ก็ให้เราลบออก
เมื่อลบออกแล้ว ไป Refresh ดูใน Dashboard ของ WordPress ก็จะไม่พบแล้ว
เป็นอันว่า เสร็จกระบวนการ ในช่วงที่ 3
เพิ่มเติม : แนะนำให้ เปลี่ยน Password ของ User ทั้งหมดใหม่
โดย สามารถเข้าไปแก้ไข ที่ Database เองได้ หากทำไม่เป็น ให้แจ้งโฮส แก้ให้ก็ได้
หรือ ใช้วิธี กด [ลืมรหัสผ่าน แล้วรอรับเมล์สำหรับ เปลี่ยนพาสเวิร์ดใหม่]
ต่อไป เราจะเข้าสู่ ขั้นตอน เก็บกวาด
ช่วงที่ 4 : จัดการกับปัญหาในส่วนของ Theme และ Plugin
เมื่อเข้า WordPress มาแล้ว และจัดการเช็ค User แปลกปลอมแล้ว
ขั้นตอนต่อไปที่ ผมทำ (และแนะนำให้ทำ) คือ ให้ ลบ ธีมที่ไม่ได้ใช้ทั้งหมดออก
จากนั้น ให้โหลด ธีมหลักของ WordPress คือ ธีมตระกูล Twenty ทั้งหลาย มาใหม่
จากรูปด้านล่าง ผมลบ Theme ทั้งหมดออก จนเหลือแค่ Theme หลักที่ใช้ คือ SpaLab
และ ทำการดาวน์โหลดธีม Twenty Sixteen ตัวใหม่ล่าสุด แล้วใช้แทน
ทั้งนี้เพื่อ เราจะได้ Theme ที่ Clean จากการโดนแฮก มาใช้ชั่วคราวไปก่อน
มาถึงพระเอกของงาน นั่นคือ เครื่องมือ SCAN เว็บ สำหรับ WordPress ซึ่งมันมีอยู่หลายตัว
แต่ที่ผมใช้ คือ Plugin ที่มีชื่อ Wordfence Security ให้โหลดมา เพื่อใช้ทำการ Scan ไฟล์บนเว็บเรา
ติดตั้งเสร็จและกด Activate แล้วจะมี หน้าตาเด้ง ให้กรอก Email เพื่อแจ้งเตือน
อันนี้ก็แล้วแต่จะกรอกก็ได้ (แต่ผมไม่ได้กรอก) แล้วมันจะให้พาทัวร์ เราก็ไม่ต้องก็ได้
(หรือใครอยากทัวร์ อยากเรียนรู้ ก็เอาตามที่ท่านสบายใจ)
เมื่อกดเข้าไปที่ Plugin Wordfence จะปรากฎหน้าจอ ประมาณรูปด้านล่าง
ให้กดปุ่ม Start a Wordfence Scan เพื่อทำการ Scan เว็บ WordPress ของเราบน Host
หลังจากกดไปแล้ว ที่มุมขวาล่าง จะเห็นกล่องข้อความสีแดงขึ้น ว่า มันกำลังทำงานอยู่
ตรงนี้อาจจะนานสักหน่อย ขึ้นอยู่กับ โฮสและไฟล์ในเว็บ รวมถึงความเร็วเน็ต
ระหว่างที่เจ้า Wordfence กำลัง Scan จะขึ้น Message รายงานสถานะ ตามภาพด้านล่าง
เมื่อ Scan เสร็จเรียบร้อย จะมีข้อความขึ้นว่า Scan Complete
พร้อมกับ โชว์รายละเอียดว่า พบปัญหาที่ต้องแก้ไขเท่าไหร่
ถึงตอนนี้ เป็นช่วงเวลาสำคัญแล้ว ให้เลื่อนหน้าจอลงที่ด้านล่าง
เราจะพบกับ การแจ้งเตือนของปัญหาที่ถูกพบ ว่าไฟล์ไหนที่โดนแฮก บ้าง
ไฟล์ไหนเข้าข่ายเป็นไวรัส เป็น Malware หรือเป็น Backdoor
ที่สำคัญ มันจะระบุชื่อไฟล์ และ ตำแหน่งให้ เราสามารถรู้ได้อย่างชัดเจน
เราก็ไม่จำเป็นต้องไปอ่าน ทำความเข้าใจมากก็ได้ เพราะอ่านไปก็ ไม่รู้เรื่องอยู่แล้ว
แค่ ให้สังเกต ว่า plugins ไหนมีปัญหา และ theme ไหนมีปัญหา
ส่วนหากตรวจพบ ไฟล์ที่อยู่ใน Folder : wp-content/uploads/ ก็จะแจ้งเตือนเช่นเดียวกัน
(เราอาจจะตกหล่นไป จากการลบในช่วงที่ 1) … เมื่อมา SCAN เว็บ อย่างละเอียดแล้ว
ก็ให้เราเข้า Control Panel ตามไปลบไฟล์ในตำแหน่งที่โดนระบุไว้ อีกครั้ง
เมื่อเลื่อนลงมาเรื่อยๆ จดหมด การแจ้งเตือน รูปกากบาทสีแดง แล้ว
มันจะโชว์ รูปเครื่องหมายตกใจสีเหลือง ซึ่งตรงนี้ อาจจะซ้ำกับด้านบน
สำหรับผมจะ โฟกัสที่เฉพาะ การแจ้งเตือนสีแดง หรือปัญหาระดับ Critical
สำหรับของผม ในการโดนแฮกครั้งนี้ Wordfence ได้ตรวจ
พบปัญหาทั้งหมดรวม 44 ไฟล์ ซึ่งพบใน 11 ปลั๊กอิน และ 1 ธีม
กับอยู่ใน Folder Upload และ Language อีก 3 ไฟล์
โดยผมจด Note – Plugins ที่โดนฝั่งไฟล์แฮก เอาไว้ คือ
1. easy-facebook-likebox
2. LayerSlider
3. Revslider
4. wpml-translation-management
5. designthemes-core-features
6. yith-woocommerce-zoom-magnifier
7. sitepress-multilingual-cms
8. woocommerce-multingual
9. wp-user-avatar
10. jetpack
11. contact-form-7
ในส่วนของที่ผมพบใน Upload กับ Language ผมไปเข้าลบออกธรรมดาๆ
แต่ในส่วนของ Plugin และ Theme นั้น จริงๆถ้าคนที่พอมองออก
หรือ เข้าไปดูโค้ดเป็นก็อาจจะเข้าไปแก้ไข ลบเฉพาะ Script ที่แฮกเกอร์ฝั่งไว้ได้
แต่สำหรับคนที่ไม่รู้ หรือ กลัวว่าลบผิดแล้วจะเกิด Error
เนื่องจากเราไม่ใช่ผู้พัฒนาธีมหรือปลั๊กอินนั้นๆ ดังนั้นทางที่ดีที่สุด (และที่ผมใช้) คือ
ให้ลบ Plugin นั้นออกแล้ว โหลดตัวใหม่ล่าสุดมาลงแทน
ซึ่งผมก็ได้เข้าไป ลบ Plugin เหล่านี้ ออกทั้งหมด
และได้ ไปทำการโหลดตัวใหม่ล่าสุด มาลงแทน
จากนั้น ผมก็ไปโหลด Theme เว่อร์ชั่นล่าสุดมาลงใหม่ เช่นเดียวกัน
อันนี้เป็น ข้อดีของการ สั่งซื้อธีมที่ถูกลิขสิทธิ์ จากเว็บที่น่าเชื่อถือ
เนื่องจาก เราสามารถ Download ตัวเว่อร์ชั่นอัพเดทล่าสุด มาใช้ได้
เช่นที่ผมใช้นี้ จะเป็นตัวที่ สั่งซื้อจาก ► Themeforest.net ซึ่งเป็นแหล่ง
รวมธีม WordPress แบบ Premium เป็นตลาดซื้อ-ขายธีม ที่ใหญ่ที่สุดในโลก
โดยปกติแล้ว พวกธีมพรีเมี่ยม จะมี Plugin ต่างๆที่จำเป็น รวมถึงตัวที่แถมมาให้ใช้
อยู่แล้ว โดยเราสามารถ Install Plugins เหล่านั้นได้เลย (หรือบางที มันจะเป็นไฟล์แยกมาให้)
เมื่อทำการ อัพเดท Theme และ Plugins ที่ตรวจพบปัญหา เรียบร้อยหมดแล้ว
ผมก็มา ทำการ Scan อีกครั้ง ด้วย Wordfence
เมื่อสังเกตดู คราวนี้ มัน แจ้งว่า
“Scan complete. Congratulations, no problems found.”
เอาภาพเก่ามาให้ดูอีกครั้ง ตอน Scan ครั้งแรก มันจะขึ้นว่า
“Scan complete. You have 66 new issues to fix. See below.”
เมื่อเทียบ วัน-เวลาดูแล้ว ผมใช้ระยะเวลาประมาณ 3 ชั่วโมงครึ่ง ในการแก้ไข
(จริงๆมันเร็วกว่านี้ แต่ที่ช้าเพราะ ต้องมา Capture ภาพทีละภาพ มาเล่าให้พวกคุณได้อ่านกัน)
เมื่อเลื่อนไปดูด้านล่างสุด New Issues ก็ไม่มีแล้ว ไม่พบปัญหาแล้ว เว็บสะอาดแล้ว เย้ !!!!
“Congratulation! No security problems were detected by Wordfence.”
ช่วงสุดท้าย : แจ้งต่อ Google ว่า แก้ไขเว็บโดนแฮก เรียบร้อยแล้ว
เมื่อเราทำการแก้ไขอะไรเสร็จเรียบร้อยแล้ว ก็เข้าไปที่ Google Webmaster Tool
แล้วไป Request Review แจ้งต่อ Google ว่า เว็บเราแก้ไขการโดนแฮกแล้วนะ
เพื่อให้ Google ตรวจสอบ และทำการปลดล็อก การแจ้งเตือน เว็บของเรา
(ให้ ติกถูกตรง I have fixed these issues แล้วกดปุ่ม REQUEST A REVIEW)
จากนั้นก็ พิมพ์ข้อความไปเล็กน้อย
(ใครจะพิมพ์เยอะ ระบายความในใจ ก็เชิญ)
โดย Google จะแจ้งเรา ว่าให้ รอประมาณ 72 ชั่วโมง
แต่ในความเป็นจริง มันจะเร็วกว่านั้น ประมาณ ไม่เกิน 12 ชั่วโมง ก็น่าจะได้รับการตอบกลับมา
สำหรับผม รอประมาณ 6 ชั่วโมงได้ครับ ก็ได้รับอีเมล์ ว่า รีวิวผ่านแล้ว
เมื่อทำการ Log in เข้าไปดูใน Google Webmaster Tool ก็พบว่า มันตรวจไม่พบปัญหาแล้ว
เมื่อลองมาเช็คดูที่ SERPs หน้าของ Google ค้นหา
เราก็ไม่พบ ข้อความแจ้งเตือนว่า เว็บเราเสี่ยงแล้ว ^_^
เป็นอันจบกระบวนการ แก้เว็บ WordPress โดนแฮก ด้วยตัวเอง
หากมีข้อผิดพลาดประการใด หรือ มีจุดที่พูดไม่ถูก บอกไม่ครบ หรือใช้ภาษาผิด ศัพท์เทคนิคไม่ตรง … ผมต้องขออภัยไว้ ณ ที่นี้ด้วยนะครับ เนื่องจาก ผมไม่รู้เรื่องพวก Hack อะไรเลย แม้แต่เรื่องโค้ดหรือเขียนโปรแกรมอะไรก็ไม่เป็น … วิธีข้างต้น คืออาศัยใช้หลักการว่า โดนเยอะ และ พยายามมั่วเอานะครับ น่าจะโชคดี ด้วยครับ ที่แก้ได้ และก็ไม่รู้จะโดนแฮกอีกหรือเปล่า
อย่างไรก็ตาม ผมหวังว่า การนำเสนอครั้งนี้ จะช่วยเป็นแนวทางให้ เพื่อนๆพี่ๆน้องๆที่ ทำเว็บ ด้วย WordPress สามารถแก้ไข เว็บไซต์ของท่านเองได้ กรณีโดนแฮก นะครับ เพราะช่วงนี้กระแสเว็บ WordPress โดนแฮก กำลังมาแรง กลุ่มคนที่ไม่ค่อยชอบใช้ WP ก็อาจจะอ้างว่า มันมี ช่องโหว่เยอะ มีรูรั่วเยอะ โดนแฮกง่าย …
ซึ่งมันอาจจะจริง หรือ ไม่จริง ผมเองก็ไม่รู้ เพราะเราไม่ใช่ Developer ไม่ใช่ Programmer อีกทั้งเว็บ Platform อื่นๆผมก็ไม่เคยเล่นเสียด้วย จากจุดนี้เอง … มันทำให้ผมต้องดิ้นรน แม้มันจะมีปัญหา ก็ต้องหาทางแก้ไข หาทางป้องกัน และหาวิธีอยู่ร่วมกับมันให้ได้ เพราะผมได้เลือกแล้ว !!
ผม เลือก WordPress
(ก็ WP มันทำง่ายอ่ะ อย่างอื่นมันยาก … กูทำไม่เป็น ฮือฮืออออๆๆ)
JoJho
คนทำเว็บนอกคอก
——————————————-
สำหรับท่านที่สนใจในด้าน Security ด้าน Hack แฮกๆ อะไรพวกนี้
ผมขออนุญาตแนะนำ แหล่งเรียนรู้ (ของไทย) ที่ผมพอรู้จัก ให้ท่านไปติดตามกันเองนะครับ
1. ตาเล็ก วินโด้เก้าแปดเอสอี
2. MaYaSeVeN
3. 2600 thailand
… สวัสดี …