Global NULL Record Diagnostic Checker
Nằm bên trong hệ thống phân cấp với cấu trúc chặt chẽ của Hệ thống Domain Name, bản ghi NULL thực sự nổi bật khi đóng vai trò là một kiểu dữ liệu vô định và được định nghĩa lỏng lẻo nhất từng được tiêu chuẩn hóa (codified). Nêu rõ trong tiêu chuẩn RFC 1035 gốc, bản ghi NULL là thứ hoàn toàn không có bất kỳ quy tắc định dạng, ràng buộc cú pháp (syntax constraints) hay các quy tắc ngữ nghĩa (semantics) nội bộ nào. Khác với bản ghi A vốn mong chờ một dải IP, hay bản ghi MX đòi hỏi một số nguyên ưu tiên (priority integer) và hostname, bản ghi NULL tồn tại thuần túy như một thùng chứa trống rỗng. Nó được chế tạo để nắm giữ các payload dữ liệu nhị phân (binary data payload) bất kỳ với chiều dài giới hạn tối đa là 65.535 byte, với đặc điểm là authoritative nameserver sẽ áp dụng không (zero) một cơ chế validate nào lên nội dung bên trong.
Môi trường Sandbox thử nghiệm
Khi các kỹ sư đặt nền móng của internet tiến hành phát triển kiến trúc DNS, họ đã sớm lường trước được rằng hệ thống này trong tương lai sẽ cần phải thay đổi để thích ứng với các giao thức mạng đời mới, vốn khó có thể lắp gọn gàng vào các giới hạn tiêu chuẩn của các loại bản ghi A, MX, hay TXT. Bản ghi NULL đã được khoanh vùng rõ ràng để làm môi trường sandbox cho các developer vọc vạch vào các extension giao thức mang tính thử nghiệm và mảng nghiên cứu hàn lâm (academic research). Do phần mềm BIND không hề ép bất kỳ lệnh check cơ chế encoding hay các quy tắc giới hạn độ dài ký tự nào (ngoại trừ kích thước gói tin) vào phần NULL payload, các network engineer có thể tha hồ nhúng (inject) hàng loạt chuỗi mã hex (hexadecimal string) raw, chưa được format, hoặc các mã hash mã hóa tùy chỉnh (custom cryptographic hash), hay thậm chí dữ liệu định tuyến binary nội bộ (proprietary binary routing data) thẳng vào trong file zone nhằm phục vụ các ứng dụng client đặc thù đảm nhận khâu parse.
Tại sao nó thất bại trong Production
Dù nghe có vẻ đa năng trên lý thuyết, bản ghi NULL này coi như tuyệt chủng trên các môi trường production hiện đại. Trở ngại hàng đầu nằm ở độ tương tác chéo (interoperability). Do chẳng có một quy chuẩn chung nào để nhiều phần mềm client phân tích (interpret) đống dữ liệu binary tùy biến kia, nên bản ghi này chỉ có thể sử dụng ở các hệ sinh thái kín (closed ecosystems), nơi admin nắm quyền kiểm soát toàn bộ cả DNS server lẫn phía client app. Thêm vào đó, sự trỗi dậy của bản ghi TXT — thứ dễ parse hơn rất nhiều đối với các ứng dụng REST API và web application thông thường — cộng với việc tung ra EDNS (Extension Mechanisms for DNS) đã biến đoạn raw binary payload của bản ghi NULL thành thứ phế thải (obsolete) đối với thế giới dữ liệu ứng dụng thực tế.
Covert Channels và Security Audits
Ngày nay, bản ghi NULL rất hiếm khi xuất头 ngoài phạm vi các bài toán an ninh mạng đặc thù. Về mặt lịch sử, các Advanced Persistent Threats (APTs) và những biến thể malware khét tiếng đã từng lợi dụng bản ghi NULL nhằm thiết lập các kênh kết nối ngầm Command-and-Control (C2). Bằng cách che giấu dữ liệu đã đánh cắp (exfiltrated data) hoặc lấy các lệnh mã độc qua những khối binary blob bất kỳ đang trú ẩn trong bản ghi NULL, kẻ tấn công có thể đàng hoàng qua mặt được tường lửa cấp ứng dụng (application-layer firewalls), vì đại đa số mạng nội bộ các công ty hiện nay vẫn hay có thói quen làm ngơ và để lọt lưu lượng DNS chạy qua port 53. Tính tới thời điểm hiện tại, việc gọi lệnh tìm kiếm bản ghi NULL toàn cầu chỉ được tiến hành trong các đợt kiểm thử xâm nhập (penetration testing) đào sâu, khi mổ xẻ phân tích mã độc, hay dùng trong các buổi audit đánh giá giao thức chuyên môn nhằm theo dõi quy trình các edge resolver khác biệt đang filter hay tuồn các payload binary không kiểm duyệt (unregulated) đi lọt qua hạ tầng xương sống internet (internet backbone) ra sao.