TIÊU CHUẨN QUỐC GIA
TCVN 11818:2017
AN TOÀN HỆ THỐNG BẢO MẬT DNS (DNSSEC) THAY ĐỔI TRONG GIAO THỨC
The DNS security extensions - Protocol modifications
Lời nói đầu
TCVN 11818:2017 được xây dựng trên cơ sở tham khảo tiêu chuẩn IETF RFC 4035 (03-2005).
TCVN 11818:2017 do Viện Khoa học Kỹ thuật Bưu Điện biên soạn, Bộ Thông tin và Truyền thông đề
nghị, Tổng cục Tiêu chuẩn Đo lường Chất lượng thẩm định, Bộ Khoa học và Công nghệ công bố.
AN TOÀN HỆ THỐNG BẢO MẬT DNS (DNSSEC) THAY ĐỔI TRONG GIAO THỨC
The DNS security extensions - Protocol modifications
1 Phạm vi áp dụng
Tiêu chuẩn này đưa ra các thay đổi trong giao thức đối với phần mở rộng bảo mật hệ thống tên miền
(DNSSEC).
2 Tài liệu viện dẫn
Tài liệu viện dẫn sau là cần thiết cho việc áp dụng tiêu chuẩn này. Đối với các tài liệu viện dẫn ghi năm
công bố thì áp dụng phiên bản được nêu. Đối với các tài liệu viện dẫn không ghi năm công bố thì áp
dụng phiên bản mới nhất, bao gồm cả sửa đổi, bổ sung (nếu có).
RFC1034, Domain names - Concepts and facilities (11-1987) (Tên miền - Các khái niệm và tính năng).
RFC1035, Domain names - Implementation and specification (11-1987) (Tên miền - Cài đặt và đặc
tính).
RFC 1122, Requirements for Internet Hosts - Communication Layers (10-1989) (Yêu cầu đối với các
máy chủ Internet - Lớp truyền tin).
RFC2181, Clarifications to the DNS Specification (07-1997) (Làm rõ đặc tính DNS).
RFC2460, Internet Protocol, Version 6 (IPv6) Specification (12-1998) (Giao thức Internet, Đặc tính
IPv6).
RFC2671, Extension Mechanisms for DNS (EDNS0) (08-1999) (Cơ chế mở rộng cho DNS (EDNS0)).
RFC2672, Non-Terminal DNS Name Redirection (08-1999) (Đổi hướng tên DNS không kết cuối).
RFC 3225, Indicating Resolver Support of DNSSEC (12-2001) (Hỗ trợ Resolver chỉ thị của DNSSEC).
RFC3226, DNSSEC and IPv6 A6 aware server/resolver message size requirements (12-2001),
(DNSSEC và Các yêu cầu kích thước thông báo sever/resolver aware).
RFC4033, DNS Security Introduction and Requirements (03-2005) (Yêu cầu và giới thiệu bảo mật
DNS).
RFC4034, Resource Records for DNS Security Extensions (03-2005) (Bản ghi tài nguyên cho phần mở
rộng bảo mật DNS).
RFC2535, Domain Name System Security Extensions (03-1999) (Phần mở rộng bảo mật hệ thống tên
miền).
RFC3655, Redefinition of DNS Authenticated Data (AD) bit (11-2003) (Xác định lại bít Dữ liệu được xác
thực DNS (AD)).
3 Thuật ngữ, ký hiệu và chữ viết tắt
3.1 Thuật ngữ
Tiêu chuẩn này sử dụng các thuật ngữ sau:
3.1.1 BAD cache
Bộ nhớ dữ liệu có các chữ ký không hợp lệ.
3.1.2 Cô lập bảo mật (Island of Security)
Zone được ký, được ủy quyền nhưng không có chuỗi xác thực từ zonecha của nó, không có bản ghi
DS chứa mã Hash của một bản ghi DNSKEY cho phần riêng biệt được zonecha ủy quyền (xem [RFC
4034]). Một cô lập bảo mật được cấp phát bởi các Security-Aware Name Server, có thể cung cấp các
chuỗi xác thực cho các zone con bất kỳ được ủy quyền. Hồi đáp từ một cô lập bảo mật hoặc phần con
của nó chỉ được xác thực nếu có một phương pháp đáng tin cậy ngoài băng từ giao thức DNS xác
thực các khóa xác thực của nó.
3.1.3 Bộ phân giải gốc bảo mật - nhận biết không hiệu lực (Non-Validating Security-Aware Stub
Resolver)
Một bộ phân giải gốc bảo mật-nhận biết tin tưởng một hoặc nhiều máy chủ tên miền đệ quy bảo mật-
nhận biết thực hiện hầu hết các công việc được nói đến trong tiêu chuẩn này thiết lập trên đại diện của
nó. Nói chung, bộ phân giải gốc bảo mật-nhận biết không hiệu lực sẽ gửi câu hỏi DNS, nhận phản hồi
DNS và thiết lập phù hợp với bảo mật kênh cho một máy chủ tên miền đệ quy bảo mật-nhận biết được
cung cấp các dịch vụ thay thế cho bộ phân giải bảo mật-nhận biết.
3.1.4 Bộ phân giải gốc không hiệu lực (Non-Validating stub Resolver)
Một thuật ngữ dùng để mô tả bộ phân giải gốc bảo mật-nhận biết không hiệu lực.
3.1.5 Phần mở rộng bảo mật hệ thống tên miền (DNSSEC)
Tập hợp các bản ghi tài nguyên mới và các thay đổi trong giao thức để bổ sung sự xác thực nguồn gốc
dữ liệu và sự toàn vẹn dữ liệu cho DNS.
3.1.6 Root Zone
Zone ở Root.
3.1.7 Máy chủ tên miền bảo mật-nhận biết (Security-Aware Name Server)
Phần mở rộng bảo mật DNS được quy định trong tiêu chuẩn này đóng vai trò của một máy chủ tên
miền (quy định tại mục 2.4 của [RFC 1034]). Đặc biệt một máy chủ tên miền bảo mật-nhận biết nhận
các truy vấn DNS, gửi các phản hồi DNS, hỗ trợ phần mở rộng kích thước thông báo EDNSO và bít
DO và hỗ trợ các loại RR và các bít tiêu đề thông báo được quy định trong [RFC 4033].
3.1.8 Máy chủ tên miền đệ quy bảo mật-nhận biết (Security-Aware Recursive Name Server)
Một đơn vị có tác động trong cả máy chủ tên miền bảo mật-nhận biết và các vai trò máy chủ bảo mật-
nhận biết.
3.1.9 Bộ phân giải bảo mật-nhận biết (Security-Aware Resolver)
Phần mở rộng bảo mật DNS quy định trong [RFC 4033] hoạt động trong vai trò của một bộ phân giải
(quy định tại mục 2.4 của [RFC 1034]). Đặc biệt, một bộ phân giải bảo mật-nhận biết gửi truy vấn DNS,
nhận phản hồi DNS, hỗ trợ phần mở rộng kích thước thông báo EDNS0 và bít DO và sử dụng các loại
RR và bít tiêu đề thông báo được quy định trong [RFC 4033] để cung cấp các máy chủ DNSSEC.
3.1.10 Bộ phân giải gốc bảo mật-nhận biết (Security-Aware Stub Resolver)
Một đơn vị hoạt động trong vai trò của một bộ phân giải gốc (quy định tại mục 5.3.1 của [RFC 2034]) có
thể nhận biết các phần mở rộng bảo mật DNS được quy định trong [RFC 4033] thiết lập để cung cấp
các dịch vụ kèm theo không có sẵn từ một bộ phân giải gốc bảo mật-không còn được biết đến. Các bộ
phân giải gốc bảo mật-nhận biết có thể là “chứng thực” hoặc “không chứng thực”, tùy thuộc vào bộ
phân giải gốc cố gắng xác minh chữ ký DNSSEC trên nó hoặc kỳ vọng một máy chủ tên miền bảo mật-
nhận biết thân thiết.
3.1.11 Bảo mật-không còn được biết đến < ...> (Security-Oblivious <anything>)
Là khái niệm trái ngược với bảo mật-nhận biết, nghĩa là không biết, không hỗ trợ bảo mật-nhận biết đối
với DNSSEC.
3.1.12 Zone được ký (Signed Zone)
Một zone có các tập bản ghi tài nguyên được ký và chứa các khóa công khai DNS (DNSKEY), chữ ký
bản ghi tài nguyên (RRSIG), bảo mật kế tiếp (NSEC) và tùy chọn các bản ghi tài nguyên ký chuyển
giao (DS).
3.1.13 Điểm tin cậy Trust Anchor (Trust Anchor)
Một tập bản ghi tài nguyên DNSKEY được cấu hình hoặc mã băm DS RR của một tập bản ghi tài
nguyên DNSKEY. Một bộ phân giải bảo mật-nhận biết sử dụng khóa công khai này hoặc mã băm như
điểm bắt đầu cho việc xây dựng các chuỗi xác thực cho một phản hồi DNS được ký. Nói chung, bộ
phân giải chứng thực phải đạt được giá trị ban đầu của điểm tin cậy Trust Anchor của nó thông qua
một số bảo mật hoặc giá trị trung bình có độ tin cậy bên ngoài giao thức DNS. Điểm tin cậy Trust
Anchor thể hiện việc bộ phân giải đoán trước vùng để các điểm tin cậy Trust Anchor được ký.
3.1.14 Zone chưa được ký (Unsigned Zone)
Là khái niệm trái ngược Zone được ký.
3.1.15 Chứng thực bộ phân giải gốc bảo mật-nhận biết (Validating Security-Aware stub Resolver)
Một bộ phân giải bảo mật-nhận biết gửi truy vấn ở chế độ đệ quy nhưng thực hiện ký xác nhận của
riêng mình thay vì tìm kiếm điểm tin cậy của máy chủ tên miền đệ quy bảo mật-nhận biết theo chiều
ngược lại.
3.1.16 Đỉnh vùng (Zone Apex)
Khái niệm tương đồng với định nghĩa điểm chuyển giao. Thuật ngữ dùng để mô tả tên miền phía phân
vùng con của một mặt cắt vùng.
3.1.17 Zone Cut
Ranh giới giữa các zone. Ranh giới chia tách zone con (ở bên dưới ranh giới) và zonecha (ở bên trên
ranh giới) (RFC 2181).
3.1.18 Zone Key
Khóa của zone.
3.1.19 Zone Transfer
Chuyển thông tin tên miền của zone.
3.1.20 Zone
Phần liên tục và riêng biệt của không gian tên miền trong hệ thống DNS.
3.2 Ký hiệu
Theo mục đích của tiêu chuẩn này, ký tự sau đây được áp dụng:
“I” toán tử ghép
3.3 Chữ viết tắt
Theo mục đích của tiêu chuẩn này, các chữ viết tắt sau đây được áp dụng:
AD Dữ liệu chứng thực Authentic Data
AXFR Đồng bộ toàn phần Full Zone Transfer/ Authoritative Transfer
CD Kiểm tra vô hiệu hóa Checking Disabled
CNAME Tên miền chính tắc Canonical Name
DNAME Tên miền chuyển giao Delegation Name
DNS Hệ thống tên miền Domain Name System
DNSKEY Khóa công khai DNS DNS Public KEY
DNSSEC Phần mở rộng bảo mật DNS DNS Security Extensions
DO DNSSEC OK
DS Ký chuyển giao Delegation Signer
EDNS Các cơ chế mở rộng cho DNS Extension Mechanisms for DNS
IANA Tổ chức cấp phát số hiệu Internet Internet Assigned Numbers Authority
IXFR Đồng bộ một phần Incremental Zone Transfer
NS Máy chủ tên miền Name Server
NSEC Bảo mật kế tiếp Next Secure
OPT Tùy chọn Option
QCLASS Lớp của truy vấn Query CLASS
QNAME Tên miền đích Qualified NAME (a target domain name)
QTYPE Loại của truy vấn Query TYPE.
RCODE Mã trả lời Response CODE
RDATA Dữ liệu thay thế Repair DATA
RR Bản ghi tài nguyên Resource Record
RRSIG Chữ ký bản ghi tài nguyên Resource Record Signature
SCLASS QCLASS của truy vấn tìm kiếm the QCLASS of the search request
SNAME Tên miền cần tìm kiếm the domain name we are searching for
SOA (Bản ghi tài nguyên) xuất phát (của
một zone) có thẩm quyền Start of (a zone of) Authority
STYPE QTYPE của truy vấn tìm kiếm the QTYPE of the search request
TC Bị cắt Truncated
TTL Thời gian tồn tại Time to Live
4 Ký zone
DNSSEC đưa ra khái niệm các Zone được ký (Signed Zone). Zone được ký có khóa công khai DNS
(DNSKEY), chữ ký bản ghi tài nguyên (RRSIG), bảo mật kế tiếp (NSEC) và tùy chọn các bản ghi tài
nguyên ký chuyển giao (DS) tùy theo các nguyên tắc được quy định trong các mục 4.1, 4.2, 4.3 và 4.4
tương ứng. Zone không có các bản ghi tài nguyên theo các nguyên tắc trong mục này là zone chưa
được ký.
DNSSEC yêu cầu một thay đổi đối với định nghĩa bản ghi tài nguyên CNAME [RFC 1035]. Mục 4.5
thay đổi bản ghi tài nguyên CNAME để cho phép các bản ghi tài nguyên RRSIG và NSEC được xuất
hiện ở cùng một tên miền chủ giống như bản ghi tài nguyên CNAME.
DNSSEC quy định vị trí của hai loại bản ghi tài nguyên mới, NSEC và DS. Các bản ghi tài nguyên này
có thể được đặt tại phía cha của zone cut (tức là ở điểm chuyển giao). Điều này là một ngoại lệ đối với
việc cấm đưa dữ liệu trong zonecha tại zone cut. Mục 4.6 trình bày sự thay đổi này.
4.1 Các bản ghi tài nguyên DNSKEY trong một zone
Để ký một zone, người quản trị zone đó tạo một hoặc nhiều cặp khóa công khai/riêng và sử dụng (các)
khóa riêng để ký các tập bản ghi tài nguyên có thẩm quyền trong zone đó. Đối với mỗi khóa riêng được
sử dụng để tạo các bản ghi tài nguyên RRSIG trong một zone, zone này nên có một bản ghi tài nguyên
DNSKEY của zone chứa khóa công khai tương ứng. Bản ghi tài nguyên DNSKEY chứa khóa công khai
này của zone phải có bit khóa công khai của zone thuộc trường Flags RDATA được thiết lập (xem mục
2.1.1 của RFC 4034). Các khóa công khai liên kết với các hoạt động DNS khác có thể được chứa trong
các bản ghi tài nguyên DNSKEY không được xác định là các khóa công khai của zone thì không được
sử dụng để kiểm tra các RRSIG.
Nếu người quản trị có ý định sử dụng zone được ký ở mức độ cao hơn (đã ký zone nhưng chưa
chuyển giao chuỗi xác thực từ zonecha) thì zone apex phải bao gồm ít nhất một bản ghi tài nguyên
DNSKEY được hoạt động như một điểm truy nhập bảo mật của zone. Do đó, điểm truy nhập bảo mật
này có thể được sử dụng làm đích của một chuyển giao bảo mật thông qua một bản ghi tài nguyên DS
tương ứng trong zonecha (xem RFC 4034)
4.2 Các bản ghi tài nguyên RRSIG trong một zone
Đối với mỗi tập bản ghi tài nguyên có thẩm quyền trong một Zone được ký, phải có ít nhất một bản ghi
tài nguyên RRSIG đáp ứng các yêu cầu sau:
- Tên miền chủ RRSIG này giống tên miền chủ tập bản ghi tài nguyên này.
- Lớp RRSIG này giống lớp của tập bản ghi tài nguyên này.
- Trường RRSIG Type Covered giống loại của tập bản ghi tài nguyên này.
- Trường RRSIG Original TTL giống TTL của tập bản ghi tài nguyên này.
- TTL của bản ghi tài nguyên RRSIG này giống TTL của tập bản ghi tài nguyên này.
- Trường RRSIG Labels giống số nhãn trong tên miền chủ của tập bản ghi tài nguyên này, không tính
nhãn null root và nhãn phía trái ngoài cùng khi nó là một ký tự đại diện.
- Trường Name của RRSIG Signer giống tên miền của zone chứa tập bản ghi tài nguyên này.
- Các trường RRSIG Algorithm, Name của Signer và Key Tag giống bản ghi tài nguyên DNSKEY chứa
khóa công khai của zone tại zone apex.
Quá trình xây dựng một bản ghi tài nguyên RRSIG đối với một tập bản ghi tài nguyên cho trước được
trình bày trong RFC 4034. Một tập bản ghi tài nguyên có thể có nhiều bản ghi tài nguyên RRSIG liên
kết với nó. Lưu ý rằng, vì bản ghi tài nguyên RRSIG được liên kết chặt với tập bản ghi tài nguyên mà
được bao gồm trong chữ ký của chúng, nên bản ghi tài nguyên RRSIG không giống tất cả các loại bản
ghi tài nguyên DNS khác, không có tập bản ghi tài nguyên (RRset). Trong đó, các giá trị TTL trong bản
ghi tài nguyên RRSIG với tên miền chung không tuân theo các quy tắc của tập bản ghi tài nguyên
được trình bày trong RFC 2181.
Một bản ghi tài nguyên RRSIG không được tự ký vì việc ký một bản ghi tài nguyên RRSIG sẽ không có
giá trị và sẽ tạo một vòng lặp không xác định trong quá trình ký.
Tập bản ghi tài nguyên NS xuất hiện tại tên miền của zone apex phải được ký nhưng các tập bản ghi
tài nguyên NS xuất hiện tại các điểm chuyển giao (tức là các tập bản ghi tài nguyên NS trong zonecha
mà chuyển giao tên miền này cho các máy chủ tên miền của zone con) không được ký. Các tập bản
ghi tài nguyên được liên kết với sự chuyển giao (glue address) sẽ không được ký.
Phải có một RRSIG đối với mỗi tập bản ghi tài nguyên sử dụng ít nhất một DNSKEY của mỗi thuật toán
trong tập bản ghi tài nguyên DNSKEY của zone apex, tập bản ghi tài nguyên DNS của zone apex này
phải được tự ký bằng mỗi thuật toán xuất hiện trong tập bản ghi tài nguyên DS được đặt ở phía cha
chuyển giao (nếu có).
4.3 Các bản ghi tài nguyên NSEC trong một zone
Mỗi tên miền chủ trong zone có dữ liệu có thẩm quyền hoặc một tập bản ghi tài nguyên NS của điểm
chuyển giao phải có một bản ghi tài nguyên NSEC. Định dạng của các bản ghi tài nguyên NSEC và
quá trình xây dựng bản ghi tài nguyên NSEC đối với một tên miền cho trước được trình bày trong RFC
4034.
Giá trị TTL đối với bất kỳ bản ghi tài nguyên NSEC nên giống trường giá trị TTL tối thiểu trong bản ghi
tài nguyên SOA của zone này.
Một bản ghi tài nguyên NSEC (và tập bản ghi tài nguyên RRSIG của nó) phải không được là tập bản
ghi tài nguyên duy nhất tại bất kỳ tên miền chủ cụ thể nào. Đó là, quá trình ký không tạo bản ghi tài
nguyên NSEC hoặc RRSIG của node tên miền chủ mà chưa phải là tên miền chủ của bất kỳ tập bản
ghi tài nguyên nào, trước khi zone đó được ký. Lý do chính của điều này là muốn sự nhất quán không
gian tên miền giữa các phiên bản được ký và không được ký trong cùng một zone, và làm giảm nguy
cơ phản hồi mâu thuẫn trong các máy chủ đệ quy không có bảo mật.
Ánh xạ loại của mỗi bản ghi tài nguyên NSEC trong một Zone được ký phải chỉ ra sự có mặt của cả
chính bản ghi tài nguyên NSEC này và bản ghi tài nguyên RRSIG tương ứng.
Sự khác nhau giữa bộ các tên miền chủ có yêu cầu các bản ghi tài nguyên RRSIG và bộ các tên miền
chủ có yêu cầu các bản ghi tài nguyên NSEC là tinh vi và đáng nêu rõ. Các bản ghi tài nguyên RRSIG
có ở các tên miền chủ của tất cả các tập bản ghi tài nguyên có thẩm quyền. Các bản ghi tài nguyên
NSEC có ở các tên miền chủ của tất cả các tên miền mà Zone được ký có thẩm quyền đối với chúng
và ở các tên miền chủ của những chuyển giao từ Zone được ký sang zone con của nó. Các bản ghi tài
nguyên NSEC hoặc RRSIG không có (trong zonecha) ở các tên miền chủ của các tập bản ghi tài
nguyên địa chỉ liên kết. Tuy nhiên, chú ý rằng sự khác biệt này chỉ là phần dễ thấy nhất trong quá trình
ký zone vì các tập bản ghi tài nguyên NSEC là dữ liệu có thẩm quyền và do đó được ký. Do đó, bất kỳ
tên miền chủ nào có một tập bản ghi tài nguyên NSEC cũng sẽ có các bản ghi tài nguyên RRSIG trong
Zone được ký.
Việc ánh xạ đối với bản ghi tài nguyên NSEC ở điểm chuyển giao yêu cầu sự quan tâm đặc biệt. Các
bít tương ứng tập bản ghi tài nguyên NS chuyển giao và bất kỳ các tập bản ghi tài nguyên mà zonecha