เทศกาลวันหยุด: ส่วนลดสูงสุด 50% พร้อมรับ BTC สูงสุด 90 USD กับโปรที่แรงที่สุดของปี

ช็อปตอนนี้

เทคโนโลยี, โพสต์บนบล็อก | เดือน/วัน/ปี

การรายงานเหตุการณ์ด้านความปลอดภัย

วันที่รายงาน: 2023-12-20

วันที่เกิดเหตุ: 2023-12-14

ประเภทของเหตุการณ์ที่ตรวจพบ: การเข้าถึงโดยไม่ได้รับอนุญาตและโค้ดอันตราย

บทสรุปสำหรับผู้บริหาร

Ledger ตรวจพบการโจมตีโดยใช้ Ledger Connect Kit เมื่อวันพฤหัสบดีที่ 14 ธันวาคม 2023 การโจมตีนี้ได้แทรกโค้ดอันตรายเข้าไปใน DApp ที่ใช้ Ledger Connect Kit โดยหลอกให้ผู้ใช้ EVM DApp เซ็นธุรกรรมที่ทำให้เงินในวอลเล็ตถูกดูดออกไป การโจมตีดังกล่าวถูกตรวจพบอย่างรวดเร็ว และมีการดำเนินการแก้ไขในเวลาไม่นานหลังจากนั้น ในช่วงเวลาดังกล่าว มีผู้ใช้งานจำนวนน้อยที่ตกเป็นเหยื่อของการโจมตีและได้เซ็นธุรกรรมที่ทำให้สินทรัพย์ในวอลเล็ตถูกถอนไป

ลำดับเหตุการณ์

เวลาที่ใช้อธิบายลำดับเหตุการณ์ทั้งหมดใช้เขตเวลา Central European Time (CET):

14-12-2023: ช่วงเช้า: อดีตพนักงานของ Ledger ตกเป็นเหยื่อของการโจมตีแบบฟิชชิงที่มีความซับซ้อนสูงที่ทำให้สามารถเข้าถึงบัญชี NPMJS ได้ โดยใช้ Session Token ของบุคคลนั้นเพื่อเลี่ยงการยืนยันตัวตนแบบสองขั้นตอน

14-12-2023 – 09:49AM / 10:44AM / 11:37AM: ผู้โจมตีได้เผยแพร่ Ledger Connect Kit เวอร์ชันที่มีโค้ดอันตรายบน NPMJS (ซึ่งเป็นระบบจัดการแพ็กเกจสำหรับโค้ด JavaScript ที่ใช้ร่วมกันระหว่างแอปต่าง ๆ) โดยเวอร์ชันที่ได้รับผลกระทบคือ 1.1.5, 1.1.6, และ 1.1.7) โค้ดอันตรายดังกล่าวใช้โปรเจกต์ WalletConnect ปลอม เพื่อเปลี่ยนเส้นทางการส่งสินทรัพย์ไปยังวอลเล็ตของแฮกเกอร์

14-12-2023: 1.45PM: Ledger ได้รับแจ้งถึงการโจมตีที่กำลังเกิดขึ้นด้วยการตอบสนองอย่างทันท่วงทีจากหลายฝ่ายในระบบนิเวศ รวมถึง Blockaid ซึ่งได้ติดต่อทีมงานของ Ledger และแชร์ข้อมูลอัปเดตผ่าน X

14-12-2023: 2.18PM: ทีมเทคโนโลยีและความปลอดภัยของ Ledger ได้รับการแจ้งเตือนเกี่ยวกับการโจมตีและได้ปล่อย Ledger Connect Kit เวอร์ชันของแท้สำหรับแก้ไขภายใน 40 นาที หลังจากที่รับทราบเหตุการณ์ เนื่องจากลักษณะของ CDN (Content Delivery Network) และกลไกการแคชข้อมูลบนอินเทอร์เน็ต ไฟล์ที่เป็นอันตรายจึงยังสามารถเข้าถึงได้อีกระยะหนึ่ง หลังจากที่มีการเจาะระบบ NPMJS จนถึงการแก้ไขปัญหาโดยสมบูรณ์ ใช้เวลาประมาณ 5 ชั่วโมง การที่โค้ดที่เป็นอันตรายยังสามารถเข้าถึงได้เป็นเวลานาน เกิดจากระยะเวลาที่ระบบ CDN ใช้ในการกระจายโค้ดและอัปเดตแคชทั่วโลกให้เป็นเวอร์ชันล่าสุดที่ปลอดภัยของไฟล์นั้น แม้ไฟล์ที่เป็นอันตรายจะถูกเผยแพร่นานถึง 5 ชั่วโมง แต่จากการสอบสวนของเรา ประเมินได้ว่าช่วงเวลาที่ทรัพย์สินของผู้ใช้ถูกดูดออกไปจริง ๆ นั้นกินเวลาไม่ถึง 2 ชั่วโมง

