1. Trang chủ
  2. » Luận Văn - Báo Cáo

Chủ Đề tìm hiểu kiến trúc, hoạt Động, các lỗ hổng bảo mật và các dạng tấn công vào giao thức dns

21 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tìm Hiểu Kiến Trúc, Hoạt Động, Các Lỗ Hổng Bảo Mật Và Các Dạng Tấn Công Vào Giao Thức DNS
Tác giả Vũ Tuấn Hùng, Nguyễn Minh Hiệu, Trần Duy Hưng, Chu Bá Hiếu, Bùi Ngọc Hiến
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thông
Chuyên ngành An Toàn Mạng
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 21
Dung lượng 3,63 MB

Nội dung

Các loại máy chủ tên miền.- Máy chủ tên miền có thẩm quyền Authoritative name server là một máy chủ tênmiền có thể trả lời các truy vấn DNS từ các dữ liệu gốc: Đây là máy chủ lưu thông t

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA AN TOÀN THÔNG TIN

Hà Nội: 09/2024

1

Trang 2

*DNS là gì ?

- DNS viết tắt của Domain Name System có nghĩa là hệ thống phân giải tên miền DNS

là hệ thống cho phép thiết lập tương ứng giữa địa chỉ IP và tên miền trên Internet

1 Chức năng của DNS.

- Phân giải tên miền: DNS Server giúp phân giải tên miền của các trang web thành địa chỉ IP của máy chủ chứa trang web đó Khi bạn nhập tên miền vào trình duyệt, trình duyệt sẽ gửi yêu cầu đến DNS Server để tìm kiếm địa chỉ IP tương ứng

- Lưu trữ thông tin DNS: DNS Server lưu trữ thông tin về các tên miền và địa chỉ IP tương ứng Khi trình duyệt yêu cầu tìm kiếm một tên miền, DNS Server sẽ truy vấn trong

cơ sở dữ liệu của nó để tìm kiếm thông tin tương ứng với tên miền đó

- Cập nhật thông tin DNS: DNS Server có thể được cấu hình để cập nhật thông tin về tên miền và địa chỉ IP tương ứng Các thay đổi này có thể được thực hiện bởi quản trị viên mạng hoặc tự động thông qua các công cụ quản lý DNS

- Tăng tốc độ truy cập: DNS Server cũng có thể được sử dụng để tăng tốc độ truy cập cho người dùng bằng cách lưu trữ thông tin DNS trong bộ nhớ đệm Khi truy vấn DNS là

gì được thực hiện, DNS Server sẽ truy cập thông tin từ bộ nhớ đệm trước, nếu có, thay vìthực hiện truy vấn đến các máy chủ DNS khác

- Bảo mật thông tin DNS: DNS Server có thể được cấu hình để đảm bảo tính bảo mật của thông tin DNS Các tính năng bảo mật bao gồm chữ ký số, mã hóa và xác thực ngườidùng để đảm bảo rằng thông tin DNS là gì được truyền tải an toàn và không bị đánh cắp

2 Cấu trúc của DNS

* DNS được phân thành nhiều cấp:

- Gốc (Domain root): Nó là đỉnh của nhánh cây của tên miền Nó được biểu diễn đơngiản chỉ là dấu chấm “.”

-Tên miền cấp một (Top-level-domain) : gồm vài kí tự xác định một nước, khu vưc

hoặc tổ chức Nó được thể hiện là “.com” , “.edu”,…

- Tên miền cấp hai (Second-level-domain): Nó rất đa dạng có thể là tên một công ty,một tổ chức hay một cá nhân

- Tên miền cấp nhỏ hơn (Subdomain): Chia thêm ra của tên miền cấp hai trở xuống thường được sử dụng như chi nhánh, phòng ban của một cơ quan hay chủ đề nào đó

2

Trang 3

3 Các loại máy chủ tên miền.

