Case Study

เคสจริง: ขโมยบัตรเครดิต WooCommerce ผ่านปลั๊กอินปลอม แก้จบใน 1 วัน

เคสจริง: ขโมยบัตรเครดิต WooCommerce ผ่านปลั๊กอินปลอม แก้จบใน 1 วัน

สรุปคำตอบ

ร้านค้าออนไลน์บน WooCommerce ถูกฝังฟอร์มบัตรปลอมของมัลแวร์ตระกูล Smilodon (Magecart) ผ่านปลั๊กอินปลอม 2 ตัวที่ซ่อนตัวจากหน้า Plugins พร้อมดักรหัสผ่านตอนล็อกอิน การซ่อนฟอร์มด้วย CSS ไม่ได้หยุดโค้ด เราพบ EtherHiding ใน Code Snippets, Web Shell 15 ไฟล์ และสแปมคาสิโน 380 โพสต์ด้วย ทั้งหมดล้างและอัปเดตเสร็จในวันเดียวหลังเจ้าของร้านอนุมัติทีละขั้น

เคสนี้เป็นร้านค้าออนไลน์แบรนด์กระเป๋าต่างประเทศในไทยที่ใช้ WooCommerce ทีมร้านเห็นฟอร์มกรอกบัตรชื่อ “Credit/Debit Card Secure Payment” โผล่ผิดที่ในหน้าชำระเงิน ฟอร์มนี้คือฟอร์มปลอมของมัลแวร์ขโมยบัตรเครดิตตระกูล Magecart ฝังมากับปลั๊กอินปลอม 2 ตัวที่ซ่อนตัวจากหน้ารายการปลั๊กอิน นอกจากนี้ยังพบโค้ด EtherHiding ใน Code Snippets, Web Shell 15 ไฟล์ และโพสต์สแปมคาสิโน 380 โพสต์ ทั้งหมดถูกล้างภายในวันเดียวคือ 29 ตุลาคม 2026 หลังเจ้าของร้านอนุมัติทีละขั้น

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

สรุปสั้น: ใช้ CSS ซ่อนฟอร์มบัตรปลอมแล้ว แต่โค้ดยังทำงานต่อ ส่วนเปลี่ยนรหัสผ่านอย่างเดียวก็ไม่ปิด Web Shell ที่ผู้โจมตีวางไว้ ร้านนี้ติดมัลแวร์ 5 กลุ่มพร้อมกัน คือปลั๊กอินปลอมขโมยบัตรและรหัสผ่าน (ตระกูล Smilodon) โค้ด EtherHiding ในฐานข้อมูล Web Shell 15 ไฟล์ โพสต์สแปมคาสิโน 380 โพสต์ และปลั๊กอินมีช่องโหว่ 20 ตัว ช่วงที่ข้อมูลบัตรและรหัสผ่านอาจหลุดคือราว 11 สิงหาคม ถึง 29 ตุลาคม 2026 ร้านจึงต้องแจ้งผู้ให้บริการรับชำระเงินด้วย

อาการที่เจ้าของร้านเห็น vs สิ่งที่เกิดขึ้นจริง

ร้านเห็นอาการ 2 อย่าง อย่างแรกคือฟอร์มบัตรแปลก ๆ บนหน้า Checkout อย่างที่สองคือบัญชีผู้ดูแลของเอเจนซีที่ดูแลเว็บถูกเปลี่ยนรหัสผ่าน อีเมล และสิทธิ์ ทีมร้านกู้บัญชีคืนได้แล้วก็ใช้ CSS ซ่อนฟอร์มนั้นไว้ ดูภายนอกเหมือนแก้จบแล้ว แต่เมื่อตรวจจริงกลับเป็นอีกภาพหนึ่ง

