แมวที่แจ้งเตือนการโจมตี DDoS
- ตอนที่ผู้เขียนทำงานอยู่ที่สตาร์ทอัป ยังไม่มีการจัดเวร on-call อย่างเป็นทางการ
- ตั้งใจไม่ทำ เพราะ on-call เป็นงานที่ทรมาน
- จึงให้สมาชิกทีมช่วยกันคอยสังเกตการแจ้งเตือนฉุกเฉินแทน
- เช้ามืดวันหนึ่งราวตี 3 ผู้เขียนตื่นขึ้นมาเพราะแมวมาเลียทำความสะอาดผมให้
- ปกติการ grooming ของแมวไม่ใช่เรื่องแปลก แต่ครั้งนี้เป็นครั้งแรกในรอบ 9 ปีที่มันทำแบบนั้นตอนผู้เขียนกำลังหลับ
- เมื่อตรวจดูโทรศัพท์ ก็พบว่าไม่กี่นาทีก่อนหน้านั้นมีการแจ้งเตือนจาก AWS CloudWatch
- เป็นการแจ้งเตือนเกี่ยวกับ target ที่ผิดปกติใน load balancer
- เมื่อเข้าเว็บไซต์ของบริษัทไม่ได้ จึงไปเปิดดูแดชบอร์ดมอนิเตอร์ริง
- พบว่ามีคำขอจำนวนมากไหลเข้ามาจาก IP จำนวนมาก และส่วนใหญ่เป็น IP จากต่างประเทศ
- เนื่องจากผลิตภัณฑ์ของบริษัทใช้งานได้เฉพาะในสหรัฐฯ ทราฟฟิกจากต่างประเทศจึงไม่ใช่เรื่องปกติ
- จึงรู้ได้ว่านี่คือการโจมตีแบบ Distributed Denial of Service (DDoS)
- ตอนแรกพยายามจะบล็อก IP ในระดับเซิร์ฟเวอร์ แต่ก็นึกขึ้นได้ว่าได้ตั้งค่า AWS WAF (Web Application Firewall) ไว้อยู่แล้ว
- จึงตั้งกฎเพื่อบล็อกคำขอจากประเทศอื่น ๆ เพื่อรับมือกับเหตุขัดข้องเฉียบพลันทันที
- มาตรการนี้ช่วยบล็อกคำขอได้หลายแสนครั้ง และทำให้เว็บไซต์กลับมาใช้งานได้อีกครั้ง
- ภายหลังพบว่าตอนที่การโจมตีเริ่มขึ้น มีอีเมลส่งเข้ามาที่อีเมลฝ่ายสนับสนุนลูกค้า
- ผู้ส่งอ้างด้วยไวยากรณ์ที่ย่ำแย่ว่าพบช่องโหว่ของเว็บไซต์ที่ทำให้ Apache ล่มได้ ทั้งที่บริษัทไม่ได้ใช้ Apache ด้วยซ้ำ
- อีกฝ่ายบอกว่าจะส่ง "ไฟล์โซลูชัน" ให้หากโอน Bitcoin จำนวน 5,000 ดอลลาร์ แต่ผู้เขียนเลือกที่จะไม่ตอบกลับ
- ผู้เขียนยังคงแทบไม่อยากเชื่อกับจังหวะเวลาที่สมบูรณ์แบบที่แมวปลุกตัวเอง
- อาจเดาได้ว่าโทรศัพท์สั่นหรือมีเสียงจากการแจ้งเตือนของ AWS จนทำให้แมวตื่นก่อน แต่ตอนกลางคืนผู้เขียนเปิดโหมดห้ามรบกวนไว้
- ดังนั้นผู้เขียนจึงอยากเชื่อว่าแมวรับรู้ได้ไม่ทางใดก็ทางหนึ่งว่ามีปัญหาที่รอถึงเช้าไม่ได้
- และนี่เป็นวิธีตื่นมารับเหตุที่น่าพึงพอใจกว่าการถูกปลุกด้วย PagerDuty alarm มาก
ความเห็นของ GN⁺
- ในช่วงแรกของสตาร์ทอัป การมีเวร on-call อย่างเป็นทางการอาจทำได้ยากจริง แต่ก็ควรมีอย่างน้อยระบบมอนิเตอร์ริงและระบบแจ้งเตือนพื้นฐาน การให้สมาชิกทีมทุกคนอยู่ในสภาพพร้อมตลอดเวลาไม่ใช่สิ่งที่ยั่งยืน
- การตั้งค่า AWS WAF ไว้ล่วงหน้าดูจะช่วยให้รับมือในสถานการณ์เร่งด่วนได้ง่ายขึ้น เป็นตัวอย่างที่แสดงให้เห็นถึงความสำคัญของมาตรการเชิงป้องกันด้านความปลอดภัย
- การเลือกไม่ตอบอีเมลของผู้โจมตีเป็นการตัดสินใจที่ชาญฉลาด เพราะการยอมจำนนต่อการข่มขู่อาจนำไปสู่ปัญหาใหญ่กว่าเดิม
- หากนำระบบตรวจจับความผิดปกติที่อิงแมชชีนเลิร์นนิงมาใช้ อัลกอริทึมอาจตรวจพบการโจมตีแบบนี้ได้เร็วกว่าต้องรอให้แมวมาเตือน แต่ก็คงไม่ควรประเมินสัญชาตญาณของสัตว์เลี้ยงต่ำเกินไป
1 ความคิดเห็น
ความเห็นจาก Hacker News