- Máy chủ tên miền có thẩm quyền (Authoritative name server) là một máy chủ tênmiền có thể trả lời các truy vấn DNS từ các dữ liệu gốc: Đây là máy chủ lưu thông tin vềtên miền trong Zone mà nó quản lý

- Máy chủ tên miền Primary (chính)Secondary (phụ):

+ Máy chủ Primary lưu trữ và cho phép cập nhật Zone gốc của tên miền

+ Máy chủ Secondary nhận thông tin cập nhật từ máy chủ Primary và để đảm bảo tínhsẵn dùng cho hệ thống tên miền

- Máy chủ tên miền Recursive và Caching: Đây là các máy chủ tên miền trung gian hỗtrợ người dùng truy vấn và lưu các tên miền đã truy vấn gần đây

4 Các loại bản ghi tên miền.

- A record (Address record): Lưu trữ địa chỉ IP của một tên miền

- AAAA record (IPv6 address record): Lưu trữ địa chỉ IPv6 của một tên miền

3

Trang 4

- CNAME record (Canonical Name record): Lưu trữ tên miền chính thức (canonicalname) của một tên miền.

- MX record (Mail Exchange record): Lưu trữ thông tin về các máy chủ thư điện tử(mail server) chịu trách nhiệm cho tên miền

- NS record (Name Server record): Lưu trữ thông tin về máy chủ tên miền (nameserver) chịu trách nhiệm cho tên miền

- PTR record (Pointer record): Lưu trữ thông tin về tên miền phân giải ngược (reverseDNS lookup) của một địa chỉ IP

- SOA record (Start of Authority record): Lưu trữ thông tin về máy chủ tên miềnchính thức (primary name server) cho tên miền

- SRV record (Service record): Lưu trữ thông tin về các dịch vụ (service) mà một tênmiền cung cấp

- TXT record (Text record): Lưu trữ các thông tin bổ sung khác về tên miền, ví dụ như chứng chỉ SSL hay các thông tin xác thực

5 Kiến trúc của DNS.

* Không gian tên miền (Domain name space)

- Không gian tên miền là một kiến trúc dạng cây (hình), có chứa nhiều nốt (node) Mỗinốt trên cây sẽ có một nhãn và có không hoặc nhiều resource record (RR), chúng giữthông tin liên quan tới tên miền Nốt root không có nhãn

4

Trang 5

* Tên miền (Domain name)

- Tên miền được tạo thành từ các nhãn và phân cách nhau bằng dấu chấm (.), ví dụexample.com Tên miền còn được chia theo cấp độ như tên miền top level, tên miền cấp

1, cấp 2

* Cú pháp tên miền (Domain name syntax)

- Tên miền được định nghĩa trong các RFC 1035, RFC 1123, và RFC 2181 Một tên miềnbao gồm một hoặc nhiều phần, gọi là các nhãn (label), chúng cách nhau bởi dấu chấm (.),

ví dụ example.com

- Hệ thống phân giải tên miền tính theo hướng từ phải sang trái Ví dụwww.example.com thì nhãn example là một tên miền con của tên miền com, và www làtên miền con của tên miền example.com Cây cấu trúc này có thể có tới 127 cấp

* Tên miền quốc tế hóa (Internationalized domain names)

- Do sự giới hạn của bộ ký tự ASCII trong việc diễn tả các ngôn ngữ khác nhau trên thếgiới, ICANN cho phép thiết lập hệ thống IDNA (Internationalized domain names

5

Trang 6

Application), dùng ký tự Unicode để biểu diễn tên miền, ví

dụ http://TênMiềnTiếngViệt.vn

* Máy chủ tên miền (NS - Name Server)

- Máy chủ tên miền chứa thông tin lưu trữ về một số tên miền Hệ thống phân giải tênmiền được vận hành bởi hệ thống dữ liệu phân tán, dạng Client-Server Các node của hệthống dữ liệu này là các máy chủ tên miền Mỗi một tên miền sẽ có ít nhất một máy chủtên miền chứa thông tin về tên miền đó Các thông tin về máy chủ tên miền sẽ được lưutrữ trong các zone của tên miền Có hai dạng Name Server (NS) là là Primary vàSecondary Một Client sẽ ưu tiên hỏi Primary trước và thử lại với Secondary nếu Primarykhông thể trả lời thông tin về tên miền đó trong thời gian quy định