อาการที่เจ้าของร้านเห็น สิ่งที่เกิดขึ้นจริง
ฟอร์ม “Credit/Debit Card Secure Payment” โผล่ผิดที่ในหน้าชำระเงิน เป็น iframe ฟอร์มบัตรปลอมที่ปลั๊กอินปลอมฉีดเข้ามา ข้อมูลที่ลูกค้ากรอกถูกส่งไปยังโดเมนของผู้โจมตี 3 โดเมน
ซ่อนฟอร์มด้วย CSS แล้ว ฟอร์มหายไปจากหน้าจอ โค้ดยังโหลดและทำงานทุกครั้งที่เปิดหน้า ส่วนที่ดักรหัสผ่านตอนล็อกอินไม่เกี่ยวกับหน้าจอเลย จึงไม่ได้รับผลจาก CSS
บัญชีแอดมินของเอเจนซีถูกเปลี่ยนรหัส อีเมล และสิทธิ์ ผู้โจมตียึดบัญชีนี้ไปใช้โพสต์สแปมคาสิโน 380 โพสต์ ทั้งยังมี Web Shell 15 ไฟล์ไว้กลับเข้ามาได้โดยไม่ต้องใช้รหัสผ่าน
หน้ารายการปลั๊กอินดูปกติ ไม่มีอะไรแปลก มีปลั๊กอินปลอม 2 ตัวที่สั่งให้ตัวเองหายไปจากหน้ารายการปลั๊กอิน
Google ไม่ขึ้นคำเตือนเว็บอันตราย Safe Browsing ยังไม่ติดรายชื่อ แต่ไม่ได้แปลว่าเว็บสะอาด

เราตรวจสอบอย่างไร

ก่อนแตะเว็บ เราขอความยินยอมจากเจ้าของร้านให้ติดตั้งเครื่องมือชั่วคราว และถอดออกทั้งหมดหลังงานเสร็จ ขั้นตอนตรวจมีดังนี้

  1. ตรวจจากภายนอก เช็กสถานะ Google Safe Browsing (ไม่ติดรายชื่อ) และเทียบหน้าเว็บที่ผู้เยี่ยมชมทั่วไปเห็นกับที่บอตเห็น ไม่พบการแสดงเนื้อหาต่างกัน (Cloaking)
  2. ตรวจหลังบ้าน wp-admin ดูผู้ใช้ ปลั๊กอิน โพสต์ และการตั้งค่าที่ถูกเปลี่ยน
  3. สแกนไฟล์และฐานข้อมูลทั้งหมด ด้วยปลั๊กอิน WP Doctor Scanner ของเราเอง รวม 26,969 ไฟล์ ในจำนวนนี้ 23,036 ไฟล์ตรงกับค่า checksum ของ wordpress.org จึงตัดออกได้เลย ที่เหลือคือไฟล์ที่ต้องดูต่อ
  4. เปิดอ่านไฟล์ที่น่าสงสัยทีละไฟล์ ไม่ตัดสินจากชื่อหรือผลสแกนอย่างเดียว
  5. ถอดรหัส payload แบบออฟไลน์ นำโค้ดที่เข้ารหัสออกมาถอดบนเครื่องของเรา ไม่รันบนเว็บของร้านเลย

สิ่งที่พบ: มัลแวร์ 5 กลุ่มในเว็บเดียว

1. ปลั๊กอินปลอม 2 ตัว ขโมยบัตรและรหัสผ่าน (ตระกูล Smilodon)

ปลั๊กอินทั้งสองตัวใช้ชื่อผู้พัฒนาที่ดูเหมือนสุ่มขึ้นมา ตัวแรกติดตั้งวันที่ 11 สิงหาคม ตัวที่สองวันที่ 18 ตุลาคม 2026 ทั้งคู่ใช้ฟิลเตอร์ all_plugins ซ่อนตัวเอง ฟิลเตอร์นี้มีไว้กรองรายการปลั๊กอินที่จะแสดงในตารางหน้า Plugins (WordPress Developer Resources) แอดมินจึงไม่เห็นปลั๊กอินเหล่านี้ในหลังบ้านเลย

