Aikido ทดลองสร้างและลบคีย์ใหม่หลายครั้ง จากนั้นส่งคำขอ authentication ซ้ำ ๆ หลังการลบ ผลการทดสอบ 10 ครั้งในช่วงสองวันพบว่าคีย์ยังคงยืนยันตัวตนได้จนกว่าการกระจายข้อมูลการยกเลิกจะเสร็จสมบูรณ์ ทำให้เกิดช่วงเวลา 8–23 นาที ที่คีย์ยังทำงานได้
กล่าวอีกอย่างคือ คีย์ที่แสดงว่า "deleted" ในระบบ อาจยังทำงานได้จริงในบางส่วนของแพลตฟอร์มช่วงสั้น ๆ
ในสถานการณ์ที่ API key ถูกขโมยหรือรั่วไหล การลบคีย์ทันทีถือเป็นขั้นตอนสำคัญในการหยุดการโจมตี แต่ช่องว่างนี้หมายความว่า ผู้โจมตีอาจยังใช้คีย์ต่อได้แม้ผู้ดูแลระบบจะลบไปแล้ว
หากผู้โจมตียังถือคีย์อยู่ในช่วงเวลาดังกล่าว พวกเขาอาจสามารถ:
นักวิจัยระบุว่าการทดสอบใช้คีย์ที่เปิดสิทธิ์กับ Gemini และพบพฤติกรรมเดียวกันกับ API อื่นของ Google Cloud เช่น BigQuery และ Google Maps ซึ่งแสดงว่าปัญหานี้เกี่ยวข้องกับ ประเภท credential ของ API key เอง ไม่ได้จำกัดอยู่ที่บริการใดบริการหนึ่ง
ตามรายงานการเปิดเผยช่องโหว่ Google ในช่วงแรกมองว่าพฤติกรรมนี้เป็นเพียง propagation delay ซึ่งเป็นผลตามธรรมชาติของระบบแบบกระจาย มากกว่าจะเป็นช่องโหว่ด้านความปลอดภัย และรายงานถูกปิดในตอนแรกพร้อมคำอธิบายว่า "won’t fix"
อย่างไรก็ตาม ภายหลังมีการทบทวนรายงานอีกครั้ง และปัญหานี้ถูกเปิดใหม่ภายในระบบติดตามบั๊กของบริษัท โดยถูกจัดระดับเป็น P0 bug ซึ่งหมายถึงประเด็นที่มีความสำคัญสูงและต้องตรวจสอบอย่างเร่งด่วน
จนกว่าจะมีการรับประกันว่าการยกเลิกคีย์เกิดขึ้นทันที ทีมพัฒนาและทีมความปลอดภัยควรถือว่าการลบ API key ไม่ได้ตัดการเข้าถึงทันที
มองการลบคีย์เป็นเพียงการจำกัดความเสียหายชั่วคราว
ควรเผื่อเวลาความเสี่ยงประมาณ สูงสุดราว 30 นาที ที่คีย์อาจยังถูกใช้งานได้
ติดตาม log และค่าใช้จ่ายหลังการลบคีย์
หากพบคำขอ API หรือการใช้งานที่ผิดปกติทันทีหลังลบ อาจเป็นสัญญาณว่าคีย์ยังถูกใช้งานในช่วง propagation delay
จำกัดสิทธิ์ของ API key ให้มากที่สุด
Google แนะนำให้กำหนดข้อจำกัด เช่น IP address, referrer ของเว็บไซต์ หรือจำกัดเฉพาะ API ที่จำเป็น เพื่อลดความเสียหายหากคีย์รั่วไหล
หมุนเวียนคีย์และเปลี่ยน credential อย่างรวดเร็ว
แทนที่จะพึ่งการลบเพียงอย่างเดียว ควรสร้างคีย์ใหม่และอัปเดตบริการต่าง ๆ ให้ใช้คีย์ใหม่โดยเร็ว
กรณีนี้สะท้อนความจริงสำคัญของระบบคลาวด์ขนาดใหญ่: การเปลี่ยนแปลงการตั้งค่าหรือ credential มักไม่ได้มีผลทันทีทั่วทั้งระบบ แต่จะ ค่อย ๆ กระจายไปยังโครงสร้างพื้นฐานทั้งหมด
สำหรับทีมพัฒนาและทีมความปลอดภัย บทสรุปที่สำคัญคือ: คำว่า “ลบแล้ว” ไม่ได้หมายความว่า “หยุดทำงานทันทีเสมอไป” ดังนั้นแผนตอบสนองเหตุการณ์ (incident response) ควรคำนึงถึงช่วงเวลาการกระจายข้อมูลนี้ทุกครั้งที่ต้องยกเลิก credential สำคัญ
Comments
0 comments