นักพัฒนา blockchain ชาวรัสเซียสูญเสียเงินดิจิทัลมูลค่าประมาณ 500,000 ดอลลาร์สหรัฐหลังจากติดตั้งส่วนขยายที่ดูเหมือนจะเป็นส่วนขยาย Solidity syntax highlighting ที่ถูกต้องตามกฎหมายสำหรับ Visual Studio Code เหตุการณ์นี้เน้นย้ำถึงช่องโหว่ด้านความปลอดภัยที่สำคัญในการที่นักพัฒนาเชื่อถือและติดตั้งส่วนขยายโค้ด โดยเฉพาะอย่างยิ่งในสภาพแวดล้อมการพัฒนาที่ขับเคลื่อนด้วย AI เช่น Cursor ที่อาศัยตลาดส่วนขยายของบุคคลที่สาม
การโจมตีเริ่มต้นขึ้นเมื่อนักพัฒนาดาวน์โหลดส่วนขยายที่เป็นอันตรายชื่อ astexplorer.js จาก Open VSX registry ซึ่งให้บริการส่วนขยายแก่ VSCode forks รวมถึง Cursor AI แม้จะมีความระมัดระวังด้านความปลอดภัยและใช้ซอฟต์แวร์ป้องกันไวรัส นักพัฒนาก็ตกเป็นเหยื่อของการโจมตี supply chain ที่ซับซ้อนซึ่งใช้ประโยชน์จากอัลกอริทึมการจัดอันดับของตลาดส่วนขยาย
เวกเตอร์การโจมตีทางเทคนิค:
- ไฟล์ที่เป็นอันตราย:
astexplorer.js
ตั้งอยู่ใน%UserProfile%\AppData\Local\temp
- ดาวน์โหลดสคริปต์ PowerShell จาก
img[.]yt-lu[.]xyz/install[.]ps1
- ติดตั้งซอฟต์แวร์การเข้าถึงระยะไกล ScreenConnect
- ปรับใช้มัลแวร์ขโมยกระเป๋าเงินดิจิทัลที่มุ่งเป้าไปที่ MetaMask และไฟล์กระเป๋าเงินในเครื่อง
![]() |
---|
แฮ็กเกอร์ในสภาพแวดล้อมดิจิทัล แสดงให้เห็นช่องโหว่ด้านความปลอดภัยที่นำไปสู่การขโมยสกุลเงินดิจิทัลจำนวนมาก |
การจัดการอัลกอริทึมการจัดอันดับทำให้เกิดการหลอกลวง
ผู้โจมตีสามารถเล่นระบบการจัดอันดับการค้นหาของ Open VSX ได้สำเร็จ เพื่อทำให้ส่วนขยายที่เป็นอันตรายของพวกเขาปรากฏสูงกว่าในผลการค้นหาเมื่อเทียบกับเวอร์ชันที่ถูกต้อง แม้ว่าส่วนขยายปลอมจะมีการดาวน์โหลดน้อยกว่า (144,000+ เทียบกับ 151,000+ สำหรับส่วนขยายที่ถูกต้อง) แต่ก็จัดอันดับสูงกว่าเนื่องจากปัจจัยหลายประการรวมถึงการอัปเดตล่าสุดและการปรับปรุงคำหลัก เวอร์ชันที่เป็นอันตรายได้รับการอัปเดตครั้งล่าสุดเมื่อวันที่ 18 มิถุนายน 2021 ในขณะที่ส่วนขยายที่ถูกต้องไม่ได้รับการอัปเดตตั้งแต่วันที่ 30 พฤษภาคม 2020 อคติด้านความใหม่ในอัลกอริทึมการจัดอันดับนี้ช่วยให้ส่วนขยายปลอมได้รับการมองเห็นในหมู่นักพัฒนาที่ไม่สงสัย
ส่วนขยายที่หลอกลวงไม่ได้ให้ฟังก์ชัน syntax highlighting จริงๆ แต่ผู้ใช้หลายคนอาจไม่สังเกตเห็นความล้มเหลวนี้ในขณะที่มัลแวร์ทำงานอย่างเงียบๆ ในพื้นหลัง
ไทม์ไลน์การโจมตี:
- มิถุนายน 2021: อัปโหลด extension ที่มีมัลแวร์ไปยัง Open VSX registry
- Extension ได้รับการดาวน์โหลดมากกว่า 144,000 ครั้งก่อนที่จะถูกตรวจพบ
- 2 กรกฎาคม 2021: Extension ถูกลบออกจาก marketplace
- ผู้โจมตีปล่อย extension ที่มีมัลแวร์ตัวใหม่ทันทีในวันถัดไป
![]() |
---|
นักพัฒนาสองคนทำงานร่วมกันที่คอมพิวเตอร์ เน้นย้ำถึงลักษณะการทำงานร่วมกันในการเขียนโปรแกรมท่ามกลางความเสี่ยงด้านความปลอดภัยที่ซ่อนอยู่ |
สิทธิ์ส่วนขยายที่ไม่มีข้อจำกัดสร้างความเสี่ยงด้านความปลอดภัย
การโจมตีสำเร็จเพราะส่วนขยาย VSCode ทำงานโดยไม่มีข้อจำกัดด้านความปลอดภัยที่มีความหมายหรือ sandboxing ส่วนขยายได้รับสิทธิ์ทั้งหมดที่ host editor มีอยู่แล้ว ทำให้สามารถเข้าถึงระบบไฟล์ทั้งหมด รันคำสั่งระบบ และดาวน์โหลดมัลแวร์เพิ่มเติมได้ โมเดลการเข้าถึงที่ไม่มีข้อจำกัดนี้หมายความว่าส่วนขยายที่เป็นอันตรายใดๆ สามารถทำให้สภาพแวดล้อมการพัฒนาทั้งหมดถูกบุกรุกได้
ส่วนขยายที่เป็นอันตรายดาวน์โหลดและรัน PowerShell scripts ที่ติดตั้งเครื่องมือการเข้าถึงระยะไกลเช่น ScreenConnect ทำให้ผู้โจมตีสามารถควบคุมเครื่องของเหยื่อได้อย่างสมบูรณ์ จากนั้นพวกเขาปรับใช้มัลแวร์ขโมยกระเป๋าเงินดิจิทัลที่กำหนดเป้าหมายไปที่กระเป๋าเงินบนเบราว์เซอร์เช่น MetaMask และไฟล์กระเป๋าเงินในเครื่อง
![]() |
---|
ความก้าวหน้าทางเทคโนโลยีที่แสดงในภาพนี้ เน้นย้ำถึงความสำคัญของมาตรการรักษาความปลอดภัยเพื่อป้องกันภัยคุกคามจากมัลแวร์ในสภาพแวดล้อมการพัฒนา |
ตลาดส่วนขยาย Open Source ขาดการกำกับดูแลด้านความปลอดภัย
เหตุการณ์นี้เปิดเผยช่องว่างด้านความปลอดภัยที่สำคัญใน Open VSX ซึ่งเป็นตลาดส่วนขยายที่ดำเนินการโดยอาสาสมัครที่ใช้โดย VSCode alternatives เช่น Cursor AI ไม่เหมือนกับตลาด VSCode อย่างเป็นทางการของ Microsoft ซึ่งมีทีมความปลอดภัยเฉพาะและระบบตรวจจับอัตโนมัติ Open VSX ดำเนินการด้วยทรัพยากรที่จำกัดและกระบวนการตรวจสอบที่น้อยที่สุด
การใช้ประโยชน์จาก (และโทษ) โครงสร้างพื้นฐานอาสาสมัครเป็นสิ่งที่ไร้ความรับผิดชอบ โดยเฉพาะอย่างยิ่งเมื่อคุณมีเงินทุนมากมาย
สิ่งนี้สร้างสถานการณ์ที่น่ากังวลที่บริษัทมูลค่าพันล้านดอลลาร์เช่น Cursor AI (ซึ่งระดมทุนได้ 900 ล้านดอลลาร์สหรัฐ) อาศัยโครงสร้างพื้นฐานที่ดูแลโดยอาสาสมัครสำหรับฟังก์ชันความปลอดภัยที่สำคัญ Eclipse Foundation ซึ่งดูแล Open VSX ขาดทรัพยากรในการดำเนินการมาตรการความปลอดภัยที่ครอบคลุมเทียบเท่ากับทางเลือกเชิงพาณิชย์
การเปรียบเทียบด้านความปลอดภัย:
- Microsoft VSCode Marketplace: มีทีมความปลอดภัยเฉพาะทาง การตรวจจับอัตโนมัติ อ้างว่ามีเวลาตอบสนอง 2 วินาทีสำหรับ extensions ที่เป็นอันตราย
- Open VSX Registry: ดำเนินการโดยอาสาสมัครจาก Eclipse Foundation มีทรัพยากรด้านความปลอดภัยจำกัด กระบวนการตรวจสอบขั้นต่ำ
- สิทธิ์การเข้าถึงของ Extension: marketplace ทั้งสองแห่งอนุญาตให้ extensions เข้าถึงระบบไฟล์และเครือข่ายได้อย่างไม่จำกัด
แนวทางปฏิบัติของนักพัฒนาต้องการการเปลี่ยนแปลงพื้นฐาน
การขโมยเงินดิจิทัลทำให้เกิดคำถามสำคัญเกี่ยวกับแนวทางปฏิบัติด้านความปลอดภัยในการพัฒนา นักพัฒนาหลายคนติดตั้งส่วนขยาย แพ็คเกจ npm และโค้ดของบุคคลที่สามอื่นๆ เป็นประจำโดยไม่มีการตรวจสอบความปลอดภัยอย่างละเอียด เหยื่อในกรณีนี้กำลังพัฒนาบนเครื่องเดียวกับที่เขาเก็บเงินดิจิทัลจำนวนมาก ทำให้เกิดสถานการณ์ที่มีความเสี่ยงสูงโดยไม่จำเป็น
ผู้เชี่ยวชาญด้านความปลอดภัยแนะนำให้ใช้ hardware wallets สำหรับการเก็บเงินดิจิทัล พัฒนาใน containers หรือ virtual machines ที่แยกออกมา และตรวจสอบส่วนขยายที่ติดตั้งทั้งหมดอย่างรอบคอบ นักพัฒนาบางคนกำลังใช้แนวทางที่ระแวงมากขึ้น รวมถึงการรันสภาพแวดล้อมการพัฒนาใน Docker containers ที่มีการเข้าถึงระบบไฟล์ที่จำกัด
เหตุการณ์นี้เป็นการเตือนใจอย่างชัดเจนว่าระบบนิเวศการพัฒนาซอฟต์แวร์สมัยใหม่อาศัยความสัมพันธ์ที่เชื่อถือกับแพ็คเกจและส่วนขยายของบุคคลที่สามหลายพันรายการ เมื่อการโจมตี supply chain กстановится ซับซ้อนมากขึ้น นักพัฒนาและบริษัทที่สร้างเครื่องมือพัฒนาต้องให้ความสำคัญกับมาตรการความปลอดภัยที่สอดคล้องกับขนาดของความเสี่ยงเหล่านี้