ตัวปลั๊กอินแทบไม่มีโค้ดอันตรายให้เห็น มันอ่านข้อมูลที่เข้ารหัสไว้ในไฟล์นามสกุล .png และ .gif แล้วถอดรหัสและรันด้วย eval เมื่อเราถอดรหัสออกมา payload ทำ 3 อย่าง

  • ฉีด iframe ฟอร์มบัตรปลอมเข้าหน้า Checkout ของ WooCommerce ผ่าน hook woocommerce_before_checkout_form และ wp_footer
  • ดักชื่อผู้ใช้และรหัสผ่านตอนล็อกอินผ่าน hook wp_login
  • ส่งข้อมูลทั้งหมดไปยังโดเมนของผู้โจมตี 3 โดเมน

สคริปต์ฟอร์มปลอมเก็บอยู่ในไฟล์ชื่อ “changelog.txt” แบบ base64 ที่กลับลำดับตัวอักษร และไฟล์ภาพไฟล์หนึ่งเป็น Web Shell แบบ WSO

รูปแบบนี้ตรงกับมัลแวร์ตระกูล Smilodon Sucuri รายงานตั้งแต่ปี 2022 ว่าชื่อ Smilodon ใช้โดยกลุ่มที่เกี่ยวข้องกับ Magecart Group 12 ตั้งแต่ธันวาคม 2021 แทบทุกครั้งที่พบมัลแวร์นี้ มันถูกฝังอยู่ในไฟล์ปลั๊กอิน WordPress ปลอม และขโมยเลขบัตร วันหมดอายุ รหัสความปลอดภัย และที่อยู่สำหรับออกบิล (Sucuri, 2022) ปลายปี 2025 Wordfence รายงานแคมเปญที่ใกล้เคียงกับเคสนี้มาก ปลั๊กอินปลอมซ่อนตัวจากรายการปลั๊กอิน เก็บสคริปต์ขโมยบัตรในไฟล์ที่ปลอม header เป็น PNG เข้ารหัสด้วย base64 แบบกลับลำดับ มีคำว่า SMILODON ใน URL ของเซิร์ฟเวอร์ควบคุม และดักชื่อผู้ใช้กับรหัสผ่านจากฟอร์มล็อกอินด้วย (SecurityOnline, 2025) อ่านพื้นฐานของการโจมตีแบบนี้ได้ใน Magecart คืออะไร

2. Code Snippets 2 รายการ ปลอมเป็น Google Tag Manager (EtherHiding)

ในปลั๊กอิน Code Snippets มี snippet ไม่มีชื่อ 2 รายการ หน้าตาเหมือนโค้ด Google Tag Manager แต่ที่จริงโหลดไลบรารี ethers.js แล้วไปอ่านปลายทางที่เข้ารหัสไว้จาก smart contract บน Ethereum testnet เทคนิคนี้ชื่อ EtherHiding Google Threat Intelligence Group อธิบายว่าเป็นการฝังโค้ดอันตรายไว้ใน smart contract บนบล็อกเชนสาธารณะ เช่น BNB Smart Chain หรือ Ethereum สคริปต์ตัวโหลดอ่านค่าด้วยคำสั่งแบบอ่านอย่างเดียว ซึ่งไม่สร้างธุรกรรมและไม่เสียค่าธรรมเนียม ทั้งยังไม่มีเซิร์ฟเวอร์กลางให้หน่วยงานสั่งปิด (Google Threat Intelligence Group, 2025) อีกรายงานของ GTIG ระบุว่ากลุ่ม UNC5142 ใช้ EtherHiding กับเว็บ WordPress ที่มีช่องโหว่แบบไม่เลือกเป้าหมาย และบางครั้งฉีดโค้ดลงฐานข้อมูล WordPress โดยตรง ณ มิถุนายน 2025 พบหน้าเว็บที่มีโค้ดแบบนี้ราว 14,000 หน้า (Google Threat Intelligence Group, 2025)

