สรุปสาระสำคัญ
- ข้อบกพร่องในเฟิร์มแวร์ตั้งแต่ปี 2021 ทำให้วลีกู้คืนของ COLDCARD บางเครื่องถูกเดาได้ การสร้างวลีกู้คืนถูกส่งไปใช้ตัวสร้างเลขสุ่มแบบซอฟต์แวร์แทนที่จะเป็นของชิปฮาร์ดแวร์ ความลับจึงถูกสุ่มจากชุดตัวเลือกที่เล็กกว่าที่ตั้งใจไว้มาก
- ผู้โจมตีขโมยไปแล้วราว 1,816 BTC หรือประมาณ 116 ล้านดอลลาร์สหรัฐ ณ วันที่ 3 สิงหาคม 2026 ตัวเลขนี้เพิ่มขึ้นทุกระลอกที่มีรายงาน และอาจสูงกว่านี้แล้วเมื่อคุณอ่านบทความนี้
- ไม่มีการเจาะระบบจากระยะไกล และไม่มีใครแตะต้องตัวเครื่อง ผู้โจมตีจำลองการสุ่มที่อ่อนแอนั้นบนคอมพิวเตอร์ทั่วไป สร้างวลีกู้คืนที่เป็นไปได้ แล้วตรวจว่าอันไหนมีเหรียญอยู่
- การทอยลูกเต๋าช่วยชีวิตหลายคนไว้ ใครที่ทอยลูกเต๋าอย่างน้อย 50 ครั้งเป็นการส่วนตัวตอนตั้งค่า หรือใช้ BIP-39 passphrase ที่คาดเดายาก จะไม่ได้รับผลกระทบจากข้อบกพร่องนี้
- การอัปเดตเฟิร์มแวร์ไม่ได้แก้ไขวลีกู้คืนที่สร้างไปแล้ว ต้องสร้างวลีกู้คืนใหม่บนเฟิร์มแวร์ที่แก้ไขแล้วและย้ายเหรียญไปยังวลีใหม่ นี่คือจุดที่หลายคนเข้าใจผิด
- SIAMBC ไม่ได้จำหน่าย COLDCARD เราใส่ใจทุกคนในวงการนี้ ไม่ใช่เฉพาะลูกค้าที่ซื้อจากเรา เราจึงดูแลผู้ถือคริปโตทั่วประเทศไทยให้เก็บเหรียญได้อย่างปลอดภัยมาตั้งแต่ปี 2016 และบทความนี้เขียนขึ้นเพื่อทุกคนที่ถืออุปกรณ์เหล่านี้ ไม่ว่าจะยี่ห้อใดก็ตาม
เช้าวันที่ 30 กรกฎาคม 2026 มีคนถอนบิตคอยน์ 1,083 เหรียญออกจากวอลเล็ต COLDCARD ภายในเวลา 41 นาที เจ้าของไม่ได้ทำอะไรผิดเลย พวกเขาไม่ได้กดลิงก์หลอกลวง ไม่ได้พิมพ์วลีกู้คืนลงในเว็บไซต์ ไม่ได้ทำอุปกรณ์หาย ส่วนใหญ่กำลังนอนหลับอยู่
นี่คือรูปแบบความล้มเหลวที่ฮาร์ดแวร์วอลเล็ตควรจะทำให้เกิดขึ้นไม่ได้ และควรทำความเข้าใจให้ถูกต้อง เพราะบทเรียนที่ได้ไม่ใช่บทเรียนที่คนส่วนใหญ่กำลังสรุปกัน
เกิดอะไรขึ้น อธิบายแบบเข้าใจง่าย
ฮาร์ดแวร์วอลเล็ตมีหน้าที่สำคัญที่สุดอย่างเดียว คือสร้างความลับที่ไม่มีใครคาดเดาได้ รวมถึงผู้ผลิตเองด้วย ทุกอย่างที่เหลือตามมาจากตรงนี้ ทั้ง PIN ชิปนิรภัย และหน้าจอที่แสดงที่อยู่ให้คุณเห็น ล้วนตั้งอยู่บนสมมติฐานว่าความลับนั้นถูกสุ่มจากชุดตัวเลือกที่ใหญ่จนการเดาเป็นเรื่องสิ้นหวัง
สำหรับเครื่อง COLDCARD ที่ตั้งค่าระหว่างเดือนมีนาคม 2021 ถึงปลายเดือนกรกฎาคม 2026 ชุดตัวเลือกนั้นไม่ได้ใหญ่ บน Mk2 และ Mk3 อยู่ที่ราว 40 บิต หรือประมาณหนึ่งล้านล้านความเป็นไปได้ ส่วนบน Mk4, Mk5 และ Q อยู่ที่ราว 72 บิต ขณะที่เป้าหมายการออกแบบคือ 128 บิต
ตัวเลขเหล่านี้ดูใกล้กันเมื่อเขียนออกมา แต่ความจริงไม่ใช่เลย ทุกบิตที่เพิ่มขึ้นหมายถึงงานที่เพิ่มขึ้นเป็นสองเท่า การขยับจาก 40 บิตไปเป็น 128 บิตไม่ได้ยากขึ้นสามเท่า แต่ยากขึ้นราวสามแสนล้านล้านล้านล้านเท่า สี่สิบบิตคือการค้นหาที่คอมพิวเตอร์ธรรมดาทำจนเสร็จได้ ส่วน 128 บิตคือการค้นหาที่ไม่มีอะไรทำจนเสร็จได้
การโจมตีนี้จึงไม่ต้องเข้าถึงตัวเครื่องเลย ผู้โจมตีรันการสุ่มที่บกพร่องแบบเดียวกันบนเครื่องของตัวเอง สร้างวลีกู้คืนแบบที่เครื่องเหล่านั้นจะสร้าง แล้วคำนวณที่อยู่บิตคอยน์ออกมา จากนั้นก็ตรวจว่าที่อยู่ไหนมีเงินอยู่ แล้วกวาดออกไป
การขโมยเกิดขึ้นเป็นระลอก ระลอกแรกวันที่ 30 กรกฎาคมได้ไป 1,083 BTC ระลอกที่สองวันที่ 31 กรกฎาคมได้ไป 594 BTC ในเวลาราว 25 นาที ตามด้วยระลอกย่อยอีกหลายครั้ง ณ วันที่ 3 สิงหาคม 2026 นักวิเคราะห์บล็อกเชนประเมินยอดรวมไว้ที่ราว 1,816 BTC หรือประมาณ 116 ล้านดอลลาร์สหรัฐ จากที่อยู่มากกว่า 5,200 แห่ง สำนักข่าวแต่ละแห่งรายงานยอดรวมต่างกันในแต่ละวัน ซึ่งเป็นเรื่องปกติเมื่อการโจมตียังดำเนินอยู่
ตัวข้อบกพร่อง และทำไมจึงไม่มีใครเห็นนานถึงห้าปี
ในเดือนมีนาคม 2021 Coinkite ย้ายเฟิร์มแวร์ไปใช้ไลบรารีเข้ารหัสของ Bitcoin Core ในการทำงานครั้งนั้น การสร้างวลีกู้คืนถูกย้ายจากฟังก์ชันภายในตัวหนึ่งไปอีกตัวหนึ่ง เส้นทางใหม่ควรจะไปเรียกตัวสร้างเลขสุ่มของชิป STM32 แต่กลับไม่ได้ไป มันไปลงเอยที่ตัวสำรองแบบซอฟต์แวร์ของ MicroPython ซึ่งเป็นตัวสร้างเลขสุ่มเทียมที่อาศัยสถานะของเครื่องและจังหวะเวลาเป็นหลัก
สาเหตุเล็กจนน่าเจ็บใจ นักพัฒนาตั้งค่าสวิตช์ที่ปิดโค้ดสุ่มของ MicroPython ไว้เป็นศูนย์ โดยคาดว่าจะเป็นการปิดการทำงาน แต่การตรวจสอบตอนคอมไพล์ดูเพียงว่าสวิตช์นั้น ถูกกำหนดค่าไว้หรือไม่ ไม่ได้ดูว่าค่าเป็นเท่าไร การกำหนดค่าเป็นศูนย์ก็ยังนับว่าถูกกำหนดค่าแล้ว ตัวสำรองจึงยังถูกคอมไพล์เข้าไป และนั่งรออยู่เงียบๆ หลังชื่อฟังก์ชันที่ตัวสร้างวลีกู้คืนเรียกใช้
การแก้ไขซึ่งออกมาภายในไม่กี่วัน ตัดตัวสำรองนั้นออกทั้งหมด และเพิ่มการตรวจสอบตอนบิลด์ที่จะทำให้การบิลด์ล้มเหลวหากไม่ได้เชื่อมตัวสร้างเลขสุ่มของฮาร์ดแวร์จริง นี่คือรูปแบบการแก้ที่ถูกต้อง เพราะทำให้ความผิดพลาดแบบเดียวกันเกิดซ้ำไม่ได้ ไม่ใช่แค่แก้เฉพาะกรณีนี้
Coinkite ระบุว่าต้องตั้งสมมติฐานว่ามีคนใช้ AI ตรวจสอบเฟิร์มแวร์เวอร์ชันเก่าจนพบข้อบกพร่องนี้ นั่นเป็นการคาดการณ์ของบริษัทเอง ไม่ใช่ข้อเท็จจริงที่ยืนยันแล้ว และยังไม่มีการระบุตัวผู้โจมตี แต่ก็เป็นเรื่องที่ควรคิดตาม โค้ดที่ผ่านสายตามนุษย์มาห้าปีย่อมกลายเป็นเป้าหมายคนละแบบ เมื่อการไล่อ่านโค้ดย้อนหลังห้าปีมีต้นทุนถูกลง
รุ่นและเฟิร์มแวร์ที่ได้รับผลกระทบ

