ปัญหาความปลอดภัยจากการออกแบบของ Ruby on Rails (RoR) อาจจะทำให้หลายบริการตกอยู่ในความเสี่ยงที่แฮกเกอร์สามารถนำ cookie เดิมมาใช้งานซ้ำได้ เพราะการจัดเก็บข้อมูลซ้ำ ทำให้เว็บแอพพลิเคชั่นที่ไม่ระวัง กลับใส่ข้อมูลการล็อกอินเอาไว้ใน CookieStore ทำให้แฮกเกอร์ที่ดักจับ cookie จากเบราว์เซอร์ผู้ใช้ได้สามารถนำกลับมาใช้ใหม่ได้เรื่อยๆ แม้ว่าผู้ใช้จะล็อกเอาต์ไปแล้ว
กระบวนการนี้ไม่ได้เป็นปัญหาของ Rails โดยตรงเพราะที่จริงแล้วมี ActiveRecordStore ให้เลือกใช้ และลบข้อมูลออกไปเมื่อผู้ใช้ล็อกเอาต์ แต่ค่าเริ่มต้นของ Rails ที่ใช้ CookieStore แล้วยืนยันว่า cookie เป็นข้อมูลที่ได้รับจากเซิร์ฟเวอร์ด้วยกระบวนการ "เซ็น" (sign) จากการแฮชข้อมูลรวมกับค่าข้อมูลลับ การยกเลิกข้อมูลที่เซ็นไปแล้วนี้มีทางเดียวคือการขอให้เบราว์เซอร์ลบข้อมูลนี้ทิ้งไป แต่เมื่อแฮกเกอร์ดักข้อมูลนี้ได้ แฮกเกอร์ก็สามารถนำค่านี้กลับมาใช้งานได้เรื่อยๆ
ปัญหานี้มีผลกระทบตั้งแต่ Rails รุ่น 2.0 ถึง 4.0 การแก้ไปใช้ ActiveRecordStore จะมีปัญหาต้องแก้แอพพลิเคชั่นและต้องวางแผนเมื่อใช้งานข้อมูลจากหลายฐานข้อมูล
ที่มา - Maverick Blogging, Threat Post
Comments
รับเขียน Ruby on Rails ประสบการณ์กว่า 4 ปี
สนใจติดต่อ 087-8242032