Vultisig ปรับแอปกระเป๋าเงินคริปโตบน iOS และ Android ให้หยุดการลงนามเมื่อพบผู้ร่วมลงนามที่เป็นอันตราย โดยบันทึกการเปลี่ยนแปลงเดือนสิงหาคมระบุว่าแพตช์นี้ป้องกันการลองลงนามซ้ำหลังเกิดข้อผิดพลาด
เงื่อนไขของการโจมตีคืออุปกรณ์ของผู้ลงนามรายหนึ่งถูกยึดครองก่อน ChainSecurity อธิบายในการวิเคราะห์ว่า ผู้โจมตีอาจส่งข้อความอันตรายซ้ำและสังเกตการตอบกลับข้อผิดพลาดจากอุปกรณ์อื่น เพื่ออนุมาน seed ภายใน แล้วกู้คืนส่วนแบ่งกุญแจและคีย์ส่วนตัวทั้งหมดได้ นี่เป็นคำอธิบายเส้นทางการโจมตีที่เป็นไปได้ ไม่ได้ยืนยันว่ามีการโจมตีจริงหรือมีการขโมยสินทรัพย์
Vultisig เป็นกระเป๋าเงิน MPC ที่แบ่งส่วนของคีย์ส่วนตัวไว้ในอุปกรณ์หลายเครื่อง และให้อุปกรณ์เหล่านั้นร่วมกันลงนามธุรกรรม แนวคิดของการแยกเก็บคือ แม้อุปกรณ์หนึ่งถูกเจาะ ส่วนแบ่งคีย์ในเครื่องนั้นเพียงอย่างเดียวก็ไม่เพียงพอที่จะเปิดเผยคีย์ส่วนตัวทั้งหมด ช่องโหว่นี้อาจเกิดขึ้นเมื่ออุปกรณ์ที่ถูกยึดครองเข้าร่วมลงนามและเฝ้าสังเกตการตอบสนองจากอุปกรณ์อื่นซ้ำ ๆ
ChainSecurity ตรวจสอบการทำงานของ ECDSA ใน Vultisig โดยพบว่าการตอบกลับจากอุปกรณ์อีกเครื่องต่อข้อความที่ถูกดัดแปลงอาจแตกต่างกันตามข้อมูลบางส่วนใน seed ภายใน และการรวบรวมคำตอบเหล่านั้นอาจทำให้อนุมาน seed ได้ ChainSecurity ระบุว่าสาเหตุอยู่ที่การจัดการข้อผิดพลาดของแอป มากกว่าตัวไลบรารีเข้ารหัสเอง
ไลบรารีทำงานบนสมมติฐานว่าเมื่อเกิดข้อผิดพลาดร้ายแรงซึ่งตรวจพบผู้ร่วมลงนามอันตราย จะต้องหยุดลงนามและเปลี่ยน seed อย่างไรก็ตาม แอปจัดการข้อผิดพลาดดังกล่าวเหมือนการลงนามล้มเหลวทั่วไป แม้ธุรกรรมจะไม่สำเร็จ หากยังอนุญาตให้ลองใหม่หลังเกิดข้อผิดพลาด ผู้โจมตีก็อาจรวบรวมคำตอบได้มากขึ้น
บันทึกการเปลี่ยนแปลงของ Vultisig สำหรับ iOS v1.45.71 ระบุว่า เมื่อเกิดข้อผิดพลาดจากการบล็อกผู้ร่วมลงนามอันตราย แอปจะไม่ให้ลองใหม่และจะหยุดการลงนาม โดยลงรายการแก้ไขเมื่อวันที่ 21 สิงหาคม ส่วน Android v1.0.118 มีการแก้ไขในแนวทางเดียวกันเมื่อวันที่ 25 สิงหาคม ทั้งสองแอปแยกข้อผิดพลาดนี้ออกจากการลงนามล้มเหลวประเภทอื่น และแจ้งเตือนผู้ใช้ บันทึกการเผยแพร่ iOS บันทึกการเผยแพร่ Android
การตรวจสอบไลบรารีกับการทบทวนการจัดการข้อผิดพลาดในแอปเป็นคนละส่วนกัน เอกสารด้านความปลอดภัยของ Vultisig ระบุว่าไลบรารีโปรโตคอล DKLS23 ที่ใช้งานผ่านการตรวจสอบโดย Trail of Bits ในปี 2024 แต่การตรวจสอบดังกล่าวครอบคลุมไลบรารี ไม่ใช่แอป Vultisig
ChainSecurity ระบุว่าไม่ได้ตรวจสอบโค้ดแพตช์ที่เผยแพร่ และไม่ได้ตรวจสอบส่วนอื่นของโปรโตคอลด้วย จากการวิเคราะห์ที่เปิดเผยและบันทึกการเปลี่ยนแปลงของแอป ยังยืนยันไม่ได้ว่ามีการโจมตีจริงหรือไม่ รวมถึงยังระบุขอบเขตทั้งหมดของเวอร์ชันและการตั้งค่า vault ที่ได้รับผลกระทบไม่ได้
กรณีนี้ชี้ให้เห็นว่าความปลอดภัยไม่ได้ขึ้นอยู่กับการแบ่งเก็บคีย์ไว้ในหลายอุปกรณ์เท่านั้น แต่ยังรวมถึงการป้องกันไม่ให้ลองใหม่หลังเกิดข้อผิดพลาดร้ายแรงด้วย มาตรการที่ยืนยันได้จากบันทึกสาธารณะคือการปรับแอปมือถือทั้งสองระบบให้หยุดลงนาม
ความคิดเห็น 0