การปลอมตัวเป็น Google Tag Manager ไม่ใช่เรื่องใหม่ Sansec รายงานในปี 2026 ว่าผู้โจมตีวางสคริปต์ Google Tag Manager ปลอมไว้ข้างแท็กการตลาดจริงของร้าน WooCommerce เพื่อโหลดสคริปต์ขโมยบัตร (Sansec, 2026) ตัวอย่างด้านล่างตัด payload ออกแล้ว และเปลี่ยนที่อยู่ทั้งหมดเป็นค่าสมมติ เพื่อให้เห็นแค่รูปแบบที่ควรสังเกต

<!-- Google Tag Manager -->   <!-- ชื่อหลอก ไม่มีรหัส GTM-XXXX จริง -->
<script>
(function () {
  var s = document.createElement('script');
  s.src = 'https://cdn.example/ethers.min.js';      // โหลด ethers.js ซึ่งแท็ก GTM จริงไม่ใช้
  s.onload = function () {
    var rpc = new ethers.JsonRpcProvider('https://rpc.testnet.example');
    var c = new ethers.Contract('0x0000…0000', [ /* … ตัดออก … */ ], rpc);
    c.get().then(function (data) {
      /* … ตัดออก: ถอดรหัสปลายทางแล้วโหลดสคริปต์ต่อ … */
    });
  };
  document.head.appendChild(s);
})();
</script>
<!-- End Google Tag Manager -->

จุดสำคัญคือ Code Snippets เก็บ snippet ไว้ในตารางฐานข้อมูล (ชื่อตารางคือ prefix ของเว็บตามด้วย snippets เช่น wp_snippets) ไม่ได้เก็บเป็นไฟล์ (Code Snippets, WordPress.org) สแกนเนอร์ที่ดูแค่ไฟล์จึงมองไม่เห็นโค้ดนี้ ดูเพิ่มเติมเรื่องสคริปต์แปลกที่ถูกฉีดเข้าหน้าเว็บใน เว็บโดนฝัง JavaScript และ iframe

3. Web Shell 15 ไฟล์ ตั้งชื่อเลียนแบบเครื่องมือระบบ

Web Shell คือสคริปต์ที่ผู้โจมตีวางไว้บนเว็บเซิร์ฟเวอร์เพื่อสั่งงานเซิร์ฟเวอร์ผ่านเว็บ และใช้เป็นช่องทางกลับเข้ามาได้เรื่อย ๆ แม้ช่องทางอื่นจะถูกปิดไปแล้ว (MITRE ATT&CK) ในเคสนี้มี 15 ไฟล์ ใช้ชื่อหน้าจอที่ดูน่าเชื่อถือ เช่น “WordPress Maintenance Module” และ “WP Database Console” ตำแหน่งที่พบมีดังนี้

  • 1 ไฟล์ที่ root ของเว็บ ตั้งชื่อเลียนไฟล์ core ของ WordPress คือ wp-mails.php ขณะที่ไฟล์จริงชื่อ wp-mail.php
  • 1 ไฟล์ PHP ใน uploads ที่ปลอมเป็นไฟล์ .ico แบบซ่อน
  • 13 ไฟล์ในโฟลเดอร์ย่อยของ uploads

นี่คือเหตุที่การกู้บัญชีแอดมินคืนอย่างเดียวไม่พอ อ่านกลไกเพิ่มเติมได้ใน Web Shell คืออะไร

4. โพสต์สแปมคาสิโน 380 โพสต์ และไฟล์ยืนยัน Search Console ที่ไม่รู้ที่มา

ผู้โจมตีใช้บัญชีแอดมินที่ยึดไปโพสต์บทความคาสิโน 380 โพสต์ ในภาษายุโรปราว 10 ภาษาและภาษาญี่ปุ่น วันที่ในโพสต์ถูกย้อนให้ดูเหมือนเขียนตั้งแต่ปี 2025 ทั้งที่สร้างจริงตั้งแต่สิงหาคม 2026 เป็นต้นมา นอกจากนี้ยังพบไฟล์ยืนยันความเป็นเจ้าของ Google Search Console 3 ไฟล์ที่ร้านไม่รู้จัก Google ระบุว่าการลบเจ้าของออกจาก Search Console ต้องลบ token ยืนยันของคนนั้นออกจากเว็บด้วย ถ้าไม่ลบ คนนั้นยืนยันกลับมาใหม่ได้ (Search Console Help) เรื่องสแปมพนันบนเว็บที่ถูกแฮกอ่านต่อได้ใน เว็บโดนฝังลิงก์พนัน

