Các biện pháp đảm bảo an ninh cho hệ thống DNS trên đám mây

03/11/2015 22:32
Theo dõi ICTVietnam trên

Trong vài năm trở lại đây, sự phổ biến của các dịch vụ đám mây đã gia tăng đột biến. Tuy nhiên, bên cạnh những ưu điểm mà đám mây mang lại, thì những nguy cơ rủi ro an ninh cũng đang trở thành mối quan tâm không chỉ cho doanh nghiệp/ tổ chức và các khách hàng cá nhân. Vậy khi sử dụng các dịch vụ đám mây, những hình thức tấn công DNS nào mà tổ chức của bạn phải quan tâm? Việc lựa chọn nhà cung cấp dịch vụ đám mây (CSP) có kiến trúc như thế nào sẽ đảm bảo tốt hơn cho hệ thống DNS?

CÁC CÁCH TẤN CÔNG HỆ THỐNG DNS

Hệ thống tên miền (Domain Name System – DNS) là một hệ thống cho phép thiết lập mối quan hệ tương ứng giữa địa chỉ IP và tên miền (domain). Mỗi website được gắn với một tên miền và một địa chỉ IP cụ thể. Thực chất, hệ thống DNS là một tập hợp hệ thống phần cứng và các công cụ phần mềm phục vụ cho nhiệm vụ phân giải tên miền. Ngoài ra cần có các giao thức DNS (định dạng gói tin, giao thức truyền…) để có thể tiến hành trao đổi thông tin giữa máy client với các máy chủ DNS và giữa các máy chủ DNS với nhau. Chính vì hội tụ đầy đủ các yếu tố: Phần cứng, phần mềm và giao thức nên hệ thống DNS luôn luôn tiềm ẩn các lỗ hổng mà hacker có thể sử dụng để khai thác và làm chủ hệ thống, từ đó gây ra các ảnh hưởng tới người dùng.

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

Tấn công giả mạo DNS (DNS cache poisoning)

- Giả mạo phản hồi DNS

Đây là một phương pháp tấn công mà dữ liệu được thêm vào hệ thống cache của các DNS server. 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, kẻ tấn công 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 server được xác thực, các bản ghi không đúng sẽ được lưu cache lại và phục vụ cho các user khác.

Hình 1: Tấn công giả mạo phản hồi DNS.

-Giả mạo địa chỉ DNS

Đây là cách một số phần mềm quảng cáo hay mã độc thường hay thực hiện. Đầu tiên, chúng dựng lên các DNS server, giống với chức năng DNS server thông thường. Tuy nhiên, các DNS server 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 DNS server của ISP hoặc do người dùng thiết lập thì lại đi qua các DNS server của kẻ tấn công.

Tấn công khuếch đại DNS (DNS Amplification Attack)

Đây là một dạng tấn công từ chối dịch vụ (DDoS). Kẻ tấn công sử dụng các máy chủ DNS mở (trả lời truy vấn từ mọi địa chỉ IP) để làm tràn băng thông của đối tượng cần tấn công.

Hình 2: Tấn công khuếch đại.

Có hai yếu tố cơ bản cho cách thức tấn công này:

–  Địa chỉ tấn công được che giấu nhờ ánh xạ sang một bên thứ ba (Reflection).

– Lưu lượng mà nạn nhân nhận được sẽ lớn hơn lưu lượng gửi từ kẻ tấn công rất nhiều (Amplification).

CÁC PHƯƠNG PHÁP ĐẢM BẢO AN NINH CHO HỆ THỐNG DNS TRÊN ĐÁM MÂY

Giống như hầu hết các thách thức về bảo mật khác, những giải pháp cho hệ thống DNS trong đám mây chưa thực sự đảm bảo an toàn và còn phụ thuộc nhiều vào sự kết hợp giữa các yếu tố con người, quy trình, công nghệ. Ngoài các biện pháp bảo vệ chung cho toàn hệ thống như IDS, IPS, firewall, load balancing… khách hàng sử dụng dịch vụ đám mây cũng nên xem xét các phương pháp áp dụng riêng cho hệ thống DNS có ổn định không để lựa chọn nhà cung cấp cho phù hợp.

DNSSEC

Giao thức DNS thiếu hụt tính bảo mật do không có công cụ xác thực nguồn dữ liệu được trao đổi giữa máy chủ DNS và máy trạm (client), hoặc quá trình chuyển tiếp (forwarder) giữa máy chủ này đến máy chủ khác trong domain. Trước nguy cơ dữ liệu DNS có thể bị giả mạo và làm sai lệch, DNSSEC ra đời để giải quyết vấn đề này.

