12 คะแนน โดย GN⁺ 2023-08-19 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • โดยทั่วไปเว็บแอปพลิเคชันจะทำให้เซสชันหมดอายุหลังครบเวลาที่กำหนดตายตัว หรือหลังจากผู้ใช้ไม่มีการใช้งานช่วงหนึ่ง และคำแนะนำด้านความปลอดภัยในปัจจุบันก็มักเสนอให้ใช้การหมดเวลาเซสชันแบบสั้น (short session expiration)
  • อย่างไรก็ตาม เว็บแอปพลิเคชันยอดนิยมจำนวนมากอย่าง Gmail หรือ GitHub ไม่ได้ปฏิบัติตามแนวทางนี้ จึงทำให้เกิดคำถามว่าการตั้งเวลาเซสชันให้สั้นนั้นช่วยเสริมความปลอดภัยได้อย่างมีประสิทธิภาพจริงหรือไม่
  • โมเดลภัยคุกคามที่นำมาพิจารณารวมถึงผู้โจมตีที่เข้าถึงเซสชันที่ยังใช้งานอยู่ของผู้ใช้โดยไม่ได้รับอนุญาต ผ่านหลายวิธี เช่น การขโมยคุกกี้เซสชัน การใช้ประโยชน์จากช่องโหว่ session fixation หรือการใช้เครื่องเดียวกับเหยื่อ
  • เมื่อต้องพูดถึงสถานการณ์ที่การหมดเวลาเซสชันแบบสั้นอาจมีประโยชน์ มักจะยกตัวอย่างผู้โจมตีที่ค้นพบโทเค็นเซสชันเก่าจากบันทึกหรือคอมพิวเตอร์ที่ถูกขโมยไป แต่สิ่งนี้เป็นเหตุผลสนับสนุนการหมดอายุของเซสชันโดยทั่วไป มากกว่าจะเป็นเหตุผลว่าทำไมจึงต้องสั้นเป็นพิเศษ
  • ปัญหาของคอมพิวเตอร์สาธารณะที่มีการใช้ร่วมกันนั้น ในความเป็นจริงไม่ได้เกี่ยวข้องกับเว็บแอปพลิเคชันส่วนใหญ่ และผู้โจมตีที่เข้าถึงอุปกรณ์ที่ปลดล็อกอยู่ก็ไม่จำเป็นต้องใช้เซสชันที่ยังใช้งานอยู่ เพราะสามารถสร้างเซสชันใหม่เพื่อหลีกเลี่ยงข้อจำกัดได้
  • กล่าวคือ เซสชันสั้นอาจมีข้อเสียทั้งต่อประสบการณ์ผู้ใช้และต่อความปลอดภัย และการบังคับให้ยืนยันตัวตนซ้ำบ่อย ๆ อาจผลักให้ผู้ใช้หันไปใช้พฤติกรรมที่ปลอดภัยน้อยลง
  • ข้อสรุปคือ โทเค็นเซสชันโดยทั่วไปมีความปลอดภัยอยู่แล้ว และการโจมตีที่ป้องกันได้ด้วยการตั้งเวลาเซสชันสั้นนั้นพบได้ไม่บ่อย ขณะที่มาตรการอื่น เช่น การเข้ารหัสดิสก์และการล็อกคอมพิวเตอร์ อาจให้ความปลอดภัยที่มีประสิทธิภาพมากกว่า
  • บริษัทใหญ่ เช่น Facebook, Google, Amazon และ GitHub ต่างมีเซสชันที่ไม่หมดอายุ ซึ่งดูเหมือนว่าพวกเขามองว่าความเสี่ยงนี้อยู่ในระดับที่ยอมรับได้

1 ความคิดเห็น

 
GN⁺ 2023-08-19
ความเห็นจาก Hacker News
  • การหมดอายุเซสชันแบบสั้นพบได้บ่อยในแอปธนาคารและการเงิน ซึ่งพอจะอธิบายได้จากฐานผู้ใช้ที่กว้าง ความน่าดึงดูดต่อผู้โจมตีแบบฉวยโอกาส และลักษณะการใช้งานภายใต้ความเครียดหรือสถานการณ์ผิดปกติ
  • เมื่อไม่มี backchannel ที่เชื่อถือได้จนผู้ให้บริการตัวตนไม่สามารถแจ้งบริการให้ทราบว่าเซสชันหมดอายุได้ การหมดอายุเซสชันแบบสั้นจึงมักถูกใช้เพื่อชดเชยข้อบกพร่องของมาตรฐานการยืนยันตัวตน
  • ความเสี่ยงจากการใช้งานแอปพลิเคชันบนอุปกรณ์ที่ใช้ร่วมกันเป็นประเด็นสำคัญ และโดยเฉพาะในสภาพแวดล้อมที่มีการแชร์อุปกรณ์กัน เช่น ภายในครอบครัว การหมดอายุเซสชันก็ควรเป็นแบบเฉพาะต่อแอปพลิเคชัน
  • ผู้ใช้บางส่วนให้เหตุผลว่าการหมดอายุเซสชันแบบสั้นถูกใช้เป็นมาตรการความปลอดภัยโดยแลกกับการใช้งานที่แย่ลง พร้อมยกตัวอย่างระบบชำระเงินด้วยตนเอง
  • คอมพิวเตอร์สาธารณะที่ไม่มีการแยกผู้ใช้เป็นเรื่องที่มีอยู่จริง และมักถูกใช้เพื่อเข้าถึงเว็บแอปพลิเคชันที่มีข้อมูลอ่อนไหว
  • บทความนี้ถูกวิจารณ์ว่าอาศัยสมมติฐานที่ไม่มีหลักฐานรองรับ และตัดความเป็นไปได้ของเซสชันแบบสั้นในฐานะมาตรการควบคุมความปลอดภัยโดยอิงจากภาพการใช้งานของผู้ใช้ปลายทางที่เป็นเพียงจินตนาการ
  • ผู้ใช้บางส่วนมองว่าการที่ Google เลือกไม่ใช้เซสชันแบบสั้นอาจมาจากความต้องการเก็บข้อมูลผู้ใช้เพื่อการโฆษณามากกว่าความกังวลด้านความปลอดภัย
  • เซสชันแบบสั้นอาจไม่เป็นมิตรต่อผู้ใช้และสร้างความไม่สะดวก โดยเฉพาะเมื่อมันขัดจังหวะขั้นตอนการทำงานและบังคับให้ยืนยันตัวตนใหม่โดยไม่มีการเตือนล่วงหน้า
  • ผู้ใช้บางส่วนชอบระยะเวลาเซสชันที่ยาวกว่า และมองว่าการจำกัดเวลาเซสชันแบบสั้นนั้นไม่มีประสิทธิภาพ ใช้เพียงเพื่อให้ผ่านการตรวจแบบเช็กบ็อกซ์ของผู้ตรวจสอบและเพนเทสเตอร์
  • มีความแตกต่างระหว่างการจำกัดเวลาเซสชันแบบ soft ที่รีเซ็ตตามกิจกรรมของผู้ใช้ กับการจำกัดเวลาเซสชันแบบ hard ที่ยุติเซสชันหลังเวลาที่กำหนดโดยไม่คำนึงถึงกิจกรรมของผู้ใช้