ความมั่นคงปลอดภัยของระบบชื่อโดเมน
ระบบชื่อโดเมนมีความสำคัญต่อการใช้งานอินเทอร์เน็ตมาก แต่ผู้ใช้งาน ทั่วไปอาจจะไม่ทราบว่ามีระบบชื่อโดเมนทำงานอยู่เบื้องหลัง หรือผู้ใช้บางกลุ่มอาจทราบว่ามีระบบชื่อโดเมน แต่อาจไม่เคยสงสัยว่าระบบชื่อโดเมนทำงานถูกต้องหรือไม่ เพราะผู้ใช้ส่วนใหญ่เชื่อว่าระบบ โดเมนเนมทำงานถูกต้องเสมอ (ผู้คนทั่วไปจะมั่นใจว่าไฟฟ้าจากการไฟฟ้านครหลวงเชื่อถือได้) หรืออาจ เชื่อว่ามีความเสี่ยงน้อยมากที่ระบบชื่อโดเมนจะทำงานผิดพลาด
เพื่อให้เห็นภาพเกี่ยวกับความมั่นคงปลอดภัยของระบบชื่อโดเมน จึงขอเริ่มจากการวิเคราะห์ความมั่นคง ปลอดภัยของระบบโดยใช้หลัก 3 ประการด้านความมั่นคงปลอดภัยคือ Confidentiality Integrity และ Availabilty ดังนี้
เนื้อหา
1. Confidentiality (ให้รู้เท่าที่ควรรู้) มีการรักษาความลับ มีการจำกัดการเข้าถึง
ซึ่งเมื่อนำหลักข้อนี้มาประยุกต์กับระบบชื่อโดเมน จะมีคำถามว่าข้อมูลในระบบโดเมนเนมเป็นความลับหรือไม่ ข้อมูลในระบบชื่อโดเมนควรปกปิดหรือเปิดเผยแค่ไหน กับใคร ทั้งนี้อาจเปรียบเทียบกับสมุดโทรศัพท์หน้าเหลืองและหน้าขาวที่มีการแจกจ่ายทั่วไปในอดีต คือควรแจกจ่ายสมุดโทรศัพท์ให้กับผู้ที่สนใจทั่วไปหรืออนุญาตเพียงแค่ให้สอบถามทีละชื่อเท่านั้น แต่ไม่ยอมให้สมุดทั้งเล่ม (โหลดข้อมูลทั้งหมด) นอกจากนี้เพื่อให้ระบบชื่อโดเมนมี Availability ที่ดี ระบบชื่อโดเมนจะมี Authority DNS Server มากกว่า 1 เครื่อง และ Authority DNS Server เหล่านั้นจะมีการถ่ายโอนข้อมูลชื่อโดเมนระหว่างกัน จึงควรป้องไม่ให้ผู้อื่นแอบสำเนาข้อมูลระหว่างการถ่ายโอนข้อมูลหรือไม่ อีกทั้งบางหน่วยงานจะแยกฐานข้อมูลชื่อโดเมน ในระบบอินเทอร์เน็ต (ภายนอกองค์กร) กับชื่อในระบบอินทราเน็ต (ภายในองค์กร์) ออกจากกัน ดังนั้นจึงต้องตรวจสอบว่าผู้สอบถามชื่อโดเมนมาจากภายในหรือภายนอกองค์กรเพื่อให้ข้อมูลชื่อโดเมนที่สอดคล้องกับนโยบายหน่วยงาน
2. Integrity (ข้อมูลถูกต้องสมบูรณ์) เปลี่ยนแปลงได้เฉพาะผู้ที่มีสิทธิเท่านั้น
ซึ่งเมื่อนำหลักข้อนี้มาประยุกต์กับระบบชื่อโดเมน ประเด็นที่ต้องพิจารณาคือข้อมูลในระบบชื่อโดเมนถูกต้องสมบูรณ์หรือไม่ เช่นเมื่อ Authority DNS Server (รูปที่ 1) ซึ่งอยู่ในอินเทอร์เน็ตให้คำตอบแล้ว คำตอบนั้นไปถึง DNS Resolver และถูกส่งต่อไปยังผู้ใช้อย่างถูกต้องสมบูรณ์โดย ไม่มีการแก้ไขเปลี่ยนแปลงคำตอบ (ทั้งโดยเจตนาและความผิดพลาดทางเทคนิค) หรือไม่ และประเด็นที่สำคัญอีกประการหนึ่งคือข้อมูลชื่อโดเมนที่อยู่ที่ Authority DNS Server ถูกแก้ไขเปลี่ยนแปลงโดยผู้มีสิทธิ เท่านั้นหรือไม่
3. Availability (มีใช้เมื่อต้องการ)
เนื่องจากระบบชื่อโดเมนจะต้องทำงานได้ทุกครั้งเมื่อผู้ใช้ เชื่อมต่ออินเทอร์เน็ต หรืออาจกล่าวได้ว่าระบบชื่อโดเมน ต้องทำงานได้ตลอดเวลา ซึ่งทำได้โดยมี DNS Resolver สำรองสำหรับผู้ใช้งาน และมี Authority DNS Server สำรองสำหรับทุกโดเมน รวมทั้ง Authority DNS Server หลักและสำรองไม่ควรอยู่ภายใน เครือข่ายคอมพิวเตอร์เดียวกัน
ความมั่นคงปลอดภัยของระบบชื่อโดเมนคือสภาวะที่ระบบชื่อโดเมนสามารถรักษาคุณสมบัติทั้ง 3ประการไว้ได้ คือมีการรักษาความลับที่เหมาะสม ข้อมูลระบบชื่อโดเมนถูกต้องสมบูรณ์ และระบบชื่อโดเมนพร้อมใช้งาน ตลอดเวลา
ภัยคุกคามต่อระบบชื่อโดเมนและแนวทางการป้องกัน เมื่อการใช้งานอินเทอร์เน็ตขยายจากหน่วยงานทางด้านการศึกษาและการวิจัยออกไปสู่หน่วยงานเอกชนและประชาชนทั่วไป อินเทอร์เน็ตจึงกลายเป็นสังคมที่มีผู้ใช้งานจากคนทุกประเภท สังคมของมนุษย์ประกอบด้วยคนดีและคนร้าย สังคมของผู้ใช้งานอินเทอร์เน็ตก็มีลักษณะเดียวกัน เมื่อคนร้ายใช้งานระบบอินเทอร์เน็ตจึงเกิดภัยคุกคามต่อระบบ
อินเทอร์เน็ตและระบบชื่อโดเมนส่งผลให้เกิดความเสียหายกับผู้ใช้งาน อินเทอร์เน็ต เช่น ผู้ร้ายแก้ไขข้อมูลระบบชื่อโดเมนทำให้ผู้ใช้ไปยัง เว็บของผู้ร้ายโดยผู้ใช้คิดว่ากำลังเชื่อมต่อกับเว็บที่ต้องการ หรือผู้ร้ายแก้ไขข้อมูลระบบชื่อโดเมนทำให้ผู้ร้ายสามารถอ่านจดหมายอิเล็กทรอนิกส์ทุกฉบับที่ส่งไปหน่วยงานนั้น ๆ ได้
การวิเคราะห์ภัยคุกคามต่อระบบชื่อโดเมนอาจจะแบ่งได้เป็น 3 ด้าน ดังนี้
- Disclosure คือ ความพยายามที่จะเข้าถึงข้อมูลโดเมนของ หน่วยงานนั้น ๆ โดยไม่ได้รับอนุญาต เนื่องจากข้อมูลในระบบชื่อโดเมนเป็นข้อมูลที่ใช้งานจริงในระดับปฏิบัติการ หากผู้บุกรุกได้ข้อมูลชื่อโดเมนทั้งหมด ก็จะสามารถคาดเดาโครงสร้างของระบบสารสนเทศในหน่วยงานนั้น ๆ ได้ และอาจะพยายามเข้าถึงระบบต่าง ๆ โดยไม่ได้รับอนุญาต หากหน่วยงานเห็นว่าควรจำกัดการเข้าถึง ข้อมูลชื่อโดเมน ก็ควรมีมาตรการป้องกันที่เหมาะสมเช่นการใช้ access control list, การใช้ transaction signature หรือการใช้เทคนิค split horizon dns เป็นต้น
- Destruction คือ ความพยายามแก้ไขเปลี่ยนแปลงข้อมูลในระบบ ชื่อโดเมนโดยไม่ได้รับอนุญาต ความพยายามแก้ไขข้อมูลเกิดขึ้นได้ทั้งขณะที่ข้อมูล DNS ส่งผ่านระบบเครือข่ายคอมพิวเตอร์ (data in transit) และเกิดขึ้นได้โดยการแก้ไขข้อมูลที่ Authority DNS Server หรือ DNS Resolver โดยตรง เหตุการณ์ที่เกิดขึ้นจริงเช่น กรณี DNS Cache Poisoning หรือ DNSpionage เป็นต้น แนวทางการป้องกันที่เหมาะสมคือการใช้งาน DNSSEC ทั้งที่ Authority DNS server และ DNS resolver การใช้เทคนิค hidden master รวมทั้งแนวปฏิบัติกรณีฉุกเฉินตาม Emergency Directive 19-01 ของ CISA ประเทศสหรัฐอเมริกา
- Denial คือ การที่ระบบชื่อโดเมนไม่สามารถให้บริการได้ ซึ่งอาจจะเกิดขึ้นเนื่องจากเหตุหลายประการ เช่นเครื่องคอมพิวเตอร์ที่ให้บริการ DNS หยุดทำงาน หรือเกิดการโจมตีระบบโดเมนเนม เช่นกรณี Dyn DNS Attack ในปี 2559 แนวทางการป้องกันที่เหมาะสมคือการมี Authority DNS Server หลายเครื่องและอยู่คนละเครือข่ายคอมพิวเตอร์ หรือมี DNS Resolver มากกว่า 1 เครื่อง หรือกำหนดค่าต่างๆของ DNS Server/Resolver ให้เหมาะสมตามแนวปฏิบัติที่ดี รวมทั้งประสานงานกับ ISP ล่วงหน้าเพื่อวางแผนการบรรเทา เหตุหากเกิดกรณี DDoS DNS Attack
สรุป
ทุกคนที่ใช้งานอินเทอร์เน็ตจะต้องใช้งานระบบชื่อโดเมนร่วมด้วยเสมอ ความมั่นคงปลอดภัยของระบบชื่อโดเมนจึงมีความสำคัญมากต่อการใช้งานอินเทอร์เน็ต หากเกิดเหตุที่ทำให้สูญเสียความมั่นคงปลอดภัยของระบบชื่อโดเมน ก็จะเกิดผลกระทบกับความมั่นคงปลอดภัยของระบบสารสนเทศต่าง ๆ ได้
อ้างอิง
- มูลนิธิศูนย์สารสนเทศเครือข่ายไทย, ความมั่นคงปลอดภัยของระบบชื่อโดเมน (Information Security in Domain Name System) https://thnic.or.th/infosecurity_dns/