5. ปลั๊กอินที่มีช่องโหว่สาธารณะ 20 ตัว

มีปลั๊กอิน 20 ตัวที่มีช่องโหว่ซึ่งเปิดเผยต่อสาธารณะแล้ว ทั้ง WooCommerce, Elementor, ปลั๊กอินย้ายเว็บและสำรองข้อมูล, ปลั๊กอินแคช, ปลั๊กอินบีบอัดรูป และอื่น ๆ อีก 1 ตัวถูกปิดบน wordpress.org ไปแล้ว ส่วน PHP บนเซิร์ฟเวอร์เป็นเวอร์ชัน 8.3.36 ที่อัปเดตแพตช์แล้ว ช่องโหว่จึงอยู่ที่ฝั่งปลั๊กอิน ไม่ใช่ตัวเซิร์ฟเวอร์

ไฟล์ที่ดูน่าสงสัยแต่ไม่ใช่มัลแวร์

เราเปิดอ่านทุกไฟล์ก่อนตัดสิน และพบหลายไฟล์ที่สแกนเนอร์ทั่วไปอาจแจ้งเตือนผิด ได้แก่ ไฟล์ test.php ของ WP-Optimize, ไฟล์ตั้งค่าของ AIOS, ไฟล์ log ของ Mailchimp ที่ขึ้นต้นด้วย <?php exit; เพื่อกันไม่ให้ใครเปิดอ่านจากเว็บ และไฟล์ index ของ WPForms ทั้งหมดนี้เป็นไฟล์ปกติ เราไม่ลบ

ไทม์ไลน์ของเหตุการณ์

วันที่ (2026) เหตุการณ์
11 สิงหาคม ติดตั้งปลั๊กอินปลอมตัวที่ 1 และเริ่มมีโพสต์สแปมคาสิโน
6 กันยายน และ 29 กันยายน เพิ่ม snippet EtherHiding ใน Code Snippets
18 ตุลาคม ติดตั้งปลั๊กอินปลอมตัวที่ 2
27 ตุลาคม แก้ไขไฟล์สคริปต์ฟอร์มปลอมครั้งล่าสุด
28 ตุลาคม ทีมร้านใช้ CSS ซ่อน iframe ฟอร์มบัตร
29 ตุลาคม ตรวจสอบ เจ้าของร้านอนุมัติแผนแก้ไขเวลา 13:11 น. ล้างมัลแวร์และอัปเดตปลั๊กอินเสร็จภายในวันเดียวกัน

เราแก้อย่างไร

ทุกขั้นตอนเจ้าของร้านอนุมัติผ่านแบบฟอร์มในหน้ารายงานของเราก่อน เราไม่แตะอะไรที่ยังไม่ได้รับอนุมัติ

  1. ลบปลั๊กอินปลอม 2 ตัว และ snippet ปลอม 2 รายการ
  2. กักและลบ Web Shell 15 ไฟล์ โดยเก็บสำเนาไว้เป็นหลักฐาน
  3. สร้างค่า salt และ key ใหม่ทั้ง 8 ค่าใน wp-config.php WordPress ระบุว่าเปลี่ยนค่าเหล่านี้เมื่อไรก็ได้เพื่อให้คุกกี้ที่มีอยู่ทั้งหมดใช้ไม่ได้ (WordPress Developer Resources) ทุก session ถูกตัดออก รวมถึง session ของผู้โจมตีด้วย
  4. ย้ายโพสต์สแปม 380 โพสต์ลงถังขยะ
  5. ลบ cron job ที่ไม่มีเจ้าของ 15 รายการ
  6. สแกนใหม่ 27,480 ไฟล์ ผลคือสะอาด
  7. สำรองข้อมูลด้วย UpdraftPlus (ฐานข้อมูล ปลั๊กอิน และธีม) จากนั้นอัปเดตปลั๊กอินทีละตัว ทุกครั้งที่อัปเดตจะเช็กหน้าแรก หน้าร้าน หน้าสินค้า ตะกร้า และหน้าชำระเงินก่อนไปตัวถัดไป