โดย Ledger ได้ประสานงานอย่างรวดเร็วกับพาร์ทเนอร์อย่าง WalletConnect ซึ่งเป็นผู้ปิดการใช้งานอินสแตนซ์ WalletConnect ปลอมที่ถูกใช้ในการดูดสินของผู้ใช้ในครั้งนี้

14-12-2023: 2.55 PM หลังจากการประสานงาน Tether ได้ระงับ USDT ของผู้โจมตี (cf. TX)

การวิเคราะห์สาเหตุของปัญหา สิ่งที่ค้นพบ และมาตรการป้องกัน
Context

Ledger Connect-Kit เป็นไลบรารีโอเพนซอร์สที่เขียนด้วย JavaScript ซึ่งช่วยให้นักพัฒนาสามารถเชื่อมต่อ DApp ของตนเข้ากับฮาร์ดแวร์ของ Ledger ได้ สามารถผสานรวมโดยใช้คอมโพเนนต์ Connect-Kit-loader ซึ่งช่วยให้ DApp โหลด Connect-Kit ขณะรันไทม์จาก CDN ได้ วิธีนี้ช่วยให้นักพัฒนา DApp สามารถใช้งาน Connect-Kit เวอร์ชันล่าสุดได้เสมอโดยไม่จำเป็นต้องอัปเดตเวอร์ชันของแพ็กเกจหรือสร้าง Build ใหม่ด้วยตนเอง CDN ที่ Ledger ใช้สำหรับเผยแพร่คือ NPMJS DApps ส่วนใหญ่ได้ผสานรวม Connect-Kit โดยใช้ Connect-Kit-loader ดังที่กล่าวข้างต้น

ในการเจาะระบบ Ledger Connect Kit ผู้โจมตีไม่ได้เข้าถึงโครงสร้างพื้นฐานของ Ledger คลังโค้ดของ Ledger หรือ DApp ใด ๆ เลยแม้แต่น้อย ผู้โจมตีสามารถอัปโหลดแพ็กเกจโค้ดที่เป็นอันตรายขึ้นไปบน CDN แทนที่ Connect-Kit เดิมได้ ซึ่งทำให้โค้ด Connect-Kit ที่เป็นอันตรายนี้ถูกโหลดแบบไดนามิกโดย DApp ที่มีการผสานรวมเข้ากับ Connect-Kit-loader อยู่แล้ว

การโจมตีผ่าน Ledger Connect Kit ครั้งนี้เน้นย้ำถึงความเสี่ยงที่ทั้ง Ledger และอุตสาหกรรมบล็อกเชนต้องเผชิญร่วมกันในการปกป้องผู้ใช้งาน และยังเป็นเครื่องเตือนใจว่าทุกฝ่ายต้องยกระดับมาตรฐานความปลอดภัยของ DApp ร่วมกัน โดยเฉพาะในส่วนที่ผู้ใช้งานต้องเซ็นธุรกรรมผ่านเบราว์เซอร์ ครั้งนี้เป็นบริการของ Ledger ที่ถูกโจมตี แต่ในอนาคต เหตุการณ์ลักษณะเดียวกันอาจเกิดขึ้นกับบริการหรือไลบรารีอื่นได้เช่นกัน

สาเหตุของปัญหา

เพื่อให้สามารถอัปโหลดแพ็กเกจโค้ดที่เป็นอันตรายบน NPMJS ได้ ผู้โจมตีใช้วิธีฟิชชิงกับอดีตพนักงานของ Ledger เพื่อใช้ประโยชน์จากสิทธิ์เข้าถึงของบุคคลนั้นบน NPMJS โดยสิทธิ์เข้าถึงระบบต่าง ๆ ของ Ledger (รวมถึง Github, บริการที่ใช้ระบบ SSO, เครื่องมือภายในและภายนอกทั้งหมดของ Ledger ) ของอดีตพนักงานได้ถูกยกเลิกอย่างถูกต้องแล้ว แต่สิทธิ์เข้าถึง NPMJS ของพนักงานรายดังกล่าวไม่ได้ถูกยกเลิกอย่างเหมาะสม

