Cloudflare บริษัทด้านความปลอดภัยบนอินเทอร์เน็ต ได้เผยแพร่เหตุการณ์ข้อมูล Log ที่ส่งถึงลูกค้าสูญหายถึง 55% ภายในช่วงเวลา 3.5 ชั่วโมง เนื่องมาจากข้อผิดพลาดใน log collection service เมื่อวันที่ 14 พฤศจิกายน 2024 ที่ผ่านมา
Cloudflare มีบริการ logging service อย่างครอบคลุมสำหรับลูกค้า ซึ่งช่วยให้ลูกค้าสามารถตรวจสอบการใช้งาน traffic บนระบบ และสามารถ filter การใช้งานดังกล่าวตามเงื่อนไขต่าง ๆ ซึ่ง log เหล่านี้ช่วยให้ลูกค้าสามารถวิเคราะห์ปริมาณการรับส่งข้อมูลไปยังโฮสต์ของตน เพื่อตรวจสอบเหตุการณ์ด้านความปลอดภัย, แก้ไขปัญหา, การโจมตีแบบ DDoS, รูปแบบปริมาณการรับส่งข้อมูล หรือเพื่อดำเนินการเพิ่มประสิทธิภาพของระบบ
ทั้งนี้สำหรับลูกค้าที่ต้องการวิเคราะห์ Log เหล่านี้โดยใช้เครื่องมือจากภายนอก Cloudflare มีบริการ "logpush" ที่จะรวบรวม log จาก endpoints ต่าง ๆ และส่งต่อไปยังบริการจัดเก็บข้อมูลภายนอก เช่น Amazon S3, Elastic, Microsoft Azure, Splunk, Google Cloud Storage เป็นต้น
โดย Log เหล่านี้ถูกสร้างขึ้นในระดับขนาดใหญ่ เนื่องจาก Cloudflare มีการประมวลผล Log เหตุการณ์ของลูกค้ามากกว่า 50 ล้านล้านรายการต่อวัน โดย Log ประมาณ 4.5 ล้านล้านรายการถูกส่งไปยังลูกค้า
ความผิดพลาดที่เกิดขึ้น
Cloudflare ระบุว่าข้อผิดพลาดใน logpush service ทำให้ Log ของลูกค้าสูญหายเป็นเวลา 3.5 ชั่วโมงเมื่อวันที่ 14 พฤศจิกายน 2024
ซึ่งเหตุการณ์ดังกล่าวเกิดจากการกำหนดค่าผิดพลาดใน Logfwdr ซึ่งเป็นส่วนประกอบสำคัญในระบบ Logging ของ Cloudflare ที่รับผิดชอบในการส่งต่อ Event Logs จากเครือข่ายของบริษัทไปยังระบบปลายทาง โดยการอัปเดต configuration ทำให้เกิดข้อผิดพลาดที่ทำให้เกิด "blank configuration" ทำให้ระบบมองว่าไม่มีลูกค้ารายใดที่มีการกำหนดค่าให้ส่งต่อ Log ดังนั้น Log ดังกล่าวจึงถูกลบทิ้ง
Logfwdr ได้รับการออกแบบมาพร้อมระบบ failsafe โดยค่า defaults จะส่งต่อ Log ทั้งหมดในกรณีที่มีการกำหนดค่า "blank" หรือ "invalid" เพื่อป้องกันข้อมูลสูญหาย อย่างไรก็ตาม ระบบ failsafe นี้ทำให้ปริมาณ Log ที่ได้รับการประมวลผลพุ่งสูงขึ้นอย่างมาก เนื่องจากระบบพยายามส่งต่อ Log ให้กับลูกค้าทั้งหมด
ส่งผลให้ Buftee ซึ่งเป็นระบบ distributed buffering ที่จัดเก็บ Log ชั่วคราวเมื่อระบบปลายทางไม่สามารถประมวลผล Log เหล่านั้นได้แบบเรียลไทม์ โดยระบบดังกล่าวถูกเรียกใช้งานเพื่อจัดการ Log มากกว่าความจุที่จัดเตรียมไว้ถึง 40 เท่า
Buftee มี buffer overload safeguard ของตัวเอง เช่น การจำกัดทรัพยากร และการควบคุมปริมาณ แต่ก็ล้มเหลวเนื่องจากกำหนดค่าไม่ถูกต้อง และขาดการทดสอบก่อนหน้านี้
ผลลัพธ์ก็คือภายในเวลาเพียงห้านาทีหลังจากการกำหนดค่าผิดพลาดใน Logfwdr ระบบ Buftee ก็หยุดทำงาน และต้องรีสตาร์ทใหม่ทั้งหมด ส่งผลให้การกู้คืนล่าช้าลงไปอีก และส่งผลให้ข้อมูล Log สูญหายเพิ่มมากขึ้น
มาตรการป้องกันที่เข้มงวดยิ่งขึ้นหลังจากนี้
เพื่อตอบสนองต่อเหตุการณ์ที่เกิดขึ้น Cloudflare ได้ดำเนินการหลายประการเพื่อป้องกันไม่ให้เกิดเหตุการณ์ดังกล่าวขึ้นอีก ซึ่งรวมถึงการนำระบบตรวจจับการกำหนดค่าผิดพลาด (misconfiguration detection) โดยเฉพาะ และจะแจ้งเตือนให้ทีมงานรับทราบทันทีเมื่อพบความผิดปกติในการกำหนดค่าการส่งต่อ Log
นอกจากนี้ Cloudflare ยังระบุว่า ปัจจุบันได้กำหนดค่า Buftee อย่างถูกต้องแล้วเพื่อป้องกันไม่ให้ปริมาณข้อมูล Log เพิ่มขึ้นจนทำให้ระบบหยุดทำงาน และทาง Cloudflare มีแผนที่จะทำการทดสอบ overload เป็นประจำ โดยจำลองการเพิ่มขึ้นอย่างไม่คาดคิดของปริมาณ Log เพื่อให้แน่ใจว่าขั้นตอนทั้งหมดของกลไก failsafe มีความแข็งแกร่งเพียงพอที่จะจัดการกับเหตุการณ์เหล่านี้
ที่มา : bleepingcomputer
You must be logged in to post a comment.