GlassWorm: มัลแวร์ล่องหนที่ซ่อนตัวใน GitHub 151+ Repos ด้วย Unicode มองไม่เห็น
แคมเปญ GlassWorm ฝังโค้ดอันตรายด้วย invisible Unicode ใน GitHub กว่า 151 repos ใช้ Solana blockchain เป็น C2 server ที่ลบไม่ได้

ลองนึกภาพว่าคุณกำลังรีวิวโค้ดบน GitHub ทุกบรรทัดดูเรียบร้อยสะอาดตา หน้าต่าง Diff ไม่มีสิ่งผิดสังเกต แต่ระหว่างบรรทัดที่ดูเหมือนว่างเปล่านั้น มีเพย์โหลดมัลแวร์ซ่อนอยู่ โดยที่คุณไม่มีทางมองเห็นได้ด้วยตาเปล่า
นี่ไม่ใช่เหตุการณ์สมมติ ในช่วงวันที่ 3 ถึง 9 มีนาคม 2026 ทีมนักวิจัยจาก Aikido Security เปิดเผยว่ามี GitHub Repositories อย่างน้อย 151 แห่งถูกลอบฝังโค้ดอันตรายผ่านอักขระ Unicode ล่องหน (Invisible Unicode Characters) ซึ่งสามารถหลบเลี่ยงการแสดงผลของ Code Editor, Terminal และหน้าตรวจ Diff ของ GitHub ได้อย่างสมบูรณ์
แคมเปญโจมตีนี้มีชื่อว่า GlassWorm ซึ่งนับเป็นภัยคุกคามแบบ Supply Chain Attack ที่สร้างความกังวลอย่างยิ่งในปี 2026
คลังโค้ดที่ได้รับผลกระทบมีทั้งโปรเจกต์ยอดนิยมอย่าง pedronauck/reworm ที่มีผู้กดดาวกว่า 1,460 ครั้ง, anomalyco/opencode-bench ตลอดจนคลังโค้ดตัวอย่างทางการของ Wasmer อย่าง wasmer-examples/hono-wasmer-starter ที่สำคัญ มัลแวร์ตัวนี้ยังใช้ Solana Blockchain ทำหน้าที่เป็น Command and Control Server ซึ่งยากต่อการสั่งปิดหรือระงับการทำงาน
จุดเริ่มต้นจากงานวิจัย Trojan Source ในปี 2021
เทคนิคนี้มีรากฐานมาจากงานวิจัยปี 2021 โดย Nicholas Boucher และ Ross Anderson จาก University of Cambridge ที่นำเสนองานวิจัยชื่อ Trojan Source ชี้ให้เห็นว่าอักขระควบคุมทิศทางข้อความ (Unicode Bidirectional Characters หรือ Bidi) สามารถหลอกกระบวนการประมวลผลของ Compiler ในภาษาหลักแทบทุกภาษา ไม่ว่าจะเป็น C, C++, JavaScript, Python, Rust, Go ตลอดจน SQL
หลักการคือการนำ Bidi Override Characters เช่น U+202A, U+202D, U+202E ที่เดิมทีใช้สำหรับภาษาที่เขียนจากขวาไปซ้าย (เช่น ภาษาอาหรับหรือฮีบรู) มาแทรกในซอร์สโค้ด ทำให้ข้อความที่ตามนุษย์มองเห็นบนหน้าจอกับลำดับไบต์จริงที่ Compiler ตีความ กลายเป็นคนละเรื่องกัน
"A very simple, elegant set of attacks that could make supply chain attacks much, much worse" (Nicholas Weaver จาก UC Berkeley)
งานวิจัยดังกล่าวได้รับการกำหนดรหัสช่องโหว่ CVE-2021-42574 และ CVE-2021-42694 ซึ่งแสดงให้เห็นว่าระบบคอมไพเลอร์ส่วนใหญ่มีจุดเปราะบางต่อการตีความอักขระ Unicode พิเศษเหล่านี้
วิวัฒนาการสู่ GlassWorm ในปี 2025 ถึง 2026
จากทฤษฎีในงานวิจัย เทคนิคดังกล่าวได้ถูกนำมาพัฒนาเป็นเครื่องมือโจมตีจริง โดยทีมนักวิจัยจาก Koi Security ค้นพบ GlassWorm เมื่อวันที่ 20 ตุลาคม 2025 ในฐานะเวิร์มตัวแรกที่แพร่กระจายผ่านส่วนขยายของ VS Code บนมาร์เก็ตเพลส OpenVSX
การระบาดระลอกแรกส่งผลกระทบต่อยอดติดตั้งกว่า 35,800 ครั้ง และต่อมาภายในเดือนมีนาคม 2026 ได้ลุกลามไปยังคลังโค้ดมากกว่า 400 แห่ง ครอบคลุมทั้ง GitHub, npm, VS Code และ OpenVSX โดย Aikido Security ได้จัดระดับความรุนแรงของภัยคุกคามนี้ไว้ที่ระดับสูงสุด 100 เต็ม 100
กลไกการใช้อักขระล่องหน (Invisible Unicode)
GlassWorm ใช้ประโยชน์จากช่วงอักขระ Unicode สองกลุ่มหลัก คือ Variation Selectors (U+FE00 ถึง U+FE0F) จำนวน 16 ตัว และ Variation Selectors Supplement (U+E0100 ถึง U+E01EF) อีก 240 ตัว
อักขระเหล่านี้จะไม่ถูกเรนเดอร์เป็นตัวอักษรใดๆ แต่ปรากฏเป็นช่องว่างหรือความว่างเปล่าที่มองไม่เห็น ทำให้ผ่านการตรวจสอบของ Syntax Highlighting, เครื่องมือ Diff บน Git และการตรวจทานโค้ดด้วยสายตาของนักพัฒนาไปได้อย่างง่ายดาย
Solana Blockchain: Command Server ที่ปิดไม่ได้
ความซับซ้อนอีกขั้นของ GlassWorm คือโครงสร้างพื้นฐานในการควบคุม (Command and Control หรือ C2)
โดยทั่วไปเมื่อตรวจพบ C2 Server ฝ่ายความมั่นคงปลอดภัยสามารถประสานงานเพื่อสั่งปิดโดเมนหรือระงับไอพีแอดเดรสได้ แต่ GlassWorm เลือกใช้ Solana Blockchain เป็นช่องทางหลักในการส่งคำสั่ง
เพย์โหลดที่ถูกถอดรหัสจากอักขระล่องหนจะส่งคำขอไปยังเครือข่าย Solana เพื่ออ่าน Transaction Memos จากกระเป๋าเงิน (Wallet Address) ที่ระบุไว้ ใน Memo นั้นจะมีข้อมูล JSON เข้ารหัส Base64 ซึ่งบรรจุลิงก์สำหรับดาวน์โหลดเพย์โหลดขั้นถัดไป
ด้วยคุณสมบัติของบล็อกเชนที่เป็นระบบกระจายศูนย์ แก้ไขข้อมูลย้อนหลังไม่ได้ และไม่มีศูนย์กลางในการสั่งปิด ทำให้ C2 รูปแบบนี้ไม่สามารถถูกระงับผ่านกระบวนการทางกฎหมายหรือเทคนิคเครือข่ายทั่วไปได้ ยิ่งไปกว่านั้น ระบบยังมี Google Calendar เป็นช่องทางสำรองอีกด้วย
ZOMBI RAT และการขโมยข้อมูล Credential
เป้าหมายหลักของ GlassWorm คือการติดตั้ง ZOMBI RAT (Remote Access Trojan) ลงบนเครื่องของเหยื่อ เพื่อเปิดช่องทางควบคุมระยะไกล สร้าง พร็อกซีโหนด และเชื่อมต่อช่องทางสั่งการแบบ P2P ผ่าน WebRTC และ BitTorrent
สิ่งที่สร้างความเสียหายอย่างมากคือการกวาดค้นและขโมย Credential จาก npm, GitHub, OpenVSX รวมถึงกุญแจส่วนตัว (Private Keys) จากโปรแกรมกระเป๋าเงินคริปโตบนเบราว์เซอร์มากถึง 49 รายการ (เช่น MetaMask, Phantom และ Coinbase Wallet)
ข้อมูลการยืนยันตัวตนที่ถูกขโมยไปจะถูกนำไปใช้ฝังโค้ดอันตรายลงในแพ็กเกจและส่วนขยายอื่นๆ ต่อไปแบบอัตโนมัติ ส่งผลให้การแพร่ระบาดขยายตัวอย่างรวดเร็ว
การใช้ AI ช่วยสร้าง Cover Commits ให้แนบเนียน
เหตุผลที่การโจมตีกว่า 151 คลังโค้ดไม่ถูกตรวจพบอย่างรวดเร็ว เป็นเพราะผู้โจมตีนำโมเดลภาษาขนาดใหญ่ (LLM) เข้ามาช่วยสร้างข้อความและรูปแบบ Commit ให้กลมกลืนกับแต่ละโปรเจกต์
ไม่ว่าจะเป็นการอัปเดตเอกสารประกอบ การปรับปรุงเวอร์ชันย่อย หรือการแก้ไขข้อผิดพลาดเล็กๆ น้อยๆ โดยเลียนแบบสไตล์การเขียนโค้ดของ Maintainer แต่ละโปรเจกต์อย่างแนบเนียน ขณะที่โค้ดอันตรายจะซ่อนอยู่ระหว่างบรรทัดในรูปแบบอักขระล่องหน
ช่องโหว่ Rules File: เมื่อ AI Coding Assistant ถูกวางยา
นอกจากมัลแวร์ในซอร์สโค้ดแล้ว นักวิจัย Ziv Karliner จาก Pillar Security ยังค้นพบเทคนิค Rules File Backdoor ที่ใช้อักขระล่องหนซ่อนคำสั่งไว้ในไฟล์คอนฟิกูเรชันของ AI เช่น .cursorrules หรือไฟล์ .mdc ของ Cursor และ GitHub Copilot
เพย์โหลดที่ซ่อนอยู่ในไฟล์ Rules จะมีคำสั่ง Jailbreak ซ่อนอยู่ สั่งให้ตัวแทน AI ไม่บันทึกการทำงาน และเมื่อนักพัฒนาสั่งให้ AI ช่วยเขียนโค้ด ตัว AI ที่ถูกวางยาก็จะแทรกโค้ดอันตรายลงในโปรเจกต์โดยตรงโดยไม่มีการแจ้งเตือนในหน้าต่างแชต
การทดสอบพบว่า เมื่อสั่งให้ AI สร้างหน้า HTML ธรรมดา ตัวช่วย AI จะแอบแทรกแท็ก Script ที่ชี้ไปยังเซิร์ฟเวอร์ภายนอกของผู้โจมตีเข้ามาทันที
ลำดับเหตุการณ์สำคัญ
- มีนาคม 2025: Aikido Security ตรวจพบแพ็กเกจ npm อันตรายที่ใช้อักขระ Unicode ช่วงพิเศษเป็นครั้งแรก
- ตุลาคม 2025: Koi Security ค้นพบ GlassWorm และตรวจพบส่วนขยายที่ติดมัลแวร์บน OpenVSX ก่อนจะลุกลามสู่ GitHub
- พฤศจิกายน 2025 ถึง กุมภาพันธ์ 2026: แคมเปญ PhantomRaven ใช้บัญชีชั่วคราว 50 บัญชีอัปโหลด 88 แพ็กเกจ npm ที่เป็นอันตราย
- 31 มกราคม 2026: ตรวจพบส่วนขยายที่เป็นอันตรายบน OpenVSX เพิ่มเติมอีก 72 รายการ
- 3 ถึง 9 มีนาคม 2026: เกิดการระบาดระลอกใหญ่ ฝังโค้ดอันตรายในคลังโค้ดบน GitHub มากกว่า 151 แห่ง
- มีนาคม 2026: ยอดรวมคลังโค้ดที่ได้รับผลกระทบเกินกว่า 400 แห่ง และระบบคำสั่งบนบล็อกเชนยังคงทำงานอยู่
ความเสี่ยงจากการคัดลอกโค้ด
พฤติกรรมการคัดลอกโค้ดจากเว็บเบราว์เซอร์หรือ GitHub จะทำให้อักขระล่องหนเหล่านี้ติดมาด้วยโดยอัตโนมัติ
หากนำโค้ดที่มีอักขระซ่อนอยู่ไปวางในโปรเจกต์ โค้ดอันตรายจะถูกนำเข้าสู่ระบบทันทีโดยที่การตรวจสอบผ่าน Diff ปกติไม่สามารถมองเห็นความผิดปกติได้เลย
แนวทางการป้องกันสำหรับนักพัฒนา
- ติดตั้งเครื่องมือตรวจจับเฉพาะทาง เช่น anti-trojan-source จาก Snyk เพื่อสแกนหาอักขระ Bidi และ Zero-width characters ในโปรเจกต์และในไปป์ไลน์ CI/CD
- ใช้เครื่องมือตรวจสอบความปลอดภัยของแพ็กเกจ เช่น Aikido Safe Chain ในการห่อหุ้มคำสั่ง npm, yarn หรือ pnpm เพื่อสกัดกั้นแพ็กเกจเสี่ยงก่อนติดตั้งลงเครื่อง
- ตั้งค่าระบบ Pre-commit Hooks และ CI Pipeline ให้ตรวจสอบและปฏิเสธอักขระ Unicode ในช่วง Variation Selectors โดยอัตโนมัติ
- กำหนดค่า Editor หรือ IDE ให้เน้นข้อความ (Highlight) อักขระกลุ่ม Non-ASCII เพื่อให้สังเกตเห็นตัวอักษรที่ผิดปกติได้ทันที
- ตรวจสอบไฟล์คอนฟิกูเรชันของ AI (เช่น
.cursorrules,.mdc) เสมือนเป็นไฟล์คำสั่งที่รันได้จริง หลีกเลี่ยงการดาวน์โหลดไฟล์คอนฟิกจากแหล่งที่ไม่น่าเชื่อถือ - เฝ้าระวังการเชื่อมต่อไปยังเครือข่ายบล็อกเชน (เช่น Solana RPC) จากสภาพแวดล้อมสำหรับพัฒนาโปรแกรม หากไม่มีความจำเป็นต้องใช้งาน
บทสรุป
ในยุคที่การเขียนโค้ดผสานเข้ากับเครื่องมือ AI การพึ่งพาเพียงการอ่าน Diff ด้วยสายตาไม่เพียงพออีกต่อไป
ความปลอดภัยของระบบซอฟต์แวร์จำเป็นต้องยกระดับด้วยเครื่องมือตรวจสอบอัตโนมัติที่มองลึกกว่าสิ่งที่ตามนุษย์มองเห็น เพื่อป้องกันไม่ให้โค้ดล่องหนเหล่านี้แอบแฝงเข้ามาในระบบของคุณ
Sources
- Aikido Security: Glassworm Returns: Invisible Unicode Malware Found in 150+ GitHub Repositories
- The Hacker News: GlassWorm Supply-Chain Attack Abuses 72 Open VSX Extensions to Target Developers
- Snyk: Defending Against Glassworm: The Invisible Malware That's Rewriting Supply Chain Security
- WinBuzzer: GitHub: Glassworm Hides Malware in Invisible Unicode Across 151+ Repos
- Krebs on Security: Trojan Source Bug Threatens the Security of All Code
- DEV Community: Glassworm: How Invisible Unicode Characters and Solana Are Powering the Biggest Supply Chain Attack of 2026
- Knostic: Zero Width Unicode Characters: the Risks you Can't See
- Pillar Security: New Vulnerability in GitHub Copilot and Cursor: How Hackers Can Weaponize Code Agents
- Security Online: GlassWorm Supply Chain Worm Uses Invisible Unicode and Solana Blockchain for Stealth C2
ชอบเรื่องแนวนี้ มีอีบุ๊คฟรีให้อ่านต่อ
ChatGPT Work ฉบับเข้าใจง่าย มอบงานให้ AI ทำจนจบ ตั้งแต่งานแรกจนถึงงานอัตโนมัติ พร้อม workflow ใช้ได้จริง 8 แบบ
กดสมัครแล้วเราจะส่งเทคนิค AI และของแจกใหม่ๆ ให้ทางอีเมล เลิกรับได้ตลอด
Claude Cowork · The Business Playbook

ฉบับภาษาไทย 15 บท เรียนรู้ผ่านโปรเจกต์จำลองต่อเนื่องทั้งเล่ม ตั้งแต่ตั้งค่า Workspace จัดการไฟล์ เชื่อมแอป ตั้งระบบอัตโนมัติ จนถึงสร้าง Plugin


