DNS Tunneling là kỹ thuật lợi dụng giao thức DNS để truyền dữ liệu ẩn, có thể bị tin tặc khai thác nhằm vượt qua tường lửa, đánh cắp thông tin và duy trì kết nối với hệ thống bị xâm nhập. Vậy DNS Tunneling là gì, hoạt động như thế nào và làm sao để phát hiện, ngăn chặn hiệu quả? Cùng VinaHost tìm hiểu cơ chế hoạt động, các rủi ro và giải pháp phòng chống DNS Tunneling trong bài viết sau.
🛑 Bản chất: Kỹ thuật tạo kênh truyền dữ liệu ẩn bằng cách đóng gói thông tin trái phép vào các gói tin DNS hợp lệ nhằm vượt tường lửa qua cổng Port 53.
🎯 Mục đích tấn công: Thiết lập kênh điều khiển mã độc từ xa (C2), trích xuất dữ liệu nhạy cảm (Data Exfiltration) và né tránh các rào cản mạng nội bộ.
🔍 Dấu hiệu nhận diện: Subdomain dài bất thường (chứa chuỗi mã hóa Base64/Base32), tần suất truy vấn bản ghi TXT/NULL tăng vọt, hoặc tỷ lệ lỗi NXDOMAIN cao.
🛡️ Giải pháp phòng thủ: Tập trung hóa DNS Resolver, chặn truy vấn cổng 53 ra ngoài trực tiếp, ứng dụng DNS Sinkholing, kiểm soát DoH/DoT và theo dõi lưu lượng mạng bằng AI/ML.
Bảo vệ hạ tầng mạng và ngăn chặn nguy cơ rò rỉ dữ liệu cùng các giải pháp Máy chủ & Bảo mật chuyên sâu tại VinaHost, tư vấn cấu hình an toàn kèm hỗ trợ kỹ thuật 24/7.
1. Tổng quan kiến thức về DNS Tunneling
DNS Tunneling là kỹ thuật khai thác giao thức DNS để truyền dữ liệu ẩn, có thể bị lợi dụng nhằm vượt qua các cơ chế bảo mật mạng và thực hiện hành vi tấn công. Để hiểu rõ kỹ thuật này, cần tìm hiểu khái niệm, nguyên lý và quá trình phát triển của DNS Tunneling.
1.1. DNS Tunneling là gì?
DNS Tunneling (đường hầm DNS) là kỹ thuật lợi dụng giao thức DNS để tạo kênh truyền thông ẩn (covert channel), bằng cách nhúng dữ liệu không liên quan đến DNS vào các truy vấn và phản hồi hợp lệ. Về bản chất, kỹ thuật này đóng gói dữ liệu hoặc giao thức khác như IP, TCP, UDP bên trong lưu lượng DNS nhằm truyền dữ liệu qua các hệ thống mạng có cơ chế kiểm soát hoặc tường lửa.
1.2. Lịch sử phát triển của DNS Tunneling
- Cuối những năm 1990: DNS Tunneling bắt đầu xuất hiện trong các nghiên cứu học thuật về việc tận dụng giao thức DNS để truyền dữ liệu.
- Năm 2004: Dan Kaminsky công bố công cụ OzymanDNS tại hội nghị Black Hat, góp phần đưa kỹ thuật này từ nghiên cứu lý thuyết thành công cụ ứng dụng thực tế.
- Ngày nay: DNS Tunneling được tin tặc lợi dụng trong các chiến dịch tấn công có chủ đích (APT) và ransomware để thiết lập kênh liên lạc ẩn, điều khiển hệ thống từ xa hoặc đánh cắp dữ liệu.

