Electrum ออกแพตช์ช่องโหว่ความปลอดภัย แฮกเกอร์ขโมยบิตคอยน์

CoinDesk รายงานว่า Electrum กระเป๋าบิตคอยน์แบบไลต์เวต เปิดตัวเวอร์ชัน 4.8.3 เพื่อแก้ช่องโหว่ร้ายแรง หลังยืนยันว่าเซิร์ฟเวอร์ประสงค์ร้ายใช้ช่องโหว่นี้เปลี่ยนเส้นทางการจ่ายเงินของผู้ใช้ และมีเหตุขโมยเงินอย่างน้อย 1 ครั้ง ช่องโหว่ส่งผลต่อ Electrum ทุกเวอร์ชันก่อน 4.8.3 โดยนักพัฒนายังไม่เปิดเผยความเสียหายรวม จากคำแนะนำด้านความปลอดภัยเมื่อวันที่ 24 ต.ค. ผู้โจมตีอาศัยวิธีที่ Electrum จัดการธุรกรรมบิตคอยน์ที่ยังไม่ยืนยัน เพื่อแทนที่การจ่ายเงินขาออกที่ชอบด้วยกฎหมายด้วยธุรกรรมปลอม ผู้ใช้อาจเผลออนุมัติธุรกรรมเหล่านี้ขณะเพิ่มค่าธรรมเนียม Electrum เป็นกระเป๋าบิตคอยน์แบบไลต์เวตที่เชื่อมต่อเซิร์ฟเวอร์ภายนอกเพื่อดึงประวัติธุรกรรม แพร่กระจายธุรกรรม และข้อมูลเครือข่ายอื่น ต่างจากโหนดบิตคอยน์เต็มรูปแบบ ซอฟต์แวร์นี้ไม่ได้ประมวลผลทุกส่วนของกิจกรรมบล็อกเชนด้วยตัวเอง เอกสารระบุว่า Electrum ตรวจสอบธุรกรรมที่ยืนยันแล้วด้วยการตรวจสอบการชำระเงินแบบง่าย (SPV) แต่ที่ผ่านมาเชื่อถือเซิร์ฟเวอร์หลักในการแสดงธุรกรรมที่ยังไม่ยืนยัน ผู้โจมตีใช้ช่องว่างนี้สกัดธุรกรรมที่ส่งผ่านเซิร์ฟเวอร์ประสงค์ร้ายและแก้ไขก่อนถึงเครือข่ายบิตคอยน์ หลังสกัดการแพร่กระจายธุรกรรมจริง ผู้โจมตีสามารถส่งธุรกรรมทางเลือกเข้ากระเป๋า เปลี่ยนที่อยู่ผู้รับเป็นที่อยู่ที่ตนควบคุม แม้ธุรกรรมทางเลือกมีลายเซ็นไม่ถูกต้อง แต่ Electrum เวอร์ชันที่มีช่องโหว่ไม่ตรวจสอบลายเซ็นก่อนแสดงในประวัติกระเป๋า กลลวงนี้เป็นอันตรายเมื่อผู้ใช้พยายามเพิ่มค่าธรรมเนียมด้วย Replace-by-Fee (RBF) ฟีเจอร์บิตคอยน์ที่ให้ธุรกรรมที่ยังไม่ยืนยันถูกแทนที่ด้วยธุรกรรมค่าธรรมเนียมสูงกว่า เมื่อผู้ใช้อนุมัติปรับค่าธรรมเนียม อาจเซ็นธุรกรรมที่ถูกต้องซึ่งจ่ายเงินให้ผู้โจมตีโดยไม่รู้ตัว Electrum ยืนยันว่ามีการโจมตีจริงที่ทำให้สูญเสียบิตคอยน์ นักพัฒนาระบุเหตุที่ได้รับรายงานเป็นการส่วนตัว 2 กรณี เมื่อวันที่ 11 ต.ค. ผู้ใช้ชื่อ dannydeezy รายงานว่าธุรกรรมที่แสดงในประวัติ Electrum ไม่ตรงกับรายการที่ส่งเดิม วันที่ 18 ต.ค. ผู้ใช้ RajuK12 สูญเสียเงินขณะพยายามเพิ่มค่าธรรมเนียมและติดต่อนักพัฒนา ทั้งสองกรณีเกี่ยวข้องกับที่อยู่รับเงินที่ผู้โจมตีควบคุม ซึ่งออกแบบให้ตรงกับสี่อักขระสุดท้ายของที่อยู่บิตคอยน์ของผู้รับเป้าหมาย ในกรณีที่สอง ธุรกรรมปลอมมีค่าธรรมเนียมศูนย์ นักพัฒนาสงสัยว่าตั้งใจล่อให้เหยื่อเริ่มดำเนินการเพิ่มค่าธรรมเนียม กรณีแรกเป็นกระเป๋ามัลติซิกแบบ 2-of-3 ที่ใช้ Trezor สองเครื่อง ธุรกรรมจริงมี 31 อินพุตและ 1 เอาต์พุต ผู้สอบสวนพบว่าลายเซ็นทั้ง 62 รายการใช้ได้กับธุรกรรมการจ่ายเดิม แต่ใช้ไม่ได้กับธุรกรรมที่ถูกแทนที่ ธุรกรรมปลอมโอนบิตคอยน์เกือบทั้งหมดไปยังที่อยู่คล้ายกัน คืนกลับกระเป๋าเพียงส่วนเล็กน้อย ธุรกรรมเดิมยังใช้ได้แต่ไม่เคยเข้าสู่เครือข่ายบิตคอยน์สาธารณะ Electrum ยอมรับว่าจริง ๆ แล้วมีบางเซิร์ฟเวอร์โจมตีลักษณะนี้ แต่นักพัฒนาไม่เปิดเผยจำนวนเซิร์ฟเวอร์ที่เกี่ยวข้อง จำนวนเงินที่ถูกขโมย หรือมีเหยื่อรายอื่นหรือไม่ Electrum 4.8.3 บล็อกธุรกรรมเพิ่มค่าธรรมเนียมอันตราย แพตช์นี้รวมอยู่ในเวอร์ชัน 4.8.3 เมื่อวันที่ 23 ต.ค. และไฟล์ไบนารีให้ดาวน์โหลดเมื่อวันที่ 24 ต.ค. ผ่านคอมมิต 90fe308 นักพัฒนาเพิ่มการตรวจสอบลายเซ็นสำหรับธุรกรรมที่ยังไม่ยืนยันซึ่งอินพุตถูกควบคุมโดยกระเป๋าของผู้ใช้ Electrum จะตรวจสอบลายเซ็นก่อนเพิ่มธุรกรรมเหล่านี้ในประวัติภายในเครื่อง ป้องกันการจ่ายเงินขาออกปลอมตามที่ระบุในประกาศไม่ให้แสดงเป็นธุรกรรมถูกต้อง การอัปเดตนี้ไม่ได้ทำให้ Electrum กลายเป็นโหนดบิตคอยน์เต็มรูปแบบ นักพัฒนาระบุว่าธุรกรรมขาเข้าที่ยังไม่ยืนยันยังไม่ครอบคลุมด้วยการตรวจสอบลายเซ็นใหม่ และการชำระเงินที่ยืนยันแล้วยังใช้กระบวนการตรวจสอบเดิม ผู้ใช้เวอร์ชันก่อน 4.8.3 ควรดาวน์โหลดอัปเดตจากเว็บไซต์ทางการของ Electrum หากยังอัปเกรดไม่ได้ นักพัฒนาแนะนำให้ตรวจสอบที่อยู่ผู้รับแบบเต็มและจำนวนเงิน รวมถึงธุรกรรมแทนที่ค่าธรรมเนียม ก่อนเซ็น ตามประกาศ ผู้ใช้ที่เชื่อมต่อเฉพาะเซิร์ฟเวอร์ที่เชื่อถือได้ รวมถึงเซิร์ฟเวอร์ของตนเอง จะไม่รับผลกระทบจากการโจมตีผ่านเซิร์ฟเวอร์ประสงค์ร้ายนี้โดยเฉพาะ การโจมตี Electrum ในอดีตแสดงให้เห็นความเสี่ยงจากเซิร์ฟเวอร์เกิดขึ้นซ้ำ ในเดือนธันวาคม 2018 crypto.news รายงานว่าเซิร์ฟเวอร์ประสงค์ร้ายแสดงประกาศอัปเดตซอฟต์แวร์ปลอมต่อผู้ใช้ โดยประเมินความเสียหายเกือบ 1 ล้านดอลลาร์ การโจมตีเซิร์ฟเวอร์ประสงค์ร้ายอีกระลอกในปี 2019 ใช้การอัปเดตกระเป๋าปลอมและกิจกรรมปฏิเสธการให้บริการเพื่อนำผู้ใช้ไปยังซอฟต์แวร์ที่ถูกบุกรุก การโจมตีเหล่านี้อาศัยการดาวน์โหลดหลอกลวง ขณะที่ช่องโหว่ที่เพิ่งแพตช์นี้เกี่ยวข้องกับการจัดการข้อมูลธุรกรรมที่รออยู่ภายในกระเป๋าที่ดูถูกต้อง บทความในปี 2020 ที่สัมภาษณ์เรื่องเซิร์ฟเวอร์ Electrum พูดถึงข้อแลกเปลี่ยนของกระเป๋าแบบไลต์เวต รวมถึงการพึ่งพาโครงสร้างพื้นฐานภายนอกสำหรับประวัติธุรกรรม เอกสารของ Electrum ระบุว่าไคลเอนต์มักเชื่อมต่อกับเซิร์ฟเวอร์ประมาณ 10 แห่ง แต่เลือกเซิร์ฟเวอร์หลักหนึ่งแห่งเพื่อดึงประวัติกระเป๋าและแพร่กระจายธุรกรรม เอกสารยังระบุว่าเซิร์ฟเวอร์หลักนี้ได้รับความเชื่อถือในเรื่องธุรกรรมที่ยังไม่ยืนยัน