* Máy chủ tên miền có thẩm quyền (Authoritative name server)

- Máy chủ tên miền có thẩm quyền là một máy chủ tên miền có thể trả lời các truy vấnDNS từ các dữ liệu gốc, ví dụ, tên miền quản trị hoặc phương thức DNS động

6 Cách thức hoạt động của DNS.

6

Trang 7

- Khi người dùng truy cập một website, máy tính sẽ gửi yêu cầu đến máy chủ DNS cục

bộ để tìm địa chỉ IP của website đó Máy chủ DNS cục bộ sẽ kiểm tra cơ sở dữ liệu củamình xem có chứa địa chỉ IP của website hay không Nếu có, sẽ trả về địa chỉ IP cho máytính của người dùng

- Quá trình phân giải DNS bao gồm chuyển đổi tên máy chủ (chẳng hạnnhư www.example.com) thành địa chỉ IP thân thiện với máy tính (chẳng hạn như192.168.1.1) Một địa chỉ IP được cung cấp cho mỗi thiết bị trên Internet và địa chỉ đó làcần thiết để tìm thiết bị Internet phù hợp Giống như một địa chỉ đường phố được sửdụng để tìm một ngôi nhà cụ thể

- Khi người dùng muốn tải một trang web, một bản dịch phải xảy ra giữa những gì ngườidùng nhập vào trình duyệt web của họ (example.com) và địa chỉ thân thiện với máy cầnthiết để định vị trang web example.com

- Nếu máy chủ DNS cục bộ không có địa chỉ IP của website, nó sẽ hỏi máy chủ DNSgốc Máy chủ DNS gốc sẽ trả về địa chỉ IP của máy chủ DNS cấp cao nhất cho website

7

Trang 8

- Máy chủ DNS cấp cao nhất sẽ trả về địa chỉ IP của máy chủ DNS quản lý website Máychủ DNS quản lý sẽ trả về địa chỉ IP của trang web cho máy chủ DNS cục bộ.

- Cuối cùng, máy chủ DNS cục bộ sẽ trả về địa chỉ IP của trang web cho máy tính củangười dùng Máy tính của người dùng sẽ sử dụng địa chỉ IP này để kết nối với website

7 Các dạng tấn công vào giao thức DNS

7.1. Tấn công đường hầm DNS (DNS Tunneling)

- DNS Tunneling là một kỹ thuật sử dụng giao thức DNS (Domain Name System) để truyền tải

dữ liệu thông qua các gói tin DNS Giao thức DNS được sử dụng để ánh xạ các tên miền thành địa chỉ IP, nhưng DNS tunneling sử dụng các trường dữ liệu không được sử dụng thông thường trong gói tin DNS để truyền tải dữ liệu bổ sung DNS Tunneling thường được sử dụng trong cáctình huống mà việc truy cập vào Internet bị hạn chế hoặc bị kiểm soát, như trong các mạng cơ quan, doanh nghiệp hoặc các mạng công cộng Tuy nhiên, DNS Tunneling cũng có thể được sử dụng để thực hiện các cuộc tấn công mạng, bao gồm truy cập trái phép vào mạng hoặc truyền tải thông tin nhạy cảm mà không bị phát hiện

a, Tổng quan về DNS Tunneling

DNS Tunneling là một kỹ thuật sử dụng giao thức DNS (Domain Name System) để truyền tải

8

Trang 9