เรายืนยันได้ว่านี่เป็นเหตุการณ์ที่ไม่เกี่ยวข้องกับระบบอื่น สิทธิ์การเข้าถึงโครงสร้างพื้นฐานของ Ledger โดยพนักงานจะถูกยกเลิกโดยอัตโนมัติในขั้นตอนการออกจากงาน อย่างไรก็ตาม เนื่องจากข้อจำกัดของบริการและเครื่องมือเทคโนโลยีต่าง ๆ ที่มีอยู่ในปัจจุบันทั่วโลก ทำให้เราไม่สามารถยกเลิกสิทธิ์การเข้าถึงเครื่องมือภายนอกบางอย่างได้โดยอัตโนมัติ (รวมถึง NPMJS) ซึ่งต้องมีการดำเนินการแบบแมนนวลโดยใช้รายการตรวจสอบการออกจากงานของพนักงานแต่ละราย Ledger มีกระบวนการที่ใช้กับพนักงานที่ออกจากงานและมีการปรับปรุงเป็นประจำ ซึ่งเราจะลบสิทธิ์การเข้าถึงเครื่องมือภายนอกของพนักงานที่กำลังจะลาออกทั้งหมด ในกรณีเฉพาะนี้ สิทธิ์การเข้าถึงบน NPMJS ไม่ได้ถูกยกเลิกด้วยวิธีการแบบแมนนวล ซึ่งเราเสียใจเป็นอย่างยิ่ง และขณะนี้กำลังอยู่ระหว่างการตรวจสอบร่วมกับพาร์ทเนอร์ภายนอก

เหตุการณ์นี้เป็นการโจมตีที่ซับซ้อนโดยผู้ไม่หวังดี แม้ว่าเราจะได้เปิดใช้งานการยืนยันตัวตนแบบสองขั้นตอน (2FA) กับบัญชี NPMJS ที่ตกเป็นเป้าหมาย ซึ่งปกติจะสามารถป้องกันความพยายามในการโจมตีได้หลายรูปแบบ แต่ผู้โจมตีกลับสามารถหลบเลี่ยงมาตรการความปลอดภัยนี้ได้ โดยอาศัยการใช้คีย์ API ที่เชื่อมโยงกับบัญชีของอดีตพนักงานรายนั้น

การโจมตีครั้งนี้ทำให้ผู้ไม่หวังดีสามารถอัปโหลด Ledger Connect Kit เวอร์ชันที่แฝงมัลแวร์ชนิดหนึ่งซึ่งรู้จักกันในชื่อ Angel Drainer เข้าไปได้ Angel Drainer เป็นมัลแวร์แบบ Malware-as-a-Service ที่ถูกออกแบบมาโดยเฉพาะเพื่อสร้างธุรกรรมที่เป็นอันตรายที่จะดูดเงินออกจากวอลเล็ตทันทีที่มีการเซ็นชื่อในธุรกรรม Angel Drainer เป็นโครงสร้างพื้นฐานที่สมบูรณ์ โดยออกแบบมาสำหรับเชน EVM โดยเฉพาะ สามารถปล่อยสัญญาอัจฉริยะตามคำสั่ง และสร้างธุรกรรมที่ออกแบบมาเฉพาะเพื่อสร้างความเสียหายให้มากที่สุด

น่าเสียดายที่ NPMJS.com ยังไม่รองรับการอนุมัติหลายระดับหรือการตรวจสอบลายเซ็นสำหรับ การเผยแพร่อัตโนมัติ เรากำลังดำเนินการเพิ่มกลไกเสริมเร่งด่วนเพื่อเพิ่มการควบคุมให้เข้มงวดยิ่งขึ้นในขั้นตอนการนำขึ้นใช้งาน

สิ่งที่ค้นพบ

นี่คือการโจมตีที่มีการวางแผนมาเป็นอย่างดี และดำเนินการโดยผู้โจมตีที่มีประสบการณ์ เทคนิคฟิชชิงที่ใช้ไม่ได้มุ่งเน้นที่สิ่งที่ใช้รับรองตัวตน ซึ่งเรามักพบในการโจมตีบนหน้าเว็บ (Front-End) ส่วนใหญ่ในระบบนิเวศ กลับกัน ผู้โจมตีรายนี้เลือกใช้วิธีเข้าถึง Session Token โดยตรงแทน