DNSSEC (Domain Name System Security Extensions) là một giao thức mở rộng trên nền DNS, cung cấp khả năng chứng thực (authentication) và đảm bảo dữ liệu được toàn vẹn (integrity) cho hệ thống DNS. DNSSEC có 3 nhiệm vụ chính:

-Sender Authentication: chứng thực dữ liệu cho quá trình gửi đi.

-Data Integrity: bảo vệ toàn vẹn dữ liệu trong quá trình truyền, giúp người nhận được đảm bảo dữ liệu không bị thay đổi.

-Authenticated denial of existence: ngăn chặn kẻ tấn công, chúng phá hoại bằng cách tự động gửi xác nhận là không tồn tại dữ liệu mà Client truy vấn.

Để thực hiện các nhiệm vụ trên, ngoài 4 phần tử chính trọng hệ thống DNS (Delegation, Zone file management, Zone file distribution, Resolving), DNSSEC sẽ có thêm một số phần tử như Zone File Signing, Verifying, Trust Anchor, Key rollover, DNS Aware, Key Master [5]. Nhờ đó DNSSEC đưa ra 4 loại bản ghi mới:

  Bản ghi khóa công cộng DNS (DNSKEY - DNS Public Key): sử dụng để chứng thực zone dữ liệu.

  Bản ghi chữ ký tài nguyên (RRSIG - Resource Record Signature): sử dụng để chứng thực cho các bản ghi tài nguyên trong zone dữ liệu.

  Bản ghi bảo mật kế tiếp (NSEC - Next Secure): sử dụng trong quá trình xác thực đối với các bản ghi có cùng sở hữu tập các bản ghi tài nguyên hoặc bản ghi CNAME. Kết hợp với bản ghi RRSIG để xác thực cho zone dữ liệu.

  Bản ghi ký ủy quyền (DS - Delegation Signer): thiết lập chứng thực giữa các zone dữ liệu, sử dụng trong việc ký xác thực trong quá trình chuyển giao DNS.

Mục tiêu đặt ra là DNSSEC không làm thay đổi tiến trình truyền dữ liệu DNS và quá trình chuyển giao từ các DNS cấp cao xuống các DNS cấp thấp hơn, mặt khác đối với các máy trạm cần đáp ứng khả năng hỗ trợ các cơ chế mở rộng này. Một zone dữ liệu được ký xác thực sẽ chứa đựng một trong các bản ghi RRSIG, DNSKEY, NSEC và DS.

Hình 3: Quá trình chứng thực của DNSSEC.

Như vậy bằng cách thức tổ chức thêm những bản ghi mới và những giao thức đã được chỉnh sửa nhằm chứng thực nguồn gốc và tính toàn vẹn dữ liệu cho hệ thống, với DNSSEC, hệ thống DNS đã được mở rộng thêm các tính năng bảo mật và được tăng cường độ an toàn, tin cậy, khắc phục được những nhược điểm của thiết kế sơ khai ban đầu. Vừa đáp ứng được các yêu cầu thông tin định tuyến về tên miền, giao thức làm việc giữa các máy chủ DNS với nhau, vừa đáp ứng được các yêu cầu bảo mật, tăng cường khả năng dự phòng cho hệ thống.

Một vấn đề lớn phải đối mặt với việc áp dụng DNSSEC trong đám mây là thực tế nhiều chuyên gia bảo mật không biết tới DNSSEC hoặc chưa có nhiều kinh nghiệm để đảm bảo thực hiện tốt các tính năng của dịch vụ. Năm 2013, Uncompiled.com công bố nghiên cứu với kết quả một nửa số nhân viên IT phụ trách an ninh mạng tại các tổ chức lớn nhất thế giới chưa từng nghe đến DNSSEC hoặc có kiến thức khá khiêm tốn về nó. Đây không phải là dấu hiệu tốt cho việc áp dụng rộng rãi DNSSEC tới các nhà cung cấp dịch vụ điện toán đám mây (CSP). Hơn nữa, DNSSEC chỉ hoạt động để đảm bảo tính toàn vẹn dữ liệu, chứ không thể ngăn chặn các hình thức tấn công phổ biến như tràn bộ nhớ đệm (buffer overruns), chiếm quyền điều khiển (race conditions) hay tấn công DoS.

Anycast

