Tình hình triển khai tiêu chuẩn DNSSEC trên thế giới

04:36 PM 22/11/2017 In bài viết

1. Hệ thống DNS và vấn đề an toàn thông tin

Hệ thống máy chủ tên miền DNS (Domain Name System) đóng vai trò dẫn đường trên Internet, được coi là một hạ tầng lõi trọng yếu của hệ thống Internet toàn cầu. Do tính chất quan trọng của hệ thống DNS, đã có nhiều cuộc tấn công, khai thác lỗ hổng của hệ thống này với quy mô lớn và tinh vi với mục đích làm tê liệt hệ thống này hoặc chuyển hướng một tên miền nào đó đến một địa chỉ IP khác.

Trên thế giới, đã có nhiều cuộc tấn công làm thay đổi dữ liệu tên miền, chuyển hướng website được thực hiện, gây hậu quả nghiêm trọng, điển hình như các cuộc tấn công vào tên miền .pr (2009), hệ thống DNS ở Tunisia (2010), hệ thống của công ty cung cấp chứng thư số Diginotar của Hà Lan (2011), hệ thống DNS tại Malaysia (tháng 7/2013)... Các cuộc tấn công này đã gây ra các hậu quả nghiêm trọng như nhiều công ty bị phá sản, bị thay đổi nội dung trên website, ảnh hưởng tới người dùng dịch vụ...

Một số kịch bản tấn công hệ thống DNS phổ biến gồm:

- DNS spoofing (DNS cache poisoning): Đây là một phương pháp tấn công máy tính nhờ đó mà dữ liệu được thêm vào hệ thống cache của các máy chủ DNS. Từ đó, các địa chỉ IP sai (thường là các địa chỉ IP do attacker chỉ định) được trả về cho các truy vấn tên miền nhằm chuyển hướng người dùng tư một website này sang một website khác.

Để khai thác theo hướng này, tin tặc lợi dụng lỗ hổng của phần mềm DNS, do các DNS responses không được xác nhận để đảm bảo chúng được gửi từ các máy chủ được xác thực, các bản ghi không đúng sẽ được nhớ đệm lại và phục vụ cho các người sử dụng khác.

- Giả mạo máy chủ DNS: Đây là cách một số phần mềm quảng cáo hay trojan thường hay thực hiện. Đầu tiên, chúng dựng lên các máy chủ DNS, giống với chức năng máy chủ DNS thông thường. Tuy nhiên, các máy chủ DNS này có khả năng điều khiển được để thêm, bớt hay chỉnh sửa các bản ghi DNS nhằm chuyển hướng người dùng tới các địa chỉ IP không chính xác với mục đích: gia tăng quảng cáo, cài mã độc, thay đổi kết quả tìm kiếm…

Để thực hiện hành vi này, các phần mềm độc hại sau khi được cài vào máy tính người dùng, chúng sẽ tìm cách để thay đổi cấu hình DNS của người dùng thành địa chỉ DNS của phần mềm đã thiết lập từ trước. Qua đó, các truy vấn DNS của người dùng thay vì đi qua các máy chủ DNS của ISP hoặc do người dùng thiết lập thì lại đi qua các máy chủ DNS của kẻ tấn công.

Hình 1. Mô hình triển khai DNSSEC

Hình 1. Mô hình triển khai DNSSEC

2. Quá trình nghiên cứu và triển khai tiêu chuẩn DNSSEC trên thế giới

Để giải quyết các nguy cơ ở trên, ngay từ năm 1990, các giải pháp khắc phục đã được nghiên cứu. Năm 1995, giải pháp Tiêu chuẩn An toàn bảo mật mở rộng hệ thống máy chủ DNS (DNSSEC) được công bố, năm 2001 được xây dựng thành các tiêu chuẩn RFC dự thảo và cuối cùng được IETF chính thức công bố thành tiêu chuẩn RFC vào năm 2005.