2. Tại sao tin tặc ưa chuộng kỹ thuật DNS Tunneling?
DNS Tunneling được tin tặc ưa chuộng vì có thể lợi dụng đặc điểm hoạt động và mức độ tin cậy của giao thức DNS để tạo kênh truyền dữ liệu ẩn. Một số nguyên nhân chính gồm:
- Cổng DNS (Port 53) thường được mở: Cổng 53 được sử dụng cho hoạt động phân giải tên miền nên thường được cho phép qua tường lửa, tạo điều kiện để lưu lượng DNS Tunneling đi qua.
- Mức độ tin cậy mặc định cao: Hệ thống bảo mật truyền thống có thể xem lưu lượng DNS là hoạt động bình thường và chưa kiểm tra kỹ nội dung dữ liệu được truyền tải.
- Tính đệ quy của DNS Resolver: Trình phân giải DNS đệ quy (Recursive Resolver) chuyển tiếp truy vấn đến các máy chủ DNS khác, tạo điều kiện để dữ liệu được truyền qua hạ tầng DNS trung gian.
- Tạo kênh điều khiển C2 bền bỉ: DNS Tunneling giúp phần mềm độc hại duy trì liên lạc với máy chủ điều khiển (Command and Control – C2), đồng thời hỗ trợ đánh cắp dữ liệu (Data Exfiltration) trong thời gian dài mà khó bị phát hiện.
3. Cơ chế hoạt động chi tiết của DNS Tunneling
DNS Tunneling hoạt động bằng cách nhúng dữ liệu vào các truy vấn và phản hồi DNS để truyền thông tin giữa máy nạn nhân và máy chủ điều khiển của kẻ tấn công. Quá trình này thường gồm ba giai đoạn chính, từ thiết lập hạ tầng đến mã hóa và truyền tải dữ liệu.
3.1. Quy trình 3 giai đoạn tấn công chi tiết
- Giai đoạn 1 – Thiết lập hạ tầng C&C (Command & Control): Kẻ tấn công đăng ký một tên miền, chẳng hạn attacker.com, sau đó cấu hình máy chủ tên miền có thẩm quyền (Authoritative Name Server) để tiếp nhận và xử lý các truy vấn DNS chứa dữ liệu được gửi đến.
- Giai đoạn 2 – Mã hóa và đóng gói dữ liệu (Client side): Phần mềm độc hại (malware) trên máy nạn nhân mã hóa hoặc chuyển đổi dữ liệu cần truyền sang định dạng như Base32 hoặc Base64, rồi nhúng dữ liệu vào tên miền phụ (subdomain) của truy vấn DNS.
- Giai đoạn 3 – Phân giải DNS trung gian và truyền tải dữ liệu: Máy nạn nhân gửi truy vấn DNS chứa dữ liệu đã mã hóa đến DNS Resolver. Resolver tiếp tục chuyển tiếp truy vấn đến máy chủ DNS có thẩm quyền của kẻ tấn công. Tại đây, dữ liệu được trích xuất và xử lý; đồng thời, máy chủ có thể gửi dữ liệu hoặc lệnh phản hồi thông qua các bản ghi DNS như TXT, A hoặc CNAME.
3.2. Các loại bản ghi DNS thường bị khai thác
Một số loại bản ghi DNS thường được sử dụng trong DNS Tunneling gồm:
- TXT Record: Phổ biến do khả năng chứa nội dung văn bản tùy ý, phù hợp để truyền dữ liệu trong các truy vấn và phản hồi DNS.
- A / AAAA Record: Chứa địa chỉ IPv4 (4 byte) hoặc IPv6 (16 byte), có dung lượng dữ liệu hạn chế nhưng có thể được lợi dụng để truyền các phần dữ liệu nhỏ.
- CNAME, MX, SRV và NULL Record: Có thể bị khai thác để mã hóa hoặc truyền dữ liệu thông qua các trường thông tin của bản ghi. Trong đó, NULL Record hỗ trợ tải dữ liệu lớn hơn theo một số cách triển khai, nhưng ít được sử dụng trong DNS thông thường nên có thể tạo dấu hiệu bất thường khi giám sát lưu lượng.