dữ liệu bổ sung bằng cách sử dụng các trường không chính thức hoặc không thông thường tronggiao thức DNS Mục tiêu chính của DNS Tunneling là truyền tải dữ liệu thông qua các gói tin DNS mà không cần sử dụng các kênh truyền thông truyền thống như TCP hoặc UDP DNS Tunneling có thể được sử dụng để bypass các biện pháp kiểm soát mạng, lọc nội dung hoặc để truyền tải dữ liệu một cách ẩn danh mà không bị phát hiện Điều này có thể gây ra nguy cơ bảo mật lớn vì các hành động này có thể được sử dụng để thực hiện các cuộc tấn công mạng hoặc truy cập trái phép vào mạng.

b, Phương thức hoạt động của kỹ thuật DNS Tunneling

Cuộc tấn công DNS Tunneling bắt đầu khi người dùng tải phần mềm độc hại xuống máy tính hoặc tin tặc khai thác thành công lỗ hổng trong hệ thống máy tính và cài đặt payload độc hại Thông thường, những kẻ tấn công sẽ muốn giữ quyền kiểm soát thiết bị, cho phép chúng chạy lệnh hoặc truyền dữ liệu ra ngoài mạng Internet Để làm điều này, kẻ tấn công cần thiết lập Tunnel - một cách gửi lệnh và nhận dữ liệu từ hệ thống bị xâm nhập đồng thời tránh bị phát hiệnbởi các biện pháp bảo mật mạng của nó

Lưu lượng DNS là hoàn hảo cho việc khai thác này vì nó thường tự do đi qua các biện pháp bảomật như tường lửa Ở cấp độ cao, một cuộc tấn công DNS Tunneling có ba giai đoạn:

- Giai đoạn 1: Kẻ tấn công đăng ký một miền, ví dụ Tunnel.badactor.com Tên miền trỏ đến máy chủ điều khiển C&C của kẻ tấn công, được sử dụng để liên lạc và đánh cắp dữ liệu;

- Giai đoạn 2: Kẻ tấn công lây nhiễm phần mềm độc hại vào máy tính của mục tiêu, sau đó mã hóa thông tin mà kẻ tấn công mong muốn Giả sử mục tiêu của phần mềm độc hại là truyền danh sách người dùng gồm Alice, Bob và Eve dưới dạng dữ liệu Base64 Các hướng dẫn sẽ trông giống như các chuỗi ký tự như “W2FsaWNlLCBib2IsIGV2ZV0” Do các yêu cầu DNS hiếm khi bị tường lửa chặn nên máy tính bị nhiễm được phép gửi yêu cầu DNS cho miền, trong

ví dụ này sẽ trông giống như sau: “W2FsaWNlLCBib2IsIGV2ZV0.tunnel badactor.com”;

- Giai đoạn 3: Trình phân giải DNS có chức năng chuyển đổi tên miền thành địa chỉ IP - định tuyến truy vấn đến máy chủ C&C của kẻ tấn công Dữ liệu hiện đã được truyền từ nạn nhân đến

kẻ tấn công thông qua DNS Tunneling với trình phân giải DNS đóng vai trò trung gian giữa nạnnhân và kẻ tấn công, dữ liệu của mục tiêu được mã hóa sẽ được truyền đến máy chủ C&C

Kỹ thuật DNS Tunneling cho phép kẻ tấn công thực hiện nhiều hoạt động độc hại, cụ thể:

- Cài đặt phần mềm độc hại: Những kẻ tấn công có thể sử dụng DNS Tunneling để cài đặt phần mềm độc hại trên các hệ thống của mục tiêu;

- Thu thập thông tin xác thực: Sau khi có quyền kiểm soát thiết bị, kẻ tấn công có thể sử dụng Keylogger và các phương pháp khác để thu thập thông tin xác thực của người dùng Những thông tin này có thể được sử dụng để thực hiện các cuộc tấn công bổ sung hoặc được bán trên Web đen;

- Khám phá mạng: Các truy vấn DNS từ bên trong mạng bị nhiễm có thể giúp kẻ tấn công xây dựng bản đồ mạng, xác định hệ thống và tài sản có giá trị cao trong hệ thống mạng của mục tiêu;

