ซอฟต์แวร์โหนด Lightning อย่าง Eclair ปิดช่องทางที่อาจใช้ข้อมูลรับรองซึ่งบันทึกไว้ในเบราว์เซอร์ส่งคำสั่งไปยัง Node API แล้ว โดยเวอร์ชันใหม่จะปฏิเสธคำขอจากเบราว์เซอร์ แต่ยังจำเป็นต้องยืนยันตัวตน API และจำกัดการเข้าถึงเครือข่ายต่อไป
ACINQ ผู้พัฒนาเผยแพร่ Eclair v0.14.4 เมื่อวันที่ 15 ตุลาคม เวอร์ชันนี้จะตอบกลับ HTTP 403 ก่อนประมวลผล API หากคำขอมี Origin header โดยไม่ขึ้นกับค่าของ header เอกสาร API อย่างเป็นทางการของ Eclair ระบุว่าเบราว์เซอร์เป็นผู้กำหนด header นี้ และการปฏิเสธคำขอดังกล่าวช่วยป้องกันการปลอมแปลงคำขอข้ามไซต์ (CSRF) บันทึกการเผยแพร่ระบุว่า v0.14.4 ยังใช้งานร่วมกับเวอร์ชันก่อนหน้าได้
ปัญหาเกิดจากเบราว์เซอร์อาจแนบข้อมูลรับรอง HTTP Basic ที่บันทึกไว้ไปกับคำขอซึ่งเริ่มจากเว็บไซต์อื่นได้ เมื่อผู้ใช้เปิดหน้าเว็บที่เป็นอันตราย หน้านั้นจึงอาจส่งคำขอไปยัง Eclair API เพื่อสั่งงานโหนดได้ แม้หน้าเว็บดังกล่าวจะอ่านเนื้อหาการตอบกลับไม่ได้ แต่คำขอก็ยังไปถึงโหนด
Eclair API ให้บริการทั้งการตรวจสอบสถานะโหนด การเปิดและปิดช่องทาง Lightning ตลอดจนการส่งและรับการชำระเงิน เงื่อนไขที่ทำให้เสี่ยงคือเปิดใช้ API เบราว์เซอร์ของผู้ดูแลเข้าถึง API ได้ และมีการบันทึกข้อมูลรับรองไว้ ทั้งนี้ยังไม่มีรายงานขนาดความเสียหายหรือกรณีการโจมตีที่ยืนยันแล้ว
การเปลี่ยนแปลงนี้ยังกระทบเว็บอินเทอร์เฟซที่เรียก API จากเบราว์เซอร์โดยตรง แม้ส่วนหน้าเว็บจะมาจากแหล่งเดียวกัน เบราว์เซอร์ก็ไม่สามารถเรียก API ได้โดยตรง ผู้ดูแลจึงต้องวางแบ็กเอนด์แยกไว้ระหว่างเบราว์เซอร์กับ Eclair ส่วนคำขอทั่วไปจาก curl หรือ eclair-cli ยังคงใช้ API จากบรรทัดคำสั่งได้ตามเดิม เพราะไม่ได้ส่ง Origin header
การบล็อก Origin header เป็นมาตรการคัดกรองคำขอที่ผ่านเบราว์เซอร์ ไคลเอนต์ที่ไม่ใช่เบราว์เซอร์สามารถละ header นี้ได้ จึงไม่ควรเชื่อถือคำขอเพียงเพราะไม่มี header ดังกล่าว ACINQ ระบุในรายละเอียดการแก้ไขว่า มาตรการนี้ไม่ได้ใช้แทนการยืนยันตัวตน
เอกสารการตั้งค่าของ ACINQ แนะนำไม่ให้เปิด API ออกสู่ภายนอก โดยค่าเริ่มต้น API ถูกปิดใช้งาน และกำหนดที่อยู่ bind เป็น localhost 127.0.0.1 ผู้ดูแลควรรักษาการตั้งค่านี้และใช้การยืนยันตัวตนต่อไป หากต้องการอัปเดตเป็น v0.14.4 ให้หยุด Eclair โดยไม่ปิดช่องทาง จากนั้นอัปเดตเวอร์ชันและเริ่มระบบใหม่
การเปลี่ยนแปลงครั้งนี้ปิดช่องทางที่เบราว์เซอร์อาจนำข้อมูลรับรองกลับมาใช้เพื่อส่งคำสั่ง แต่ไม่ได้ขจัดความเสี่ยงจากการเปิด API ออกสู่ภายนอก ก่อนหน้านี้ TokenPost รายงานว่า Eclair แก้ไขโค้ดสองจุดเพื่อป้องกันการสูญเสียค่าธรรมเนียมในช่องทาง Lightning
ความคิดเห็น 0