4. Các hình thức tấn công và trường hợp sử dụng phổ biến
DNS Tunneling có thể bị tin tặc lợi dụng cho nhiều mục đích, từ duy trì liên lạc với mã độc đến đánh cắp dữ liệu và né tránh các cơ chế kiểm soát mạng. Các hình thức phổ biến gồm:
- Kênh điều khiển và chỉ huy (C2 over DNS): Sử dụng truy vấn và phản hồi DNS để truyền lệnh điều khiển từ xa cho mã độc, điều phối botnet hoặc thực hiện các hoạt động độc hại. Ví dụ: mã độc SUNBURST trong sự cố SolarWinds sử dụng DNS trong giai đoạn liên lạc với hạ tầng điều khiển.
- Trích xuất dữ liệu (Data Exfiltration): Lợi dụng DNS để chuyển dữ liệu nhạy cảm như thông tin đăng nhập và dữ liệu khách hàng ra ngoài theo từng phần nhỏ nhằm giảm khả năng bị phát hiện. Ví dụ: mã độc DNSMessenger sử dụng các truy vấn DNS để liên lạc và thực thi lệnh.
- Khám phá và dò quét mạng (Network Footprinting): Thu thập thông tin về hệ thống, máy chủ và cấu trúc mạng nội bộ để hỗ trợ các bước tấn công tiếp theo. Nhóm APT OilRig là một ví dụ về tác nhân đe dọa có sử dụng kỹ thuật DNS trong hoạt động độc hại.
- Vượt rào cản mạng và né tránh hạn chế (VPN Bypass): Lợi dụng lưu lượng DNS được cho phép để truyền dữ liệu qua các mạng có chính sách hạn chế truy cập. Trong một số trường hợp, kỹ thuật này có thể được sử dụng để vượt qua các giới hạn mạng hoặc cổng xác thực Wi-Fi công cộng (Captive Portal), tùy thuộc vào cấu hình hệ thống.
- Phân phối và dàn dựng mã độc (Malware Staging): Sử dụng DNS làm kênh liên lạc hoặc hỗ trợ tải thêm thành phần độc hại về máy nạn nhân để mở rộng khả năng tấn công. Chiến dịch Decoy Dog là một ví dụ về việc lợi dụng DNS trong hoạt động liên lạc và điều khiển mã độc.
5. Các công cụ DNS Tunneling thường gặp
Một số công cụ DNS Tunneling được sử dụng trong kiểm thử bảo mật và cũng có thể bị lợi dụng trong các cuộc tấn công mạng, bao gồm:
- Iodine: Công cụ tạo đường hầm IP over DNS, cho phép truyền lưu lượng IP qua giao thức DNS, hỗ trợ các kết nối mạng như SSH và HTTP.
- DNScat2: Công cụ tạo kênh liên lạc hai chiều qua DNS, hỗ trợ mã hóa lưu lượng giữa máy khách và máy chủ, có thể bị lợi dụng để thiết lập kênh điều khiển từ xa (C2).
- OzymanDNS: Công cụ do Dan Kaminsky phát triển, cho phép truyền dữ liệu qua DNS và tạo đường hầm phục vụ các mục đích như truy cập từ xa hoặc truyền tệp.
- Cobalt Strike DNS Beacon: Thành phần của nền tảng mô phỏng tấn công Cobalt Strike, sử dụng DNS làm một trong các phương thức liên lạc với máy chủ điều khiển, phục vụ kiểm thử xâm nhập và mô phỏng hoạt động của đối thủ.
⚠️ Lưu ý: Các công cụ này có thể phục vụ mục đích nghiên cứu, kiểm thử bảo mật hợp pháp hoặc bị sử dụng trái phép. Việc phát hiện và giám sát lưu lượng DNS bất thường là yếu tố quan trọng để hạn chế nguy cơ bị khai thác.
6. Hậu quả và rủi ro đối với doanh nghiệp
DNS Tunneling có thể tạo ra nhiều rủi ro bảo mật cho doanh nghiệp do khả năng truyền dữ liệu ẩn và né tránh một số cơ chế giám sát mạng. Nếu không được phát hiện và xử lý kịp thời, kỹ thuật này có thể dẫn đến những hậu quả sau:
- Rò rỉ dữ liệu nhạy cảm: Tin tặc có thể đánh cắp thông tin khách hàng, dữ liệu nội bộ, sở hữu trí tuệ và bí mật kinh doanh, gây ảnh hưởng đến lợi thế cạnh tranh của doanh nghiệp.
- Mất quyền kiểm soát hệ thống: Máy tính bị xâm nhập có thể bị điều khiển từ xa, trở thành một phần của mạng botnet hoặc tiếp tục bị khai thác để tấn công các hệ thống khác.
- Gián đoạn vận hành và thiệt hại tài chính: Sự cố có thể làm gián đoạn hoạt động kinh doanh, phát sinh chi phí điều tra và khắc phục, làm suy giảm niềm tin của khách hàng, đồng thời khiến doanh nghiệp đối mặt với nguy cơ bị xử phạt pháp lý nếu vi phạm các quy định liên quan.
7. Cách phát hiện DNS Tunneling hiệu quả
Để phát hiện DNS Tunneling, doanh nghiệp cần kết hợp phân tích nội dung truy vấn DNS, theo dõi lưu lượng mạng theo thời gian và ứng dụng các giải pháp giám sát hành vi nâng cao. Cách tiếp cận nhiều lớp giúp nhận diện những dấu hiệu bất thường mà việc kiểm tra DNS thông thường có thể bỏ sót.

