ไคลเอนต์อีเธอเรียมออกแพตช์ช่องโหว่ที่อาจเปลี่ยนเส้นทางรางวัล ETH

ข้อผิดพลาดด้านการเข้ารหัสของบริษัทออกใบรับรองในอินเดียได้ลุกลามมาถึงอีเธอเรียม และอาจเปิดทางให้ผู้โจมตีแอบเปลี่ยนเส้นทางรางวัลบล็อกของแวลิเดเตอร์บางรายไปยังตัวเอง Teku ซึ่งเป็นซอฟต์แวร์ที่แวลิเดเตอร์จำนวนมากใช้รันฝั่ง proof-of-stake ของอีเธอเรียม ออกเวอร์ชัน 26.10.3 เมื่อวันอังคาร ส่วน Besu ซึ่งประมวลผลธุรกรรมอีเธอเรียม ออกเวอร์ชัน 26.10.2 เมื่อวันจันทร์ ทั้งสองอัปเดตยกเลิกการเชื่อถือใบรับรองที่เกี่ยวข้องกับ eMudhra ซึ่งเป็นหน่วยออกใบรับรองของอินเดีย ในอิมเมจ Docker ซึ่งเป็นแพ็กเกจสำเร็จรูปที่ผู้ให้บริการจำนวนมากใช้งาน แวลิเดเตอร์คือคอมพิวเตอร์ที่สเตก ETH เพื่อรักษาความปลอดภัยให้อีเธอเรียม และรับค่าธรรมเนียมจากการเสนอบล็อก แวลิเดเตอร์บางรายสื่อสารกับบริการอื่นผ่านอินเทอร์เน็ต และต้องพึ่งใบรับรองดิจิทัลเพื่อยืนยันว่ากำลังเชื่อมต่อกับบริการที่ถูกต้อง เมื่อวันที่ 17 ต.ค. นักวิจัยพบว่าคีย์ส่วนตัวเบื้องหลังหน่วยออกใบรับรองระดับกลาง 8 แห่งของ eMudhra ถูกสร้างขึ้นด้วยความสุ่มต่ำเกินไป หมายความว่าสามารถคำนวณคีย์เหล่านั้นได้จากตัวใบรับรองซึ่งเป็นข้อมูลสาธารณะ ผู้ที่ถือคีย์เหล่านี้สามารถออกใบรับรองที่ซอฟต์แวร์ซึ่งยังไม่ได้รับการแพตช์จะยอมรับว่าเป็นของจริง เบราว์เซอร์บล็อกใบรับรองเหล่านี้ eMudhra เพิกถอนในอีกหนึ่งวันถัดมา และต่อมาบริษัทระบุว่าจะออกจากธุรกิจให้บริการออกใบรับรอง Java ซึ่งเป็นภาษาการเขียนโปรแกรมที่ Teku และ Besu ใช้ทำงาน ไม่ตรวจสอบว่าใบรับรองถูกเพิกถอนหรือไม่โดยค่าเริ่มต้น ดังนั้นอิมเมจ Docker ของ Teku จึงยังเชื่อถือใบรับรองที่ไม่ดีต่อไป แม้เบราว์เซอร์จะเลิกยอมรับแล้ว ผู้โจมตีที่แทรกอยู่ระหว่างแวลิเดเตอร์กับบริการที่เชื่อมต่ออาจปลอมตัวเป็นบริการนั้น ในคำแนะนำด้านความปลอดภัย Teku ระบุว่าแวลิเดเตอร์ที่ถูกหลอกด้วยวิธีนี้อาจเสนอบล็อกที่จ่ายค่าธรรมเนียมไปยังที่อยู่ของผู้โจมตี ตัวลงนามภายนอกปลอม ซึ่งเป็นบริการแยกที่เก็บคีย์ของแวลิเดเตอร์ อาจส่งลายเซ็นที่ใช้เปลี่ยนปลายทางของรางวัลให้ผู้โจมตีได้ ซึ่ง Teku จัดเป็นรูปแบบที่มีความเสี่ยงสูงสุด ทีมระบุว่า “โหนด Teku บนเมนเน็ตที่ใช้ค่าตั้งต้นไม่ได้รับผลกระทบและไม่จำเป็นต้องดำเนินการใด ๆ” พร้อมเสริมว่า “ยังไม่มีรายงานการถูกโจมตี” Consensys Diligence พันธมิตรด้านความปลอดภัยของ Teku เป็นผู้พบปัญหานี้ก่อน ผู้ให้บริการที่รัน Teku หรือ Besu บนเครื่องของตนเองโดยไม่ใช้ Docker ต้องอัปเดต Java เอง เนื่องจากการอัปเดตซอฟต์แวร์อีเธอเรียมไม่ได้แตะรายการใบรับรองที่ Java เชื่อถือ อิมเมจ Docker ใหม่ก็ไม่แก้ไข Java ที่ติดตั้งบนโฮสต์เช่นกัน ผู้ที่ยังใช้ Java 26 จะแก้ไขได้ยากกว่า Teku ระบุว่าเวอร์ชันนี้หมดอายุการสนับสนุนแล้วและจะไม่ได้รับบิลด์ที่แพตช์แล้ว ผู้ให้บริการเหล่านั้นจึงต้องย้ายไปใช้ Java 25