ขั้นตอนหลังล้างมัลแวร์ที่เจ้าของเว็บควรทำต่อมีรวมไว้ใน หลังล้างมัลแวร์ WordPress ต้องทำอะไรต่อ

คำแนะนำที่เราให้ร้านหลังล้างเสร็จมีดังนี้

  • เปลี่ยนรหัสผ่านทุกบัญชี เพราะมัลแวร์ดักรหัสผ่านตอนล็อกอินมาตั้งแต่ราว 11 สิงหาคม
  • เปิด การยืนยันตัวตนสองขั้นตอน (2FA) ให้ทุกบัญชีที่เข้าหลังบ้านได้
  • แจ้งผู้ให้บริการรับชำระเงินหรือธนาคารเรื่องช่วงที่อาจถูกขโมยข้อมูลบัตร คือราว 11 สิงหาคม ถึง 29 ตุลาคม 2026
  • ตรวจรายชื่อเจ้าของใน Search Console และลบคนที่ไม่รู้จัก
  • อัปเดตปลั๊กอินสม่ำเสมอ และตั้งสำรองข้อมูลอัตโนมัติไปเก็บนอกเซิร์ฟเวอร์

เรื่องการแจ้งธนาคาร PCI Security Standards Council เรียกการโจมตีแบบนี้ว่า e-skimming และมีข้อกำหนด 6.4.3 กับ 11.6.1 ใน PCI DSS ให้สคริปต์บนหน้าชำระเงินต้องได้รับอนุญาต ตรวจความถูกต้องได้ และมีการเฝ้าดูการแก้ไข (PCI SSC, 2025) ร้านจึงควรให้ผู้ให้บริการรับชำระเงินช่วยประเมินผลกระทบ ไม่ควรเก็บเรื่องไว้เอง

บทเรียนจากเคสนี้

ซ่อน iframe ด้วย CSS ไม่ใช่การแก้

CSS เปลี่ยนได้แค่หน้าตา สคริปต์ยังโหลดอยู่ทุกครั้งที่ลูกค้าเปิดหน้าชำระเงิน ส่วนดักรหัสผ่านทำงานฝั่งเซิร์ฟเวอร์ผ่าน wp_login และไม่เกี่ยวกับหน้าจอเลย ถ้าเจอฟอร์มบัตรที่ไม่ได้ติดตั้งเอง ให้ถือว่าเว็บถูกแฮก แล้วหาว่าโค้ดมาจากไหน

เปลี่ยนรหัสผ่านอย่างเดียวไม่หยุด Web Shell

ทีมร้านกู้บัญชีแอดมินคืนได้ แต่ผู้โจมตียังมี Web Shell 15 ไฟล์ที่เข้าได้โดยไม่ต้องล็อกอิน และ session เก่าที่ยังไม่หมดอายุ ต้องลบช่องทางลับให้หมดและเปลี่ยน salt ด้วย ไม่เช่นนั้นเว็บจะติดซ้ำ ดู ทำไมล้างแล้วเว็บติดมัลแวร์ซ้ำ

สแกนแค่ไฟล์ไม่เจอโค้ดที่อยู่ในฐานข้อมูล

snippet EtherHiding ทั้ง 2 รายการอยู่ในตารางของ Code Snippets ไม่มีไฟล์ให้สแกนเลย การตรวจจึงต้องรวมฐานข้อมูลด้วย ทั้งตาราง snippet, options และเนื้อหาโพสต์

ปลั๊กอินที่ไม่มีบน wordpress.org ต้องดูให้ละเอียด