7.1. Phân tích tải trọng (Payload Analysis – Từng truy vấn)
- Độ dài FQDN và số lượng subdomain: Theo dõi các truy vấn có tên miền đầy đủ (FQDN) dài bất thường, chẳng hạn trên 100 ký tự, hoặc chứa nhiều nhãn tên miền (label). Đây có thể là dấu hiệu dữ liệu được mã hóa và nhúng vào truy vấn DNS.
- Tính toán Entropy Shannon (độ ngẫu nhiên): Đo mức độ phân bố và ngẫu nhiên của ký tự trong subdomain. Các chuỗi được mã hóa bằng Base32 hoặc Base64 có thể có entropy cao hơn chuỗi tên miền thông thường, nhưng cần kết hợp thêm các chỉ số khác để xác định nguy cơ.
- Kiểm tra bản ghi DNS bất thường: Phát hiện tần suất truy vấn TXT tăng đột biến hoặc sự xuất hiện bất thường của các loại bản ghi ít được sử dụng như NULL.
7.2. Phân tích lưu lượng mạng (Traffic Analysis – Theo thời gian)
- Khối lượng truy vấn đột biến: Theo dõi số lượng truy vấn DNS tăng cao bất thường, đặc biệt khi nhiều truy vấn liên tục hướng đến cùng một tên miền cấp hai.
- Tần suất liên lạc đều đặn (Beaconing): Phân tích khoảng thời gian giữa các truy vấn để phát hiện hoạt động liên lạc định kỳ giữa phần mềm độc hại và máy chủ điều khiển (C2).
- Tỷ lệ phản hồi lỗi NXDOMAIN cao: Kiểm tra tình trạng truy vấn đến các tên miền không tồn tại với tần suất lớn. Đây có thể là dấu hiệu của thuật toán sinh tên miền (DGA) hoặc hoạt động DNS Tunneling.
- Tên miền mới đăng ký (Newly Registered Domains – NRDs): Kiểm tra tuổi đời và lịch sử tên miền, đặc biệt với các tên miền mới đăng ký trong vòng 24 – 48 giờ có lưu lượng truy vấn bất thường. Tuy nhiên, tuổi đời tên miền chỉ là một chỉ báo tham khảo, không đủ để kết luận tên miền độc hại.
7.3. Giải pháp phân tích hành vi nâng cao (NDR và Machine Learning)
- Thiết lập ngưỡng hành vi cơ sở (Baseline): Sử dụng giải pháp phát hiện và phản hồi mạng (NDR) hoặc phân tích hành vi người dùng và thực thể (UEBA) để xây dựng mô hình lưu lượng DNS bình thường, từ đó nhận diện các hoạt động bất thường.
- Ứng dụng AI/Machine Learning: Sử dụng các thuật toán như Random Forest, xử lý ngôn ngữ tự nhiên (NLP) hoặc mạng nơ-ron tích chập (CNN) để phân tích đặc trưng tên miền, cấu trúc truy vấn và hành vi lưu lượng nhằm phân loại các dấu hiệu DNS độc hại.
⚠️ Lưu ý: Không có dấu hiệu đơn lẻ nào đủ để khẳng định một truy vấn là DNS Tunneling. Doanh nghiệp nên kết hợp nhiều chỉ số, đối chiếu với dữ liệu giám sát và kiểm tra ngữ cảnh hoạt động trước khi đưa ra kết luận.
8. Các giải pháp phòng chống DNS Tunneling tối ưu
Để hạn chế nguy cơ DNS Tunneling, doanh nghiệp cần kết hợp nhiều lớp bảo vệ, từ kiểm soát truy cập và quản lý truy vấn DNS đến giám sát lưu lượng mạng và nâng cao nhận thức an ninh mạng cho nhân viên.
8.1. Áp dụng kiến trúc bảo mật Zero Trust
Zero Trust yêu cầu xác minh mọi yêu cầu truy cập dựa trên danh tính, thiết bị và ngữ cảnh, thay vì mặc định tin cậy các kết nối trong mạng nội bộ. Doanh nghiệp nên áp dụng nguyên tắc đặc quyền tối thiểu, phân đoạn mạng và giám sát liên tục để hạn chế khả năng mã độc lợi dụng DNS Tunneling nhằm di chuyển giữa các hệ thống.
8.2. Tập trung hóa DNS Resolver và cấu hình tường lửa nghiêm ngặt
Doanh nghiệp nên tập trung các truy vấn DNS thông qua những DNS Resolver được quản lý để dễ giám sát, ghi nhật ký và phát hiện hành vi bất thường. Đồng thời, cần cấu hình tường lửa để chỉ cho phép truy vấn DNS đến các máy chủ được phê duyệt, hạn chế kết nối DNS trực tiếp ra bên ngoài và chặn lưu lượng không phù hợp với chính sách bảo mật.
8.3. Triển khai giải pháp IDS/IPS và DNS Sinkholing
- IDS/IPS: Hệ thống phát hiện và ngăn chặn xâm nhập giúp phân tích lưu lượng DNS, nhận diện dấu hiệu đường hầm DNS và cảnh báo hoặc chặn các kết nối đáng ngờ.
- DNS Sinkholing: Chuyển hướng truy vấn đến tên miền độc hại về địa chỉ kiểm soát nhằm ngăn thiết bị liên lạc với máy chủ điều khiển của tin tặc, đồng thời hỗ trợ xác định các thiết bị có dấu hiệu bị nhiễm mã độc.
8.4. Kiểm soát các giao thức DNS mã hóa (DoH/DoT)
DNS over HTTPS (DoH) và DNS over TLS (DoT) mã hóa truy vấn DNS để bảo vệ quyền riêng tư, nhưng cũng có thể khiến doanh nghiệp khó giám sát lưu lượng nếu không có chính sách phù hợp. Vì vậy, cần quản lý các máy chủ DoH/DoT được phép sử dụng, kiểm soát truy cập mạng và áp dụng cơ chế giám sát phù hợp để phát hiện các kết nối DNS mã hóa trái phép.
8.5. Cập nhật bản vá định kỳ và đào tạo nhận thức an ninh mạng
Doanh nghiệp cần cập nhật hệ điều hành, phần mềm bảo mật và thiết bị mạng để giảm nguy cơ bị khai thác lỗ hổng. Bên cạnh đó, nên đào tạo nhân viên nhận biết email lừa đảo, tệp đính kèm độc hại và các dấu hiệu xâm nhập, đồng thời xây dựng quy trình báo cáo, ứng phó sự cố để phát hiện và xử lý DNS Tunneling kịp thời.
Một số câu hỏi liên quan đến DNS Tunneling
DNS Tunneling có phải là hành vi vi phạm pháp luật không?
DNS Tunneling không mặc nhiên vi phạm pháp luật, vì kỹ thuật này có thể được sử dụng cho mục đích hợp pháp như kiểm thử bảo mật. Tuy nhiên, nếu bị lợi dụng để truy cập trái phép, đánh cắp dữ liệu hoặc phát tán mã độc, hành vi đó có thể vi phạm pháp luật tùy theo quy định hiện hành.
Triển khai DNSSEC có ngăn chặn được DNS Tunneling không?
Không. DNSSEC giúp xác thực tính toàn vẹn và nguồn gốc dữ liệu DNS, nhưng không ngăn chặn việc nhúng dữ liệu vào truy vấn hoặc phản hồi DNS để tạo đường hầm. Doanh nghiệp cần kết hợp DNSSEC với tường lửa, giám sát lưu lượng và các giải pháp phát hiện mối đe dọa.
Làm thế nào để phân biệt lưu lượng DNS bình thường và DNS Tunneling?
Có thể dựa vào độ dài tên miền bất thường, subdomain chứa chuỗi ký tự ngẫu nhiên, tần suất truy vấn cao, lưu lượng TXT tăng đột biến hoặc các kết nối DNS lặp lại theo chu kỳ. Tuy nhiên, cần phân tích đồng thời nhiều dấu hiệu và đối chiếu với hành vi mạng thông thường để tránh nhầm lẫn với lưu lượng DNS hợp lệ.
9. Tổng kết
DNS Tunneling là kỹ thuật có thể bị tin tặc lợi dụng để truyền dữ liệu ẩn, điều khiển mã độc và đánh cắp thông tin nhạy cảm. Để hạn chế rủi ro, doanh nghiệp cần chủ động giám sát lưu lượng DNS, triển khai các giải pháp bảo mật phù hợp, cập nhật hệ thống định kỳ và nâng cao nhận thức an ninh mạng cho nhân viên. Hy vọng những thông tin trên giúp bạn hiểu rõ DNS Tunneling là gì và lựa chọn được phương án phòng chống hiệu quả, góp phần bảo vệ hệ thống và dữ liệu doanh nghiệp an toàn hơn.
Mời bạn truy cập vào blog của VinaHost TẠI ĐÂY để theo dõi thêm nhiều bài viết mới. Hoặc nếu bạn muốn được tư vấn thêm về dịch vụ thì có thể liên hệ với VinaHost qua:
- Email: support@vinahost.vn
- Hotline: 1900 6046
- Livechat: https://livechat.vinahost.vn/chat.php
Xem thêm một số bài viết khác:
- DNSSEC là gì | Nhận biết & Bảo mật DNS bằng DNSSEC
- Cách sửa lỗi DNS server isn’t responding [Hiệu Quả]
- DNS Failover là gì? | Hướng dẫn cấu hình DNS Failover
- DNS Zone là gì? | Tổng quan kiến thức về DNS Zone
- Cách sửa lỗi dns_probe_finished_nxdomain hiệu quả 99%
- Cách khắc phục lỗi DNS_PROBE_FINISHED_BAD_CONFIG hiệu quả
- Lỗi DNS_PROBE_STARTED là gì? | Cách khắc phục lỗi hiệu quả nhất
- DNS Suffix là gì? | Phân biệt giữa DNS Suffix & DNS Server
- LOC Record là gì? | Cách Quản lý, cập nhật và rà soát LOC Record
- DHCID Record là gì? | Cách kiểm tra và tra cứu DHCID record











































































