DNSSEC dựa trên nền tảng mã hoá khoá công khai (PKI), thực hiện ký số trên các bản ghi DNS để đảm  bảo tính xác thực, toàn vẹn của cặp ánh xạ tên miền - địa chỉ IP, tất cả các thay đổi bản ghi DNS đã được ký số sẽ được phát hiện. Kể từ khi được chuẩn hoá năm 2005, DNSSEC đã nhanh chóng được triển khai rộng rãi trên mạng Internet.

DNSSEC cung cấp một cơ chế xác thực giữa các máy chủ DNS với nhau theo cấu trúc hình cây của hệ thống DNS, bắt đầu từ máy chủ ROOT DNS.

Việc xây dựng được chuỗi tin cậy trong DNSSEC là bắt buộc, là cơ sở đảm bảo xác thực nguồn gốc và toàn vẹn dữ liệu trong DNSSEC. Chuỗi tin cậy được thực hiện từng bước, bắt đầu từ hệ thống máy chủ tên miền gốc (DNS ROOT) đến các máy chủ TLD, cho tới các hệ thống DNS cấp dưới. Sau khi được triển khai đầy đủ, việc tin tặc tấn công hệ thống DNS, chuyển hướng tên miền sẽ bị phát hiện và ngăn chặn.

Hình 2. Quá trình triển khai DNSSEC trên thế giới

Hình 2. Quá trình triển khai DNSSEC trên thế giới

Triển khai DNSSEC trên hệ thống máy chủ tên miền gốc (DNS ROOT) là một điều kiện quan trọng, tiên quyết trong việc triển khai DNSSEC trên các tên miền cấp cao dùng chung (gTLD), các tên miền mã quốc gia (ccTLD). Trên cơ sở đó, các hệ thống DNS quốc gia mới triển khai DNSSEC một cách đầy đủ, toàn diện trên hệ thống của mình. Ngày 15/10/2010, ICANN đã chính thức triển khai DNSSEC trên hệ thống DNS ROOT.

Sau khi ICANN chính thức triển khai DNSSEC trên hệ thống DNS ROOT, các TLDs (bao gồm gTLD, ccTLD) đã từng bước triển khai chính thức DNSSEC trên hệ thống DNS của mình. Tính đến hết tháng 26/9/2016, hiện đã có 1496 TLDs trên hệ thống DNS ROOT, 1348 TLD trong số đó đã được ký, 1336 TLD đã cập nhật hóa công khai (DS Record) lên hệ thống máy chủ DNS ROOT.

Theo thống kê của tổ chức ICANN, việc phát triển và vận hành DNSSEC trên thế giới tính đến 20/6/2016 đã có 76 nước triển khai và áp dụng cho hệ thống máy chủ tên miền quốc gia, gồm:

  • 30 quốc gia thuộc khu vực Châu Âu.
  • 23 quốc gia thuộc khu vực Châu Á – Thái Bình Dương (trong đó có Việt Nam).
  • 11 quốc gia thuộc khu vực Mỹ Latinh.
  • 9 quốc gia thuộc khu vực Châu Phi.
  • 3 quốc gia thuộc khu vực Bắc Mỹ.

Hình 3. Triển khai và thử nghiệm DNSSEC tại các khu vực trên thế giới

Hình 3. Triển khai và thử nghiệm DNSSEC tại các khu vực trên thế giới

3. Bộ tiêu chuẩn DNSSEC

Hệ thống tiêu chuẩn DNSSEC (Domain Name System Security Extensions) – Giao thức mở rộng bảo mật hệ thống tên miền là hệ thống tiêu chuẩn do Nhóm chuyên trách kỹ thuật Internet - Internet Engineering Task Force (IETF) phát hành. Sau khi công bố phiên bản DNSSEC đầu tiên (RFC 2065) vào năm 1997 đến nay, IETF đã công bố và bổ sung nhiều tiêu chuẩn về vấn đề bảo mật DNSSEC.

  • Tiêu chuẩn kỹ thuật cần tuân thủ