ไฟล์ของปลั๊กอินจาก wordpress.org เทียบ checksum ได้ เราจึงตัดไฟล์ปกติออกได้กว่า 23,000 ไฟล์ในขั้นเดียว แต่ปลั๊กอินที่ไม่มีบน wordpress.org ไม่มีค่าให้เทียบ และเป็นที่ซ่อนของปลั๊กอินปลอมทั้ง 2 ตัวในเคสนี้ ปลั๊กอินที่ไม่รู้ที่มา ใช้ชื่อผู้พัฒนาแปลก ๆ หรือไม่โผล่ในหน้ารายการปลั๊กอินแต่มีโฟลเดอร์อยู่ ต้องเปิดอ่านโค้ดทุกครั้ง

เจ้าของร้านป้องกันตัวเองอย่างไร

  • อัปเดต WordPress ปลั๊กอิน และธีมสม่ำเสมอ ช่องโหว่ที่เปิดเผยแล้วเป็นทางเข้าหลักของการโจมตีแบบนี้ อ่านเหตุผลใน ทำไมต้องอัปเดตปลั๊กอินและธีม
  • เปิด 2FA ให้ทุกบัญชีที่เข้าหลังบ้านได้ รวมถึงบัญชีของเอเจนซีหรือฟรีแลนซ์
  • เปิดหน้าชำระเงินด้วยตัวเองเป็นประจำ ถ้าเห็นฟอร์มบัตรหรือสคริปต์ที่ไม่ได้ติดตั้งไว้ อย่าซ่อน ให้ตรวจทันที
  • ตั้งสำรองข้อมูลอัตโนมัติไปเก็บนอกเซิร์ฟเวอร์ และลองกู้คืนดูบ้าง
  • ถ้าสงสัยว่าเว็บถูกแฮกแล้ว ให้ผู้เชี่ยวชาญตรวจทั้งไฟล์และฐานข้อมูล ดูบริการ ล้างไวรัส WordPress ถ้าอยากให้มีคนคอยอัปเดตและเฝ้าระวังให้ทุกเดือน ดู บริการดูแลเว็บ WordPress รายเดือน

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

รู้ได้อย่างไรว่าร้าน WooCommerce โดนขโมยบัตรเครดิต?

สัญญาณที่เห็นได้บ่อยคือฟอร์มกรอกบัตรที่ไม่ได้ติดตั้งเอง ช่องบัตรซ้ำสองชุด หรือลูกค้าแจ้งว่าบัตรถูกใช้ผิดปกติหลังซื้อของ แต่มัลแวร์หลายตัวซ่อนตัวจากแอดมินได้ ถ้าหน้าตาเว็บปกติก็ยังไม่แปลว่าปลอดภัย ต้องตรวจไฟล์และฐานข้อมูลจริง

ใช้ CSS ซ่อนฟอร์มบัตรปลอมไปแล้ว ปลอดภัยหรือยัง?

ยังไม่ปลอดภัย CSS ซ่อนแค่หน้าตา สคริปต์ยังโหลดและส่งข้อมูลต่อได้ และในเคสนี้ส่วนที่ดักรหัสผ่านตอนล็อกอินทำงานฝั่งเซิร์ฟเวอร์ ไม่เกี่ยวกับหน้าจอเลย ต้องลบต้นทางของโค้ดออก

ทำไมไม่เห็นปลั๊กอินปลอมในหน้า Plugins?

ปลั๊กอินปลอมใช้ฟิลเตอร์ all_plugins ตัดชื่อตัวเองออกจากรายการที่ WordPress แสดงในหลังบ้าน แต่โฟลเดอร์ของมันยังอยู่ใน wp-content/plugins จึงต้องตรวจจากไฟล์บนเซิร์ฟเวอร์ ไม่ใช่ดูจากหน้า Plugins อย่างเดียว

EtherHiding คืออะไร อันตรายกับร้านค้าออนไลน์อย่างไร?