Anycast là kiểu truyền thông tin mà ở mô hình đó, client truyền dữ liệu một lúc đến nhiều điểm khác nhau. Khi truy xuất, các dữ liệu sẽ được lấy tại điểm gần nhất so với vị trí của client. Nếu điểm gần nhất mất kết nối, client sẽ được tự động chuyển hướng đến các điểm khác (gần nhất có thể) để lấy các dữ liệu cần thiết mà không xảy ra tình trạng downtime trong bất kỳ trường hợp nào.

Hình 4: Mô hình cụm hệ thống DNS-Anycast.

Nguyên lý hoạt động của máy chủ DNS-Anycast như sau: Trên máy chủ DNS cấu hình phần chức năng như một máy chủ DNS thông thường, tuy nhiên máy chủ DNS này được cấu hình 2 giao diện mạng, một nhận địa chỉ anycast để nhận và trả lời truy vấn tên miền, một giao diện khác nhận địa chỉ mạng thực làm chức năng quản lý. Địa chỉ dùng cho máy chủ DNS có vai trò rất quan trọng, để phục vụ công tác quản lý, đồng bộ dữ liệu giữa các máy chủ DNS yêu cầu một kết nối có định hướng và tin cậy, do đó ngoài địa chỉ IP anycast còn thêm một địa chỉ thực hoạt động khác làm địa chỉ quản lý. Các cụm DNS-Anycast này sẽ đặt tại nhiều nơi khác nhau và được định tuyến, quảng bá vào bảng định tuyến trên Internet.

Trên mạng Internet, anycast được thực hiện bằng việc sử dụng giao thức định tuyến toàn cầu BGP để đông thời quảng bá đồng bộ một dải địa chỉ IP đích từ nhiều điểm khác nhau trên Internet. Do vậy trong trường đích của gói tin trên mạng thì dải địa chỉ anycast này sẽ được định tuyến tới điểm gần nhất trên mạng theo thuật toán lựa chọn đường đi trong giao thức định tuyến mạng. Các host trên mạng được cấu hình cùng một địa chỉ Anycast.

Một số ưu điểm của Anycast khi ứng dụng cho hệ thống DNS: (1) Các client, server, router không cần các phần mềm đặc biệt; (2) Không ảnh hưởng xấu tới hệ thống mạng hiện tại, chỉ cần tận dụng cơ hở hạ tầng sẵn có; (3) Cân bằng tải; (4) Tăng độ linh động; (5) Giảm độ trễ; (6) Cơ chế phân tán, giảm nguy cơ DoS.

Với những ưu điểm trên, các CSP quản lý hệ thống DNS nên sử dụng anycast. Cân bằng lưu lượng truy cập Anycast, cũng như DNSSEC, là thành phần bổ sung cho chiến lược tổng thể đảm bảo an toàn cho DNS.

DNS Monitor

Công cụ monitor hệ thống DNS sẽ giúp nhân viên quản trị hệ thống nhanh chóng phát hiện ra các dấu hiệu đáng ngờ, từ đó đưa ra các hành động cần thiết. Việc thực hiện giám sát sẽ giúp:

-Xem hiện trạng làm việc của server DNS: DNS Monitor sẽ gửi thông báo khi DNS server hoạt động không bình thường. DNS Monitor có thể gửi truy vấn DNS tới tất cả các DNS server cũng như nhận thông tin trả lời (response) mà không làm ảnh hưởng tới các máy khác.

-Phân tích chất lượng các response từ những DNS Server được giám sát: DNS Monitor có thể ghi lại log và hiển thị từng mục của từng response, cho phép người dùng có thể quyết định có nên tối ưu hóa DNS Server hay không.

-Cung cấp thông tin chi tiết để giải quyết vấn đề: Dựa vào thông tin "Success/Failure" khi truy vấn một tên domain tới một vài DNS Server, DNS Monitor có thể cung cấp các nguyên nhân liên quan rất nhanh chóng.

Trạng thái "Failure": DNS Monitor sẽ hiển thị những nguyên nhân có thể như: timeout, Format error, Server failure, Name Error, Not Implemented, Request Refused, Send Request Failed, Get part reply...

Trạng thái "Success": DNS Monitor có thể hiển thị thông tin chi tiết từ các response như Question section, Answer section, Authority section, Additional section...

Nổi bật Tạp chí Thông tin & Truyền thông
Đừng bỏ lỡ
Các biện pháp đảm bảo an ninh cho hệ thống DNS trên đám mây
POWERED BY ONECMS - A PRODUCT OF NEKO