Gii thiu vDNS và chuyn vùng DNS
DNS (Domain Name System) một hệ sở dữ liệu phân tán dùng để ánh xạ
giữa các tên miền các địa chỉ IP. DNS đưa ra một phương pháp đặc biệt để duy
trì và liên kết các ánh xạ này trong một thể thống nhất. Trong phm vi lớn hơn, các
máy tính kết nối với internet sử dụng DNS để tạo địa chỉ liên kết dạng URL
(Universal Resource Locators). Theo phương pháp này, mỗi máy tính sẽ không
cần sử dụng địa chỉ IP cho kết nối.
Các tên DNS tạo ra theo định dạng sau ., d infosec.vasc.com.vn. Trong khi
danh sách các kiểu tên DNS được thiết kết lại bởi ICANN (Công ty quản dịch
vụ tên miền), một số các kiểu thông thường bao gồm: .edu (dạng các website giáo
dục) , .mil (các website cho quân đội), .org (thuộc dạng các tổ chức phi thương
mại) .com (các tổ chức kinh tế),... Và cũng các kiểu tên miền chỉ định theo tên
nước, dụ .ie (Ireland), .jp (Japan), .de (Germany)
Khi một máy tính (một DNS client) muốn tìm kiểm một URL, đưa yêu cầu
(GetHostByName) tới DNS server của nó. DNS client sử dụng một DNS resolver
để định vị DNS server. Nếu DNS server không xác định được tên miền cần tìm,
hay DNS server không chút thông tin vURL đó trong vùng nh đệm của
nó, s không thể trả lời yêu cầu của client ngay lập tức. Thay vào đó, DNS
server shoặc sử dụng một DNS forwarder hoặc tạo lại một yêu cu theo quy tắc
đệ quy.
Việc giả mạo DNS liên quan tới việc bắt buộc một DNS client tạo yêu cầu tới một
server mạo danh, khi đó client sẽ nhận được trả lời sai từ server gimạo đó.
3 cách thực hiện kiểu tấn công giả mạo DNS này, bao gồm:
1. Gimạo các phản hồi DNS
Ktấn công thể sdụng chế đệ quy, giả mạo yêu cầu mà DNS server gửi ra
ngoài trong quá trình m kim một địa chỉ, và phản hồi các thông tin sai trước khi
các thông tin thật đến. Mỗi gói tin DNS một số ID dạng 16 bit mà DNS server
dùng để kiểm tra yêu cầu ban đầu gửi đi là gì. Khi sdụng BIND, một phần mềm
thông dụng dạng DNS server, số này tăng lên 1 sau mỗi yêu cầu gửi đến, và việc
tạo yêu cầu rất dễ dàng gimạo. BIND đã được sửa lỗi theo phiên bản gần đây,
các gói tin DNS được khởi tạo theo các con số ngẫu nhiên (phiên bản BIND
v9).
Để kiểm tra liệu một DNS server thể lỗ hổng hay không đối với stấn công
gimạo địa chỉ DNS, bạn thể gửi các yêu cầu tới server, thẩm định liệu thể
đoán số ID kế tiếp trong một gói tin yêu cầu giử tới DNS. Nếu các yêu cầu ID
thđoán trước được, điều này nghĩa là vùng nhđệm trong DNS thể ánh xạ
không đúng tới địa chỉ IP thật, đó chính lỗ hổng bảo mật trong DNS.
2. Gi mạo địa chỉ trong vùng nh đệm của DNS
Sau các yêu cầu đệ quy, các ánh xđịa chỉ nhận được sẽ tồn tại trong DNS cache.
DNS server sdựa vào cùng nh đệm này để xác định thông tin cho các yêu cầu
đến và phản hồi từ client gửi tới, giúp cho việc truy cập thông tin nhanh hơn. Độ
dài thời gian mà các kết quả yêu cầu đệ quy được giữ luôn trong DNS cache (
hiệu là TTL -- time to live) th được thiết lập.
Việc các địa chỉ bị giả mạo nằm trong DNS cache kéo theo việc gửi thông tin ánh
xkhông đúng với thời gian tồn tại (TTL) dài. Vậy nên, tại thời điểm kế tiếp khi
một yêu cầu gửi tới, sẽ nhận được thông tin sai. Việc sai thông tin này cũng
thbị nh hưởng do việc nhận dữ liệu từ một DNS server từ xa nào đó bgiả
mạo . Có thể giới hạn sgiả mạo thông tin này bằng cách giảm thời gian thông tin
tồn tại trong cache (TTL), nhưng điều này cũng làm gim hiệu năng của server.
Một ứng dụng thông dụng của DNS dạng phần mềm mã nguồn mở là BIND
(Berkeley Internet Name Daemon), mà cung cấp hầu hết các chức năng quan trọng
vDNS server. Tuy nhiên, cũng rất nhiều lỗ hổng bảo mật trong BIND, và
vậy, việc đm bảo đang sử dụng phần mềm BIND với phiên bản mới nhất là rất
quan trọng. Hiện tại, các chuẩn mới về DNS đã khắc phục được lỗi này trong vùng
nh đệm của DNS.
3. Phá v mức bảo mật môi trường
Việc tấn công bằng cách giả mạo địa DNS pvỡ mức bảo mật của môi trường
làm việc mạng trong DNS server. dụ: tấn công dựa theo các lỗ hổng dạng tràn
vùng đệm đối với các phiên bản BIND cũ, mà cho phép ktấn công đoạt được
quyền root truy cập. Khi kẻ tấn công đoạt được quyền truy cập trong môi trường
DNS, anh ta có thể điều khiển được môi trường mạng.