- Lọc dữ liệu: Tội phạm mạng có thể sử dụng DNS Tunneling để truyền dữ liệu ra khỏi mạng,

9

Trang 10

bao gồm cả thông tin nhạy cảm hoặc bí mật của người dùng;

- Điều khiển các thiết bị: Với khả năng kiểm soát thiết bị bị nhiễm, kẻ tấn công có thể kích hoạt các mối đe dọa khác như tấn công DDoS

Vì không có kết nối trực tiếp giữa kẻ tấn công và nạn nhân nên việc sử dụng đường hầm DNS khiến các hệ thống bảo vệ hoặc chuyên gia ứng cứu sự cố gặp khó khăn hơn trong việc truy tìm nguồn gốc của cuộc tấn công

c, Phương pháp phòng tránh

- Kỹ thuật DNS Tunneling là mối đe dọa thực sự đối với cả tổ chức và cá nhân, bởi vì nó có thể vượt qua tường lửa mà không bị phát hiện, khiến các hệ thống bảo mật truyền thống không thể ngăn chặn Mặc dù về mặt kỹ thuật có thể chặn các dịch vụ DNS bằng tường lửa nhưng làm nhưvậy sẽ dẫn đến xung đột đáng kể các ứng dụng khác trong hệ thống Việc chặn hoặc hạn chế lưulượng mạng có thể khiến người dùng khó chịu, không thể truy cập tài nguyên mạng và một số vịtrí nhất định trên Internet Vì DNS Tunneling vừa khó phát hiện vừa khó ngăn chặn bằng các phương pháp truyền thống, nên đây là “mỏ vàng” cho những kẻ xấu muốn lấy cắp dữ liệu từ mạng mục tiêu của chúng mà không bị phát hiện Dưới đây là một số biện pháp để giảm nguy

cơ bị tấn công DNS Tunneling:

+) Áp dụng nguyên tắc Zezo Trust: Các phương pháp bảo mật không tin cậy chống lại các cuộc tấn công DNS Tunneling thông qua trạng thái “từ chối” mặc định có thể giảm thiểu đáng kể rủi

ro này vì chúng coi tất cả người dùng trong và ngoài mạng là kẻ thù tiềm tàng Khi kết nối DNSđược thực hiện thông qua trình phân giải DNS, việc lọc dữ liệu có thể được thực hiện Tuy nhiên, với mức độ tin cậy bằng không, người dùng có thể áp dụng chính sách danh sách kiểm soát truy cập (ACL) làm cơ chế thực thi Tại thời điểm này, người dùng có thể phát hiện hành viđáng ngờ và các dấu hiệu xâm phạm (IoC) Các vấn đề về Zero-day cũng có thể được dừng, chặn và xử lý Điều này bao gồm các mối đe dọa nội bộ cố gắng lấy cắp dữ liệu, chẳng hạn như một nhân viên bí mật cố gắng sao chép dữ liệu bí mật hoặc độc quyền trước khi chuyển sang công ty khác

+) Thiết lập kiểm soát truy cập chi tiết: Nền tảng của bảo mật mạng là kiểm soát truy cập là biệnpháp song song không thể tách rời của biện pháp Zero Trust Cùng nhau, chúng cung cấp ranh giới truy cập logic dựa trên nhận dạng và bối cảnh Điều này làm giảm thiểu nguy cơ tấn công vào hệ thống và tăng cường bảo mật DNS

+)Triển khai chương trình thông tin về mối đe dọa: Thiết lập chương trình thu thập thông tin về mối đe dọa của riêng cơ quan, tổ chức hoặc đăng ký dịch vụ thu thập thông tin về mối đe dọa đểnhận được các báo cáo phù hợp Các thông tin về các nhóm tin tặc, mối đe dọa phổ biến nhất cũng như các chiến thuật, kỹ thuật khác nhau trong hệ thống SOC sẽ giúp tổ chức bảo vệ tốt hơn hệ thống mạng đối với cuộc tấn công DNS Tunneling

