ปัญหาหนึ่งที่ทำให้ DDoS แก้ยากและยังไม่หมดไป ส่วนหนึ่งเกิดจากความสามารถในการปลอมไอพี (Spoof IP Address) เพื่อเข้าโจมตีเป้าหมายไม่ว่าจะเป็นการปลอมเพื่อไปร้องขอใช้งาน DNS เพื่อทำให้เกิดการโจมตีที่เรียกว่า DNS Reflection/Amplification หรือไปขอเทียบเวลากับ NTP server แล้วก็เกิด Amplification ไปที่เป้าหมายก็เป็นอีกหนึ่งตัวอย่างที่เกิดจากการปลอมไอพี
วิธีการจัดการกับการปลอมไอพีถ้าในองค์กรที่ขนาดไม่ใหญ่มาก ส่วนตัวเห็นว่า ACL และ Firewall ก็เพียงพอแล้ว (แต่บางครั้งก็ต้องติดตั้ง ACL ไว้ที่เซิฟเวอร์ด้วยก็ดี เผื่อติด Malware แล้วไป DDoS ออกไปจนทำให้ Firewall/Core Switch CPU ขึ้นสูง) แต่ที่จะพูดถึงนี้คือภาพที่ใหญ่ขึ้นมาอีกหน่อย สำหรับองค์กรที่มีขนาดใหญ่ขึ้นมา หรือในระบบของ Service Provider วิธีของ uRPF ก็น่าสนใจเช่นกัน
ดังนั้นในวันนี้เราจะมาคุยเทคนิคการป้องกันการปลอมคือ Unicast Reverse Path Forwarding หรือ uRPF นั่นเอง โดยการทำงานของ uRPF จะตรวจสอบ Source IP Address กับ “ฐานข้อมูลสำหรับการส่ง” (Forwarding Information Base — FBI! — FIB ต่างหาก ^0^) ว่ามีข้อมูลที่ถูกต้องไหมซึ่ง uRPF มีสองประเภทด้วยกันคือ
- Strict mode — เป็นการตรวจสอบแบบเข้มงวด เปรียบเหมือนถ้าคุณซื้อบัตรเข้าชมงานละครเวที แล้วในบัตรเขียนว่าต้องเข้าประตู A1 เท่านั้น คุณก็จะเข้าได้เฉพาะ A1 และถ้าคุณเข้า B1 คุณจะถูกห้ามเข้า
- Looses mode — เป็นแบบ หลวม!!! รูปแบบนี้ค่อนข้างที่จะปล่อย ขอให้มีรายชื่อคุณในทะเบียน FIB ก็สามารถเข้าและออกได้อย่างอิสระ
How Strict mode work!
Example.
จากรูปด้านบน ในกรณีของ Strict Mode เครื่องที่ส่งแพคเกตจะต้องส่งเข้าจาก Serial 0/0 เท่านั้น ถ้ามาจากที่อื่น โดนดรอปหมด วิธีการพิสูจน์สูตรนี้คือ
- Source IP = 200.1.1.254 = Network 200.1.1.0/24
- 200.1.1.0/24 ได้รับการประกาศจากทาง 150.1.1.2
- IP 150.1.1.2 มีเน็ตเวิค 150.1.1.0/30 อยู่ที่ Interface serial 0/0
- ดังนั้น ด้วยกฎของคณิตศาสตร์ ป.4 จึงได้ว่า 200.1.1.254 = Serial 0/0
ในทางกลับถ้าเป็น Loose Mode การจะเข้ามาจากทาง FastEthernet0/0 ก็ได้
อาจจะมีหลายคนสงสัยว่า “มีด้วยเหรอ! ที่ต้องใช้ Loose Mode” คำตอบคือ “มี แน่นอน” บนโครงข่ายอินเทอร์เน็ตเป็นการเชื่อมต่อแบบ “อสมมาตร” (Asymmetric) เข้าอีกทาง ออกอีกทาง สลับไปมาอยู่ตลอดเวลา
อย่าลืม! การปลอมไอพีเป็นส่วนหนึ่งของการทำให้เกิด DDoS!
www.cisco.com