Việc triển khai DNSSEC bắt buộc phải tuân thủ các tiêu chuẩn quốc tế đã được  ban hành. Bao gồm:

Bộ tiêu chuẩn cơ bản nhất về DNSSEC (công bố năm 2005):

  • RFC 4033: “DNS Security Introduction and Requirements” phát hành năm 2005 về Giới thiệu và yêu cầu bảo mật cho DNS.
  • RFC 4034: “Resource Records for the DNS Security Extensions” phát hành năm 2005 về Các bản ghi tài nguyên cho các phần mở rộng bảo mật DNSSEC.
  • RFC 4035: “Protocol Modifications for the DNS Security Extensions” phát hành năm 2005 về Sửa đổi giao thức cho các phần mở rộng bảo mật DNSSEC.

Các tiêu chuẩn DNSSEC bổ sung có thể phân loại như sau:

  • Nhóm tiêu chuẩn DNSSEC về Trust Anchor:
  • RFC 4986: “Requirements Related to DNS Security (DNSSEC) Trust Anchor Rollover” phát hành năm 2007 về Các yêu cầu liên quan đến Trust Anchor Rollover bảo mật DNS.
  • RFC 5011: “Automated Updates of DNS Security (DNSSEC) Trust Anchors” phát hành năm 2007 về Các cập nhật tự động cho các Trust Anchor bảo mật DNS.
  • RFC 6024: “Trust Anchor Management Requirements” phát hành năm 2010 về Các yêu cầu quản lý Trust Anchor.
  • RFC 7646: “Definition and Use of DNSSEC Negative Trust Anchors” phát hành năm 2015 về Định nghĩa và sử dụng các Trust Anchor phủ định DNSSEC.
  • Nhóm tiêu chuẩn DNSSEC về các bản ghi NSEC và NSEC3:
  • RFC 4470: “Minimally Covering NSEC Records and DNSSEC On-line Signing” phát hành năm 2006 về Các bản ghi an toàn tiếp theo bao phủ tối thiểu và ký trực tuyến DNSSEC.
  • RFC 5155: “DNS Security (DNSSEC) Hashed Authenticated Denial of Existence” phát hành năm 2008 về Xác thực từ chối sự tồn tại sử dụng hàm băm trong bảo mật DNS.
  • RFC 7129: “Authenticated Denial of Existence in the DNS” phát hành năm 2014 về Xác thực từ chối sự tồn tại trong DNS.
  • Nhóm tiêu chuẩn DNSSEC về bản ghi tài nguyên DLV:
  • RFC 4431: “The DNSSEC Lookaside Validation (DLV) Resource Record” phát hành năm 2006 về Bản ghi tài nguyên xác nhận hợp lệ nhìn từ biên DNSSEC.
  • RFC 5074: “DNSSEC Lookaside Validation (DLV)” phát hành năm 2007 về Xác nhận hợp lệ nhìn từ biên.
  • Nhóm tiêu chuẩn DNSSEC về thử nghiệm và vận hành DNSSEC:
  • RFC 4641: “DNSSEC Operational Practices” phát hành năm 2006 về Các thực tế vận hành DNSSEC.
  • RFC 4955: “DNS Security (DNSSEC) Experiments” phát hành năm 2007 về Các thử nghiệm DNSSEC.
  • RFC 4956: “DNS Security (DNSSEC) Opt-In” phát hành năm 2007 về Mô hình “Opt-In” thử nghiệm DNSSEC.
  • RFC 6781: “DNSSEC Operational Practices Version 2” phát hành năm 2012 về Các thực tế vận hành DNSSEC phiên bản 2.
  • RFC 6840: “Clarifications and Implementation Notes for DNS Security (DNSSEC)” phát hành năm 2013 về Các chú ý thực thi và các sáng tỏ cho DNSSEC.
  • RFC 6841: “A Framework for DNSSEC Policies and DNSSEC Practice Statements” phát hành năm 2013 về Khung các chính sách DNSSEC và các trình bày thực tế DNSSEC.
  • Nhóm tiêu chuẩn DNSSEC về các thuật toán sử dụng trong DNSSEC:
  • RFC 4509: “Use of SHA-256 in DNSSEC Delegation Signer (DS) Resource Records (RRs)” phát hành năm 2006 về Sử dụng SHA-256 trong các bản ghi tài nguyên ký chuyển giao DS trong DNSSEC.
  • RFC 5702: “Use of SHA-2 Algorithms with RSA in DNSKEY and RRSIG Resource Records for DNSSEC” phát hành năm 2009 về Sử dụng các thuật toán SHA-2 với RSA trong các bản ghi tài nguyên DNSKEY và RRSIG cho DNSSEC.
  • RFC 5933: “Use of GOST Signature Algorithms in DNSKEY and RRSIG Resource Records for DNSSEC” phát hành năm 2010 về Sử dụng các thuật toán ký GOST trong các bản ghi tài nguyên DNSKEY và RRSIG cho DNSSEC.
  • RFC 6605: “Elliptic Curve Digital Signature Algorithm (DSA) for DNSSEC” phát hành năm 2012 về Thuật toán ký số (DSA) đường cong Elliptic cho DNSSEC.
  • RFC 6725: “DNS Security (DNSSEC) DNSKEY Algorithm IANA Registry Updates” phát hành năm 2012 về Các cập nhật đăng ký IANA thuật toán DNSKEY trong DNSSEC.
  • RFC 6944: “Applicability Statement: DNS Security (DNSSEC) DNSKEY Algorithm Implementation Status” phát hành năm 2013 về Trình bày ứng dụng: Trạng thái thực thi thuật toán DNSKEY trong DNSSEC.
  • RFC 6975: “Signaling Cryptographic Algorithm Understanding in DNS Security Extensions (DNSSEC)” phát hành năm 2013 về Hiểu thuật toán mật mã báo hiệu trong DNSSEC.
  • Nhóm tiêu chuẩn bổ sung khác về DNSSEC:
  • RFC 4471: “Derivation of DNS Name Predecessor and Successor” phát hành năm 2006 về Nhận được thành phần đứng trước và đứng sau tên DNS.
  • RFC 5910: “Domain Name System (DNS) Security Extenstions Mapping for the Extensible Provisioning Protocol (EPP)” phát hành năm 2010 về Ánh xạ các phần mở rộng bảo mật DNS cho giao thức cung cấp mở rộng (EPP).
  • RFC 7344: “Automating DNSSEC Delegation Trust Maintenance” phát hành năm 2014 về Bảo trì độ tin cậy chuyển giao DNSSEC tự động.
  • RFC 7583: “DNSSEC Key Rollover Timing Considerations” phát hành năm 2015 về Các vấn đề định thời Key Rollover DNSSEC.

Ngoài ra trung tâm dữ liệu, phòng máy triển khai hệ thống quản lý khoá, ký số dữ liệu tên miền DNSSEC cũng cần được bảo vệ an toàn vật lý theo tiêu chuẩn ở mức cao.

Mỗi cơ quan quản lý đăng ký sẽ tiến hành xây dựng chính sách áp dụng trong việc quản lý, vận hành hệ thống DNSSEC và công bố cho cộng đồng được biết và thực hiện. Việc xây dựng tài liệu chính sách này thông thường sẽ tuân thủ theo tiêu chuẩn “RFC 6841: A Framework for DNSSEC Policies and DNSSEC Practice Statements”, do IETF xuất bản năm 2013.

Tài liệu tham khảo

[1]. Nghiên cứu xây dựng tiêu chuẩn về các bản ghi tài nguyên cho các phần mở rộng bảo mật DNS, đề tài cấp Bộ TTTT, mã số: 29-16-KHKT-TC.

[2]  Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Resource Records for DNS Security Extensions", RFC 4034, March 2005.

Trí Tuệ

Từ khóa