+)Sử dụng trí tuệ nhân tạo và học máy: Các chuyên gia an ninh mạng dự đoán rằng đến năm

10

Trang 11

2035, 90% hoạt động phát hiện và 60% phản hồi đối với các cuộc tấn công mạng sẽ được xử lý bởi trí tuệ nhân tạo (AI) Các dấu hiệu nhận biết của cuộc tấn công DNS Tunneling sẽ được AI

và học máy (ML) ghi nhớ, đưa ra cảnh bảo kịp thời cho tổ chức, giúp tổ chức bảo vệ hiệu quả khỏi các cuộc tấn công mạng trong tương lai

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

a, DNS amplification là gì?

Một cuộc tấn công DNS amplification là một cuộc tấn công DDoS bằng cách tăng cường lưu lượng truy cập thông qua sử dụng các DNS resolvers mở, khiến cho một máy chủ hoặc mạng mục tiêu bị quá tải và trở nên không thể truy cập được Phương pháp tấn công này dựa trên khả năng phản hồi của các máy chủ DNS, khi kẻ tấn công gửi yêu cầu giả mạo tới các máy chủ DNS

mở và yêu cầu truy vấn thông tin lớn hơn Sau đó, các máy chủ DNS sẽ trả lại phản hồi với lượng dữ liệu lớn hơn nhiều lần, tạo ra một lưu lượng truy cập đáng kể, vượt quá khả năng xử lýcủa máy chủ hoặc mạng mục tiêu Kết quả là, máy chủ hoặc mạng sẽ bị quá tải và trở nên khôngthể truy cập được

b, Nguyên lý của cuộc tấn công DNS amplification

Các cuộc tấn công DNS amplification đều khai thác sự chênh lệch về lưu lượng truy cập giữa kẻtấn công và nguồn tài nguyên web được nhắm mục tiêu Khi sự chênh lệch này được khuếch đạiqua nhiều yêu cầu, khối lượng lưu lượng kết quả có thể làm gián đoạn cơ sở hạ tầng mạng Bằng cách gửi các yêu cầu nhỏ nhưng có thời gian phản hồi lớn, nhân bản quá trình này bằng cách có mỗi bot trong một botnet đưa ra các yêu cầu tương tự, kẻ tấn công được che giấu khỏi việc bị phát hiện và thu được lợi ích từ lưu lượng tấn công tăng đáng kể

Một bot đơn lẻ trong một cuộc tấn công DNS amplification có thể được hiểu trong bối cảnh mộtkhách hàng xấu tính gọi đến một nhà hàng và nói “Tôi sẽ mua 100 cái bánh kem, hãy gọi lại và cho tôi biết đã làm được bao nhiêu cái bánh kem rồi” Khi nhà hàng yêu cầu một số điện thoại

để gọi lại, số điện thoại được cung cấp chính là số điện thoại của nạn nhân bị nhắm mục tiêu Sau đó, mục tiêu nhận được một cuộc gọi từ nhà hàng với rất nhiều thông tin mà họ không yêu cầu

Kết quả là mỗi bot gửi yêu cầu đến các máy chủ DNS với một địa chỉ IP giả mạo, được thay đổithành địa chỉ IP nguồn thực của nạn nhân bị nhắm mục tiêu Sau đó, mục tiêu nhận được một phản hồi từ các máy chủ DNS Để tạo ra một lượng lớn lưu lượng truy cập, kẻ tấn công cấu trúcyêu cầu sao cho tạo ra phản hồi lớn nhất có thể từ các máy chủ DNS Kết quả là mục tiêu nhận được sự khuếch đại của lưu lượng truy cập ban đầu của kẻ tấn công, và mạng của họ trở nên tắc nghẽn với lưu lượng truy cập giả mạo, gây ra tình trạng từ chối dịch vụ

11

Ngày đăng: 14/02/2025, 15:35