ขอให้ยึดหมายเลขเวอร์ชันเหล่านี้จากประกาศของผู้ผลิตโดยตรง มากกว่าจากบทสรุปใดๆ รวมถึงบทความนี้ด้วย
| รุ่น | เวอร์ชันที่ได้รับผลกระทบ | แก้ไขแล้วใน |
|---|---|---|
| Mk2 และ Mk3 | 4.0.1 ถึง 4.1.9 รวมทั้งสองเวอร์ชัน | 4.2.0 ขึ้นไป |
| Mk4 และ Mk5 | ทุกเวอร์ชันก่อน 5.6.0 | 5.6.0 ขึ้นไป |
| Q | ทุกเวอร์ชันก่อน 1.5.0Q | 1.5.0Q ขึ้นไป |
| Mk4, Mk5 และ Q ที่ใช้เฟิร์มแวร์ Edge | ก่อน 6.6.0X และ 6.6.0QX | 6.6.0X, 6.6.0QX |
สิ่งที่สำคัญคือเวอร์ชันเฟิร์มแวร์ที่เครื่องใช้อยู่ ตอนที่สร้างวลีกู้คืนครั้งแรก ไม่ใช่เวอร์ชันที่ใช้อยู่ตอนนี้ เครื่องที่เพิ่งอัปเดตเมื่อสัปดาห์ที่แล้วก็ยังถือวลีกู้คืนที่สร้างขึ้นภายใต้โค้ดเดิมอยู่ดี นี่คือจุดที่คนเข้าใจผิดมากที่สุดในเรื่องทั้งหมดนี้
Mk2 และ Mk3 อยู่ในสถานะแย่ที่สุดที่ราว 40 บิต ส่วนรุ่นใหม่กว่ามีการผสมค่าสุ่มจากชิปนิรภัยเข้าไปด้วย ซึ่งดันขึ้นมาได้ราว 72 บิต ดีขึ้น แต่ก็ยังต่ำกว่าที่ควรจะเป็นมาก
ทำไมการทอยลูกเต๋าจึงเปลี่ยนผลลัพธ์
COLDCARD เปิดให้ผู้ใช้เพิ่มค่าสุ่มของตัวเองตอนตั้งค่าด้วยการทอยลูกเต๋าจริงมาโดยตลอด เครื่องจะนำผลการทอยของคุณไปแฮชรวมกับค่าสุ่มของตัวเอง การตัดสินใจออกแบบข้อนี้คือเหตุผลที่เจ้าของเครื่องจำนวนมากไม่ได้รับผลกระทบ
เพราะผลการทอยของคุณถูกนำไปผสม ไม่ใช่นำไปแทนที่ ค่าเหล่านั้นจึงคงความแข็งแรงเต็มที่ แม้ในตอนที่ค่าสุ่มของตัวเครื่องจะอ่อนแอ การทอยอย่างเป็นธรรมและเป็นอิสระอย่างน้อย 50 ครั้งที่ไม่มีใครเห็นและไม่มีใครจดไว้ ให้ค่าเกิน 128 บิตด้วยตัวมันเอง ส่วน 99 ครั้งขึ้นไปให้ราว 256 บิต
BIP-39 passphrase ที่คาดเดายากก็ทำหน้าที่เดียวกันด้วยเหตุผลเดียวกัน คือเป็นความลับที่การจำลองของผู้โจมตีไม่มีทางรู้
มีบทเรียนที่ชวนอึดอัดสำหรับทั้งวงการอยู่ตรงนี้ ฟีเจอร์ทางเลือกที่ยุ่งยากนิดหน่อย ซึ่งผู้ใช้สายจริงจังเคยถูกล้อว่าเสียเวลาทำไป กลับกลายเป็นสิ่งที่ยืนหยัดได้ การป้องกันเป็นชั้นๆ ไม่ใช่แค่พิธีกรรม
ต้องทำอะไรบ้าง ตามลำดับ
ถ้าคุณตั้งค่า COLDCARD ระหว่างเดือนมีนาคม 2021 ถึง 30 กรกฎาคม 2026 โดยไม่ได้ทอยลูกเต๋าและไม่ได้ใช้ passphrase ให้ถือว่าวลีกู้คืนถูกเปิดเผยแล้ว และย้ายเหรียญก่อน แล้วค่อยอ่านทีหลัง
- ย้ายเหรียญทันทีหากจำนวนมีนัยสำคัญ วอลเล็ตใดก็ได้ที่คุณควบคุมและไม่ได้สร้างบนเฟิร์มแวร์ที่มีปัญหา ใช้ได้ในตอนนี้ ความเร็วสำคัญกว่าความเรียบร้อยเมื่อการโจมตียังดำเนินอยู่
- อัปเดตเฟิร์มแวร์ เป็นเวอร์ชันที่แก้ไขแล้วตามตารางด้านบน แล้วตรวจสอบว่าติดตั้งสำเร็จ
- สร้างวลีกู้คืนใหม่ทั้งหมด บนเครื่องที่อัปเดตแล้ว และคราวนี้ให้เพิ่มการทอยลูกเต๋าด้วย
- จดและตรวจทานวลีกู้คืนใหม่ ให้เรียบร้อยก่อนที่จะมีเหรียญอยู่ในนั้น
- ตรวจที่อยู่รับเหรียญบนหน้าจอของเครื่อง ไม่ใช่ดูแค่ในซอฟต์แวร์
- ทดลองส่งจำนวนน้อยก่อน แล้วยืนยันว่าเหรียญเข้าจริงและใช้จ่ายออกได้
- ย้ายส่วนที่เหลือ และเก็บวลีกู้คืนเดิมไว้ในที่ปลอดภัยจนกว่าจะแน่ใจว่าไม่มีอะไรตกค้าง
อย่าข้ามขั้นตอนที่ 3 การอัปเดตเฟิร์มแวร์ไม่ได้แตะต้องวลีกู้คืนที่มีอยู่แล้ว เครื่องที่แพตช์แล้วแต่ยังใช้วลีกู้คืนเดิม มีความเสี่ยงเท่ากับก่อนแพตช์ทุกประการ
เรื่องนี้บอกอะไรและไม่ได้บอกอะไรเกี่ยวกับฮาร์ดแวร์วอลเล็ต
เป็นเรื่องง่ายที่จะอ่านเรื่องนี้แล้วสรุปว่าฮาร์ดแวร์วอลเล็ตใช้ไม่ได้ผล หรือว่ายี่ห้อหนึ่งสะเพร่า ทั้งสองข้อสรุปไม่รอดเมื่อดูรายละเอียด
ชิปนิรภัยทำหน้าที่ของมัน PIN ทำหน้าที่ของมัน หน้าจอทำหน้าที่ของมัน ตัวเครื่องไม่เคยปล่อยข้อมูลอะไรออกไป สิ่งที่ล้มเหลวคือการตั้งค่าบิลด์เพียงบรรทัดเดียวที่อยู่เหนือทุกอย่างขึ้นไป ในจุดเดียวที่การป้องกันชั้นอื่นตรวจจับความผิดพลาดไม่ได้ วอลเล็ตไม่สามารถตรวจสอบได้ว่าค่าสุ่มของตัวเองสุ่มจริงหรือไม่ นั่นคือธรรมชาติของความสุ่ม
สิ่งที่เหตุการณ์นี้บอกจริงๆ นั้นชวนอึดอัดกว่าและกว้างกว่า โอเพนซอร์สไม่ได้จับข้อบกพร่องนี้ได้ตลอดห้าปี การตรวจสอบความปลอดภัยก็เช่นกัน ผู้ผลิตเปิดเผยอย่างรวดเร็ว ออกตัวแก้ภายในราวสองวัน และเผยแพร่คำอธิบายทางเทคนิคที่ไม่ได้เข้าข้างตัวเอง ซึ่งถือว่าดีที่สุดเท่าที่บริษัทหนึ่งจะทำได้เมื่อความเสียหายเกิดขึ้นแล้ว และดีกว่าที่บริษัทใหญ่กว่าหลายแห่งเคยทำ
ถ้าคุณถือฮาร์ดแวร์วอลเล็ตยี่ห้อใดก็ตาม สิ่งที่ควรทำไม่ใช่การเปลี่ยนยี่ห้อ แต่คือใช้ฟีเจอร์เพิ่มค่าสุ่มที่เครื่องของคุณมีอยู่แล้ว ใส่ passphrase กับเหรียญจำนวนที่มีนัยสำคัญ และถือว่าประกาศด้านความปลอดภัยของผู้ผลิตเป็นสิ่งที่ต้องอ่าน ไม่ใช่สิ่งที่ปัดทิ้ง
คำถามที่พบบ่อย
อัปเดตเฟิร์มแวร์แล้ว ปลอดภัยหรือยัง
ยังไม่ปลอดภัย เว้นแต่คุณจะสร้างวลีกู้คืนใหม่และย้ายเหรียญไปแล้วด้วย การอัปเดตแก้ได้เฉพาะวลีกู้คืนที่จะสร้างในอนาคตเท่านั้น
ใช้การทอยลูกเต๋าตอนตั้งค่า ต้องทำอะไรไหม
ถ้าคุณทอยอย่างเป็นธรรมและเป็นอิสระอย่างน้อย 50 ครั้ง โดยไม่มีใครเห็นและไม่ได้จดบันทึกไว้ ข้อบกพร่องนี้ไม่กระทบคุณ แต่ถ้าน้อยกว่า 50 ครั้ง หรือจดผลการทอยไว้ ถือเป็นอีกสถานการณ์หนึ่ง
ใช้ BIP-39 passphrase อยู่ มีความเสี่ยงไหม
passphrase ที่คาดเดายากและเป็นความลับจะปกป้องคุณจากการโจมตีนี้ได้ แต่ passphrase ที่อ่อนหรือเดาได้จะไม่ช่วย
ตั้งค่า COLDCARD ก่อนปี 2021 ได้รับผลกระทบไหม
วลีกู้คืนที่สร้างก่อนเฟิร์มแวร์ 4.0.1 ใช้ตัวสร้างเลขสุ่มของฮาร์ดแวร์ จึงไม่ได้รับผลกระทบจากข้อบกพร่องนี้
เหรียญที่ถูกขโมยไปได้คืนไหม
ตามความเป็นจริงคือไม่ได้ ธุรกรรมบิตคอยน์เป็นที่สิ้นสุด Coinkite เสนอที่จะให้ข้อมูลธุรกรรมเพื่อประกอบการแจ้งความและการเคลมประกัน
เรื่องนี้กระทบ Ledger, Trezor, Tangem หรือยี่ห้ออื่นไหม
ไม่กระทบ นี่เป็นข้อบกพร่องเฉพาะในเฟิร์มแวร์ COLDCARD บางเวอร์ชันเท่านั้น และไม่ได้บอกอะไรเกี่ยวกับการสุ่มในอุปกรณ์ของผู้ผลิตรายอื่น
การซื้อในประเทศไทย
SIAMBC ไม่ได้จำหน่าย COLDCARD จึงไม่มีอะไรที่เราจะขายคุณจากเรื่องนี้ ถ้าคุณมีเครื่องอยู่และไม่แน่ใจว่าวลีกู้คืนถูกสร้างบนเฟิร์มแวร์ที่ได้รับผลกระทบหรือไม่ ทักหาเราทาง LINE ที่ @siambc แล้วเราจะช่วยไล่ตรวจเวอร์ชันไปด้วยกัน
คำแนะนำทั่วไปที่เราให้ลูกค้าทุกคนใช้ได้กับกรณีนี้โดยไม่ต้องปรับอะไร ซื้อจากตัวแทนจำหน่ายแทนประกาศขายในมาร์เก็ตเพลส สร้างวลีกู้คืนด้วยตัวเอง บนตัวเครื่อง ต่อหน้าคุณ เพิ่มการทอยลูกเต๋าถ้าเครื่องรองรับ ใส่ passphrase กับเหรียญจำนวนที่คุณเสียใจหากสูญเสีย และอ่านประกาศที่ผู้ผลิตเผยแพร่ เพราะประกาศฉบับนี้เปิดเผยต่อสาธารณะอยู่หลายชั่วโมงก่อนที่เจ้าของเครื่องส่วนใหญ่จะได้เห็น
มีกฎข้อหนึ่งที่เป็นจริงเสมอไม่ว่ายี่ห้อใด ใครก็ตามที่ขอวลีกู้คืนของคุณคือมิจฉาชีพ และนั่นรวมถึงคนที่ติดต่อคุณมาโดยอ้างเรื่องเหตุการณ์นี้ด้วย ในไม่กี่วันข้างหน้าจะมีทั้งฝ่ายซัพพอร์ต COLDCARD ปลอมและบริการกู้คืนเหรียญปลอม ทั้ง Coinkite ทั้ง SIAMBC และใครก็ตาม ไม่มีวันต้องใช้คำเหล่านั้น





แชร์:
Where to Store Your Recovery Phrase in Thailand