EtherHiding คือการซ่อนโค้ดอันตรายหรือปลายทางของมันไว้ใน smart contract บนบล็อกเชน แล้วให้สคริปต์บนเว็บที่ถูกแฮกไปอ่านมาใช้ ผู้โจมตีเปลี่ยนปลายทางได้โดยไม่ต้องแก้เว็บอีก และไม่มีเซิร์ฟเวอร์กลางให้สั่งปิด ในเคสนี้โค้ดอยู่ใน Code Snippets และปลอมตัวเป็น Google Tag Manager

หลังล้างมัลแวร์ ต้องแจ้งธนาคารหรือผู้ให้บริการรับชำระเงินไหม?

ควรแจ้ง โดยบอกช่วงเวลาที่หน้าชำระเงินอาจถูกดักข้อมูล เพื่อให้ผู้ให้บริการประเมินผลกระทบและเฝ้าระวังบัตรที่อาจหลุด ในเคสนี้คือราว 11 สิงหาคม ถึง 29 ตุลาคม 2026

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

  1. Martin, B. (2022). Smilodon Credit Card Skimming Malware Shifts to WordPress. Sucuri Blog. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://blog.sucuri.net/2022/06/smilodon-credit-card-skimming-malware-shifts-to-wordpress.html
  2. Do Son. (2025). Magecart SMILODON Skimmer Infiltrates WooCommerce Via Rogue Plugin Hiding Payload in Fake PNG Image. SecurityOnline. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://securityonline.info/magecart-smilodon-skimmer-infiltrates-woocommerce-via-rogue-plugin-hiding-payload-in-fake-png-image/
  3. WordPress.org. (ม.ป.ป.). all_plugins – Hook. WordPress Developer Resources. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://developer.wordpress.org/reference/hooks/all_plugins/
  4. Google Threat Intelligence Group. (2025). DPRK Adopts EtherHiding: Nation-State Malware Hiding on Blockchains. Google Cloud Blog. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://cloud.google.com/blog/topics/threat-intelligence/dprk-adopts-etherhiding
  5. Google Threat Intelligence Group. (2025). New Group on the Block: UNC5142 Leverages EtherHiding to Distribute Malware. Google Cloud Blog. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://cloud.google.com/blog/topics/threat-intelligence/unc5142-etherhiding-distribute-malware
  6. Sansec. (2026). Critical FunnelKit vulnerability threatens 40,000+ WooCommerce checkouts. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://sansec.io/research/funnelkit-woocommerce-vulnerability-exploited
  7. WordPress.org. (ม.ป.ป.). Code Snippets – WordPress plugin. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://wordpress.org/plugins/code-snippets/
  8. MITRE. (ม.ป.ป.). Server Software Component: Web Shell (T1505.003). MITRE ATT&CK. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://attack.mitre.org/techniques/T1505/003/
  9. Google. (ม.ป.ป.). Managing owners, users, and permissions – Search Console Help. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://support.google.com/webmasters/answer/7687615?hl=en
  10. WordPress.org. (ม.ป.ป.). wp-config.php. WordPress Developer Resources. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://developer.wordpress.org/apis/wp-config-php/
  11. PCI Security Standards Council. (2025). New Information Supplement: Payment Page Security and Preventing E-Skimming. สืบค้นเมื่อ 29 ตุลาคม 2026, จาก https://blog.pcisecuritystandards.org/new-information-supplement-payment-page-security-and-preventing-e-skimming

บทความที่เกี่ยวข้อง

Google แจ้ง Unwanted Software หรือ Harmful Downloads คืออะไร เว็บต้องแก้อย่างไร

Search Console แจ้ง Harmful downloads หรือ Uncommon downloads แปลว่าอะไร นโยบาย Unwanted Software ของ Google ว่าไว้อย่างไร และเว็บ WordPress ต้องหาไฟล์หรือลิงก์ต้นเหตุ แก้ และขอ Review อย่างไร

25 นาที 31 Oct 2026
อ่านต่อ
LINE ส่งปัญหา