วิเคราะห์การโจมตี
การโจมตีในครั้งนี้นั้นอาศัยเทคนิคซึ่งมีชื่อเรียกว่า BGP hijacking ซึ่งหมายถึงการลักลอบเปลี่ยนเส้นทางการส่งข้อมูลในอินเตอร์เน็ตด้วยการประกาศเส้นทางใหม่ออกมา
อ้างอิงจากการทำงานโดยทั่วไปของระบบอินเตอร์เน็ต การที่เว็บไซต์หรือแหล่งข้อมูลจากเชื่อมต่อหากันได้นั้นจะต้องรู้ที่อยู่และเส้นทางที่จะไปมาหาสู่กัน ที่อยู่สำหรับเรียกหาเว็บไซต์หรือแหล่งข้อมูลอื่นๆ นั้นถูกบันทึกและจัดการในรูปแบบต่างๆ ด้วยระบบ Domain Name System (DNS) ส่วนการเชื่อมต่อหากัน (routing) ถูกดำเนินการด้วยการใช้โปรโตคอลสำหรับกำหนดเส้นทาง เช่น BGP อุปกรณ์ซึ่งทำหน้าที่เป็นตัวกลางระหว่างเว็บไซต์หรือแหล่งข้อมูลนั้นจะมีการรับส่งข้อมูลอ้างอิงจากโปรโตคอล BGP ระหว่างกันเพื่อให้สุดท้ายแล้วอุปกรณ์ตัวกลางที่เชื่อมต่อกันจนเกิดเป็นอินเตอร์เน็ตทราบเส้นทางที่จะไปหาเว็บไซต์หรือแหล่งข้อมูลซึ่งที่ปลายทาง
เมื่อการแลกเปลี่ยนเส้นทางการเชื่อมต่อและระบบสำหรับอ้างอิงชื่อทำงานประสานกัน การทำงานจะปรากฎตามรูปที่ 1 กล่าวคือ เมื่อผู้ใช้มีการพยายามเข้าถึงแหล่งข้อมูลด้วยการระบุชื่อโดเมนเนม ชื่อโดเมนเนมดังกล่าวจะถูกนำไปค้นหมายเลขไอพีแอดเดรสซึ่งถูกจัดการด้วยระบบ DNS เมื่อเซิร์ฟเวอร์ DNS ได้ทำการค้นหาหมายเลขไอพีแอดเดรสซึ่งเป็นของโดเมนเนมที่ผู้ใช้งานต้องการจะเข้าถึงแล้ว เซิร์ฟเวอร์ DNS ก็จะมีการตอบข้อมูลหมายเลขไอพีแอดเดรสกลับไปเพื่อให้ผู้ใช้งานสามารถใช้หมายเลขไอพีแอดเดรสดังกล่าวในการเข้าถึงแหล่งข้อมูลที่ผู้ใช้งานต้องการเข้าถึงได้
อย่างไรก็ตามหากมีการพยายามเปลี่ยนแปลงเส้นทางขึ้นด้วยจุดประสงค์ที่มุ่งร้าย ผลลัพธ์จะเกิดขึ้นตามรูปที่ 2
แม้ว่าสิทธิ์ในการกำหนดเส้นทางการรับส่งข้อมูลบนอินเตอร์เน็ตนั้นจะถูกจำกัดให้กับผู้ให้บริการเพียงบางรายเพื่อป้องกันไม่ให้มีการประกาศเส้นทางที่ไม่ถูกต้อง ผู้ประสงค์ร้ายก็ยังคงมีวิธีการบางอย่างที่จะเลียนแบบหน้าที่ของผู้ให้บริการในการ "ประกาศเส้นทางใหม่" ได้ สำหรับในกรณีของการโจมตีเพื่อขโมยสกุลเงินดิจิตอลนั้น ผู้ประสงค์ร้ายได้ทำการประกาศเส้นทางการส่งข้อมูลใหม่ทางโปรโตคอล BGP เพื่อหลอกล่อให้ผู้ใช้งานเชื่อมต่อไปยังเซิร์ฟเวอร์ DNS ที่ผู้ประสงค์ร้ายควบคุมอยู่ ทำให้ทันทีที่ผู้ใช้งานทำการเชื่อมต่อไปยังโดเมนเนมของเว็บไซต์ที่ต้องการ ข้อมูลหมายเลขไอพีแอดเดรสที่ได้รับจึงเป็นหมายเลขไอพีแอดเดรสที่ผู้ประสงค์ร้ายต้องการให้ผู้ใช้งานเข้าถึง โดยในตัวอย่างนี้คือหน้าเว็บไซต์ปลอมของบริการ myetherwallet.com
คำแนะนำในการตอบสนองการโจมตี
การตรวจสอบการโจมตีในลักษณะของ BGP hijacking นั้นทำได้ค่อนข้างยากหากไม่ได้มีการจัดเก็บข้อมูลของการใช้งานโปรโตคอล BGP เอาไว้และคอยตรวจหาพฤติกรรมที่ผิดปกติ แต่การโจมตีก็สามารถถูกลดผลกระทบได้หากในฝั่งของเว็บไซต์ แอปพลิเคชันหรือแหล่งข้อมูลมีการอิมพลีเมนต์การป้องกันต่างๆ ดังนี้
- ใช้งานโปรโตคอล DNSSEC แทนโปรโตคอล DNS ทั่วไป โดยการใช้งานโปรโตคอล DNSSEC นั้นจะช่วยให้ผู้ใช้งานตรวจพบความผิดปกติเมื่อมีการลักลอบส่งหมายเลขไอพีแอดเดรสปลอมได้เนื่องจากไม่มีการรับรองด้วยลายเซ็นต์ดิจิตอลที่ถูกต้อง
- ใช้งานฟีเจอร์ HSTS บน HTTPS เพื่อบังคับให้การเข้าถึงเว็บไซต์หรือแหล่งข้อมูลจะต้องเกิดขึ้นใบรับรองที่ถูกต้องเสมอ หากมีข้อผิดพลาดในการเชื่อมต่อที่เกิดขึ้นจากใบรับรองซึ่งมักจะเกิดขึ้นในกรณีของการโจมตีในรูปแบบ MiTM ผู้ใช้งานก็จะไม่สามารถทำการเชื่อมต่อได้
- อิมพลีเมนต์โปรโตคอล DNS-based Authentication of Named Entities (DANE) เพื่อบังคับให้มีการ pinning ใบรับรองเมื่อมีการใช้งานโปรโตคอล DNS
- อิมพลีเมนต์และกวดขันให้มีการใช้งาน DNS over TLS ที่จะช่วยในการป้องกันการเปลี่ยนแปลงเส้นทางการเข้าถึงเว็บไซต์ให้มากขึ้น
You must be logged in to post a comment.