มัลแวร์ที่ใช้ในการโจมตีครั้งนี้คือ Angel Drainer ซึ่งทีมความปลอดภัยของ Ledger พบว่ามีกิจกรรมทางอาชญากรรมที่ใช้มัลแวร์นี้เพิ่มขึ้นในช่วงสามเดือนที่ผ่านมา (กรุณาดูรายละเอียดเพิ่มเติมจาก รายงานของ Blockaid ที่เผยแพร่ไว้) เรายังสามารถตรวจสอบบนเชนได้ว่าเงินทุนที่ถูกขโมยไปนั้นถูกแบ่งออกเป็นสองส่วน คือ 85% สำหรับผู้โจมตี และ 15% สำหรับ Angel Drainer ซึ่งอาจสรุปได้ว่ามัลแวร์นี้เป็น Malware-as-a-Service

Angel Drainer จะหลอกให้ผู้ใช้เซ็นธุรกรรมหลายรูปแบบ ขึ้นอยู่กับประเภทของสินทรัพย์ที่เป็นเป้าหมายในขณะนั้น สำหรับโทเคนประเภท ERC20 และ NFT มัลแวร์จะร้องขอให้ผู้ใช้เซ็นข้อความประเภท อนุมัติ และ อนุญาต สำหรับ Native Token, Drainer จะหลอกให้ผู้ใช้เซ็นธุรกรรมปลอมเพื่อทำการ “เคลม” ซึ่งการเคลมนั้นจะทำการกวาดเงินทุนออกจากวอลเล็ต หรืออาจใช้วิธีการโอนโทเคนธรรมดาที่สามารถถูกกวาดออกไปภายหลังได้โดยการปล่อยสัญญาอัจฉริยะไปยัง Address ที่เกี่ยวข้อง

ด้วยเหตุนี้ เราจึงยังสนับสนุน Clear Signing ในอุตสาหกรรมอย่างต่อเนื่อง เพื่อให้ผู้ใช้สามารถตรวจสอบและสิ่งที่ปรากฏบนหน้าจอ Trusted Display ของอุปกรณ์ฮาร์ดแวร์ของ Ledger ได้

การดำเนินการแก้ไข

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

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

Ledger ได้จัดการฝึกอบรมด้านความปลอดภัยภายในองค์กร รวมถึงการอบรมเกี่ยวกับฟิชชิงแล้ว โดยโปรแกรมฝึกอบรมด้านความปลอดภัยภายในองค์กรที่จัดขึ้นตั้งแต่ต้นปี 2024 เป็นต้นมาได้รับการเสริมความเข้มข้นยิ่งขึ้นสำหรับพนักงานทุกคนในแต่ละแผนก Ledger ได้จัดให้มีการประเมินความปลอดภัยโดยบุคคลที่สามอย่างเป็นประจำ และจะยังคงให้ความสำคัญกับการประเมินเหล่านี้ต่อไป

ในช่วงต้นปี 2024 ได้มีการตรวจสอบโดยบุคคลที่สามโดยเน้นที่การควบคุมสิทธิ์การเข้าถึงการโปรโมตและเผยแพร่โค้ด

นอกจากนี้ เราจะปรับปรุงระบบติดตามและแจ้งเตือนของโครงสร้างพื้นฐานให้แข็งแกร่ง เพื่อให้สามารถตรวจจับและตอบสนองต่อเหตุการณ์ในอนาคตได้อย่างรวดเร็วยิ่งขึ้น

สุดท้ายนี้ เราจะเพิ่มความเข้มงวดในการป้องกันการเซ็นชื่อแบบ Blind Signing โดยจะยกเลิกตัวเลือกนี้สำหรับผู้ใช้งาน Ledger เพื่อส่งเสริมแนวปฏิบัติด้านความปลอดภัยสูงสุด พร้อมทั้งให้ความรู้แก่ผู้ใช้งานเกี่ยวกับความเสี่ยงของการเซ็นธุรกรรมโดยไม่มีการแสดงผลบนหน้าจอที่เชื่อถือได้ หรือโดยที่ไม่เข้าใจเนื้อหาที่กำลังเซ็นจากการไม่ใช้วิธี Clear Signing

เราขอขอบคุณพาร์ทเนอร์ของเราในระบบนิเวศสำหรับการทำงานร่วมกับทีมงานของ Ledger อย่างรวดเร็วในการระบุและแก้ไขการโจมตีครั้งนี้

ติดตามข่าวสาร

สามารถติดตามประกาศได้ทางบล็อกของเรา ติดต่อฝ่าย PR:
[email protected]

สมัครรับจดหมายข่าวของเรา

เหรียญใหม่ที่รองรับ อัปเดตบล็อก และข้อเสนอสุดพิเศษส่งตรงถึงกล่องจดหมายของคุณ


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