LỜI MỞ ĐẦU Trong thời đại “phẳng” như ngày nay, vai trò của Công Nghệ Thông Tin và Internet vô cùng quan trọng. Điều này kéo theo nhiều ngành kinh tế phụ thuộc vào máy tính. Chính vì vậy, nhiều ý đồ phá hoại đã nhắm vào hệ thống máy tính. Nhiều website của các doanh nghiệp, công ty bảo mật hàng đầu trên thế giới đều bị hacker tấn công, gây tổn thất lớn về nguồn tài chính cũng như uy tín cho doanh nghiệp. Tình hình an ninh mạng vẫn trên đà bất ổn và tiếp tục được coi là năm “báo động đỏ” của an ninh mạng Việt Nam và thế giới khi có nhiều lỗ hổng an ninh mạng nghiêm trọng được phát hiện, hình thức tấn công thay đổi và có rất nhiều cuộc tấn công của giới tội phạm công nghệ cao vào các hệ thống công nghệ thông tin của doanh nghiệp và chính phủ. Với mục đích nghiên cứu và tìm hiểu nguyên lý, cơ chế của các cuộc tấn công của hacker nói chung, và từng kỹ thuật tấn công nói riêng, nhóm chúng em chọn đề tài tìm hiểu và mô phỏng tấn công dịch vụ DNS. Do kinh nghiệm và kiến thức chưa được sâu sắc nên trong báo cáo về đề tài của nhóm mong quý thầy cô góp ý thêm để nhóm có thể hoàn thiện tốt hơn các đề tài nghiên cứu về sau Xin chân thành cảm ơn Chương I. Tổng quan về hệ thống tên miền DNS (Domain Name System) 1. Giới thiệu hệ thống tên miền DNS (Domain Name System) DNS là từ viết tắt trong tiếng Anh của Domain Name System, là Hệ thống tên miền được phát minh vào năm 1984 cho Internet, định nghĩa trong các RFC 1034 và 1035, chỉ một hệ thống cho phép thiết lập tương ứng giữa địa chỉ IP và tên miền. Hệ thống tên miền (DNS) là một hệ thống đặt tên theo thứ tự cho máy vi tính, dịch vụ, hoặc bất kì nguồn lực tham gia vào Internet. Nó liên kết nhiều thông tin đa dạng với tên miền được gán cho những người tham gia. Quan trọng nhất là nó chuyển tên miền có ý nghĩa cho con người vào số định danh (nhị phân), liên kết với các trang thiết bị mạng cho các mục đích định vị và địa chỉ hóa các thiết bị khắp thế giới. Hình 1. DNS trong mô hình TCPIP DNS dùng cổng 53 để truyền tải thông tin. Tại lớp vận chuyển, DNS sử dụng UDP hoặc TCP. UDP là giao thức ko yêu cầu tính tin cậy của dữ liệu cao, thường được sử dụng cho việc trả lời các query từ các host để đảm bảo tính nhanh chóng, khi sử dụng udp thì hạn chế của gói tin là 512 bytes. Do đó UDP thường được sử dụng để trả lời các query của host. Còn TCP là giao thức đảm bảo thông tin, thường được sử dụng khi các DNS server cập nhật thông tin với nhau, đảm bảo tính chính xác. Thường thì khi các DNS server cập nhật thông tin với nhau, dữ liệu sẽ ko bị hạn chế. 2. Chức năng của hệ thống tên miền DNS (Domain Name System) Mỗi Website có một tên (là tên miền hay đường dẫn URL:Uniform Resource Locator) và một địa chỉ IP. Địa chỉ IP gồm 4 nhóm số cách nhau bằng dấu chấm(IPv4). Khi mở một trình duyệt Web và nhập tên website, trình duyệt sẽ đến thẳng website mà không cần phải thông qua việc nhập địa chỉ IP của trang web. Quá trình dịch tên miền thành địa chỉ IP để cho trình duyệt hiểu và truy cập được vào website là công việc của một DNS server. Các DNS trợ giúp qua lại với nhau để dịch địa chỉ IP thành tên và ngược lại. Người sử dụng chỉ cần nhớ tên, không cần phải nhớ địa chỉ IP (địa chỉ IP là những con số rất khó nhớ). Hệ thống tên miền giúp cho nó có thể chỉ định tên miền cho các nhóm người sử dụng Internet trong một cách có ý nghĩa, độc lập với mỗi địa điểm của người sử dụng. Do đó, World Wide Web siêu liên kết và trao đổi thông tin trên Internet có thể duy trì ổn định và cố định ngay cả khi định tuyến dòng Internet thay đổi hoặc những người tham gia sử dụng một thiết bị di động. Tên miền internet dễ nhớ hơn các địa chỉ IP như là 208.77.188.166 (IPv4) hoặc 2001: db8: 1f70:: 999: de8: 7648:6 e8 (IPv6). Mọi người tận dụng lợi thế này khi họ thuật lại có nghĩa các URL và địa chỉ email mà không cần phải biết làm thế nào các máy sẽ thực sự tìm ra chúng. Hệ thống tên miền phân phối trách nhiệm gán tên miền và lập bản đồ những tên tới địa chỉ IP bằng cách định rõ những máy chủ có thẩm quyền cho mỗi tên miền. Những máy chủ có tên thẩm quyền được phân công chịu trách nhiệm đối với tên miền riêng của họ, và lần lượt có thể chỉ định tên máy chủ khác độc quyền của họ cho các tên miền phụ. Kỹ thuật này đã thực hiện các cơ chế phân phối DNS, chịu đựng lỗi, và giúp tránh sự cần thiết cho một trung tâm đơn lẻ để đăng kí được tư vấn và liên tục cập nhật. 3. Cơ chế phân giải DNS service có 2 chức năng chính là phân giải tên > IP và IP > tên. 3.1 Phân giải tên thành địa chỉ IP Root Name Server là máy chủ quản lý các name server ở mức toplevel domain. Khi có query về 1 tên domain nào đó thì Root Name Server sẽ cung cấp tên và địa chỉ IP của name server quản lý toplevel domain đó (thực tế thì hầu hết các root server cũng chính là máy chủ quản lý toplevel domain) và đến lược các name server của toplevel domain cung cấp danh sách các name server có quyền trên các seconlevel domain mà domain này thuộc
Trang 1HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO ĐỀ TÀI MÔN HỌC
AN TOÀN HỆ ĐIỀU HÀNH
TÌM HIỂU VÀ MÔ PHỎNG TẤN CÔNG DỊCH VỤ DNS
Giảng viên: Đỗ Quang Trung Đồng Thị Thùy Linh Sinh viên :
Phạm Hữu Thiết
Tô Quang Hiền
Tạ Thị Thanh Thùy Trần Viết Trọng Lớp : AT8B
Trang 2Mục lục
Trang 3Danh mục viết tắt
Trang 4Danh sách hình vẽ
Trang 5LỜI MỞ ĐẦU
Trong thời đại “phẳng” như ngày nay, vai trò của Công Nghệ Thông Tin và Internet vô cùng quan trọng Điều này kéo theo nhiều ngành kinh tế phụ thuộc vào máy tính Chính vì vậy, nhiều ý đồ phá hoại đã nhắm vào hệ thống máy tính
Nhiều website của các doanh nghiệp, công ty bảo mật hàng đầu trên thế giới đều bị hacker tấn công, gây tổn thất lớn về nguồn tài chính cũng như uy tín cho doanh nghiệp Tình hình an ninh mạng vẫn trên đà bất ổn và tiếp tục được coi là năm “báo động đỏ” của an ninh mạng Việt Nam và thế giới khi có nhiều lỗ hổng
an ninh mạng nghiêm trọng được phát hiện, hình thức tấn công thay đổi và có rất nhiều cuộc tấn công của giới tội phạm công nghệ cao vào các hệ thống công nghệ thông tin của doanh nghiệp và chính phủ
Với mục đích nghiên cứu và tìm hiểu nguyên lý, cơ chế của các cuộc tấn công của hacker nói chung, và từng kỹ thuật tấn công nói riêng, nhóm chúng em chọn đề tài tìm hiểu và mô phỏng tấn công dịch vụ DNS
Do kinh nghiệm và kiến thức chưa được sâu sắc nên trong báo cáo về đề tài của nhóm mong quý thầy cô góp ý thêm để nhóm có thể hoàn thiện tốt hơn các đề tài nghiên cứu về sau !
Xin chân thành cảm ơn !
Trang 6Chương I Tổng quan về hệ thống tên miền DNS
(Domain Name System)
1. Giới thiệu hệ thống tên miền DNS (Domain Name System)
DNS là từ viết tắt trong tiếng Anh của Domain Name System, là Hệ thống tên miền được phát minh vào năm 1984 cho Internet, định nghĩa trongcác RFC 1034 và 1035, chỉ một hệ thống cho phép thiết lập tương ứng giữa địa chỉ IP và tên miền Hệ thống tên miền (DNS) là một hệ thống đặt tên theo thứ tự cho máy vi tính, dịch vụ, hoặc bất kì nguồn lực tham gia vào Internet Nó liên kết nhiều thông tin đa dạng với tên miền được gán cho những người tham gia Quan trọng nhất là nó chuyển tên miền có ý nghĩa cho con người vào số định danh (nhị phân), liên kết với các trang thiết bị mạng cho các mục đích định vị và địa chỉ hóa các thiết bị khắp thế giới
Hình 1 DNS trong mô hình TCP/IP
DNS dùng cổng 53 để truyền tải thông tin Tại lớp vận chuyển, DNS sử dụng UDP hoặc TCP UDP là giao thức ko yêu cầu tính tin cậy của dữ liệu cao, thường được sử dụng cho việc trả lời các query từ các host để đảm bảo tính nhanh chóng, khi sử dụng udp thì hạn chế của gói tin là 512 bytes Do
đó UDP thường được sử dụng để trả lời các query của host Còn TCP là giaothức đảm bảo thông tin, thường được sử dụng khi các DNS server cập nhật thông tin với nhau, đảm bảo tính chính xác Thường thì khi các DNS server cập nhật thông tin với nhau, dữ liệu sẽ ko bị hạn chế
Trang 72. Chức năng của hệ thống tên miền DNS (Domain Name System)
Mỗi Website có một tên (là tên miền hay đường dẫn URL:Uniform Resource Locator) và một địa chỉ IP Địa chỉ IP gồm 4 nhóm số cách nhau bằng dấu chấm(IPv4) Khi mở một trình duyệt Web và nhập tên website, trình duyệt sẽ đến thẳng website mà không cần phải thông qua việc nhập địa chỉ IP của trang web Quá trình "dịch" tên miền thành địa chỉ IP để cho trìnhduyệt hiểu và truy cập được vào website là công việc của một DNS server Các DNS trợ giúp qua lại với nhau để dịch địa chỉ "IP" thành "tên" và ngượclại Người sử dụng chỉ cần nhớ "tên", không cần phải nhớ địa chỉ IP (địa chỉ
IP là những con số rất khó nhớ)
Hệ thống tên miền giúp cho nó có thể chỉ định tên miền cho các nhóm người sử dụng Internet trong một cách có ý nghĩa, độc lập với mỗi địa điểm của người sử dụng Do đó, World Wide Web siêu liên kết và trao đổi thông tin trên Internet có thể duy trì ổn định và cố định ngay cả khi định tuyến dòng Internet thay đổi hoặc những người tham gia sử dụng một thiết bị di động Tên miền internet dễ nhớ hơn các địa chỉ IP như là 208.77.188.166 (IPv4) hoặc 2001: db8: 1f70:: 999: de8: 7648:6 e8 (IPv6)
Mọi người tận dụng lợi thế này khi họ thuật lại có nghĩa các URL và địachỉ email mà không cần phải biết làm thế nào các máy sẽ thực sự tìm ra chúng Hệ thống tên miền phân phối trách nhiệm gán tên miền và lập bản đồ những tên tới địa chỉ IP bằng cách định rõ những máy chủ có thẩm quyền cho mỗi tên miền Những máy chủ có tên thẩm quyền được phân công chịu trách nhiệm đối với tên miền riêng của họ, và lần lượt có thể chỉ định tên máy chủ khác độc quyền của họ cho các tên miền phụ Kỹ thuật này đã thực hiện các cơ chế phân phối DNS, chịu đựng lỗi, và giúp tránh sự cần thiết chomột trung tâm đơn lẻ để đăng kí được tư vấn và liên tục cập nhật
3. Cơ chế phân giải
DNS service có 2 chức năng chính là phân giải tên > IP và IP > tên
3.1 Phân giải tên thành địa chỉ IP
Root Name Server là máy chủ quản lý các name server ở mức top-level domain Khi có query về 1 tên domain nào đó thì Root Name Server sẽ cung cấp tên và địa chỉ IP của name server quản lý top-level domain đó (thực tế thì hầu hết các root server cũng chính là máy chủ quản lý top-level domain)
và đến lược các name server của top-level domain cung cấp danh sách các name server có quyền trên các secon-level domain mà domain này thuộc vào Cứ như thế đến khi nào tìm được máy chủ quản lý tên domain cần truy vấn
Trang 8Qua quá trình trên cho thấy vai trò rất quan trọng của Root Name Server trong quá trình phân giải tên domain Nếu mọi Root Name Server trên mạng Internet không liên lạc được với nhau thì mọi yêu cầu phân giải tên đều sẽ không được thực hiện.
Ví dụ : client cần truy cập trang web www.yahoo.com thì client sẽ yêucầu phân giải địa chỉ IP của web server nào có chứa website
www.yahoo.com này Đầu tiên client sẽ tìm trong cache của nó, nếu cache của nó không có thì nó sẽ gửi request querry đến DNS local (nếu trong mạngnội bộ có DNS server) Sau đó DNS local cũng sẽ tìm trong cache của nó, nếu có nó sẽ gửi địa chỉ IP cần truy vấn đến cho client, nếu cache không có thì lúc này DNS local sẽ gửi request query này đến 1 Root Name Server nào
đó gần nó nhất mà nó biết được Sau đó Root Name Server này sẽ trã lời địa chỉ IP của Name Server quản lý miền com cho DNS local DNS local lại hỏitiếp name server quản lý domain com miền yahoo.com địa chỉ IP là bao nhiêu Cuối cùng DNS local truy vấn máy chủ quản lý domain
www.yahoo.com và nhận được câu trả lời
Có 2 dạng truy vấn (query) :
- Truy vấn đệ quy: khi Name Server nhận được truy vấn dạng này, nó bắt
buộc phải trả kết quả tìm được hoặc thông báo lỗi nếu như truy vấn này không phân giải được Name Server không thể tham chiếu đến 1 Name Server khác Name Server có thể gửi truy vấn dạng truy vấn đệ quy hoặc truy vấn lặp lại đến Name Server khác nhưng phải thực hiện cho đến khi nào
có kết quả mới thôi DNS server kiểm tra cache và forward lookup zone để gửi lại query
Trang 9Hình 2 Truy vấn đệ quy
- Truy vấn lặp lại: khi Name Server nhận được truy vấn dạng này, nó sẽ trả
lời cho thiết bị truy vấn với thông tin tốt nhất mà nó có được vào thời điểm lúc đó Bản thân Name Server không thực hiện bất cứ 1 truy vấn nào thêm Thông tin trả về lúc đó có thể lấy từ dữ liệu cục bộ (kể cả cache) Trong trường hợp Name Server không tìm thấy thông tin trong dữ liệu cục bộ nó sẽtrả về tên miền và địa chỉ IP của Name Server nào gần nhất mà nó biết
Hình 3 Truy vấn lặp lại
Trang 10Tóm lại việc truy vấn thường như sau:
- Truy vấn giữa Thiết bị truy vấn (host) -> DNS Server là Truy vấn đệ quy
- Truy vấn giữa DNS Server -> DNS Server là truy vấn lặp lại
3.2 Phân giải địa chỉ IP thành tên host
Để có thể phân giải tên máy tính của 1 địa chỉ IP, trong không gian tên miền người ta bổ sung thêm 1 nhánh tên miền mà được lập chỉ mục theo địa chỉ IP Phần không gian này có tên miền là in-addr.arpa
Mỗi node trong miền in-addr.arpa có 1 tên nhãn là chỉ số thập phân của địa chỉ IP Ví dụ miền in-addr.arpa có thể có 256 subdomain tương ứng với 256 giá trị từ 0 > 255 của byte đầu tiên trong địa chỉ IP Trong mỗi subdomain lại có 256 subdomain con nữa ứng với byte thứ 2 Cứ như thế và đến byte thứ 4 có các bản ghi cho biết tên miền đầy đủ của các máy tính hoặc các mạng có địa chỉ IP tương ứng
4. Cấu trúc của gói tin DNS
Hình 4 Cấu trúc gói tin DNS
Trong phần này, ta đề cập đến 2 thành phần của bản tin DNS: Truy vấn DNS và các bản tin phản hồi Cả truy vấn và phản hồi đều có dạng tương tự nhau, được chỉ
ra trong hình Ý nghĩa các trường của bản tin được chỉ ra như sau:
Phần mở đầu (The message header): 12 bytes, bao gồm các cờ và các giá
trị điều khiển quá trình trao đổi Gồm các thành phần chính:
Trang 110 1 2 3 4 5 6 7 8 9 10 1
1
12
13
1415
RD
RA
Res1
Res2
Res3
RCODE
QDCOUNT (số các items trong một truy vấn-Question)ANCOUNT (số các items trong 1 phản hồi- Answers)NSCOUNT (số các items trong Authority section)ARCOUNT (số items trong Additional section)
Hình 5 The message header
- ID (Identification): Là một trường 16 bits, chứa mã định danh, Định danhtruy vấn được sinh ra bởi client và được sao chép sang phản hồi của máy chủ ID được sử dụng để kết hợp truy vấn với trả lời Nó xác định duy nhất truy vấn nào đi kèm với phản hồi nào Chính vì vậy mà truy vấn và phản hồi có thể phù hợp với nhau ID cho phép client gửi nhiều query cùng lúc mà không cần phải chờ trả lời
- QDCOUNT: 16 bit, quy định số lượt truy cập vào trường Truy vấn
(Question)
- ANCOUNT: 16 bit, quy định số bản ghi trong trường Phản hồi (Answer)
Có thể là 0 trong trường hợp không có bản ghi phản hồi trong bản tin
- NSCOUNT: 16 bit, quy định số lượng của tên bản ghi nguồn trong
trường Authority section Có thể bằng 0 trong trường hợp không có bản ghi có thẩm quyền ở thời điểm hiện tại
- ARCOUNT: 16 bit, quy định số lượng các bản ghi nguồn trong trường Additional Có thể bằng 0 trong trường hợp không có bản ghi thêm vào nào được chỉ ra trong bản tin
Phần truy vấn (The DNS question)
Thông thường, chỉ có 1 truy vấn mỗi bản tin, tuy nhiên số lượng truy vấn được chophép 1 cách bất kỳ, xác định bởi QDCOUNT Cấu trúc chung được cho như sau:
- QNAME: tên trường, là tên được truy vấn Trong DNS, ký hiệu “.” không sử dụng với các tên miền Mỗi phần của tên miền (thường được thể hiện giữa các dấu chấm) được thể hiện bằng 1 byte chứa chiều dài
Trang 12chuỗi Tên miền được kết thúc bởi một đánh dấu zero (chuỗi cuối cùng
có độ dài 0)
- QTYPE: 16 bit, đặc tả kiểu truy vấn là kiểu RR được yêu cầu trong trả lời
- QCLASS: 16 bit, đặc tả lớp bản ghi nguồn được yêu cầu
Phần phản hồi (The DNS Answer)
Chứa 3 thành phần: thành phần trả lời, thành phần máy chủ xác thực và thông tin thêm
Bản thân phần trả lời đã chứa thành phần trả lời Thành phần máy chủ xác thực tên lưu trữ tên của các máy chủ trong các bộ NS.Thông tin thêm thường lưu địa chỉ IP của các máy chủ xác thực
Các bộ trong thành phần này là các bộ tài nguyên thông dụng như các bộ lưu giữ máy chủ tên và sử dụng các định dạng như sau:
- NAME: tên miền, cùng định dạng với trường QNAME trong truy vấn
- TYPE: 16 bit giá trị Kiểu bộ, cùng định dạng với QTYPE
- CLASS: 16 bit giá trị Lớp, cùng định dạng với QCLASS
- TTL: 32 bit giá trị Giới hạn kết thúc RR, thời gian mà trả lời có thể đượclưu trong máy chủ lưu trữ khi có giá trị
- RDLENGHT: 16 bit giá trị chiều dài RDATA
- RDATA: phần còn lại của RR (địa chỉ IP hay tên miền)
Phần quyền truy nhập (Authority section)
Authority record có cấu cấu trúc giống hệt với phần phản hồi (Answer) Ngoài ra chúng bao gồm bản ghi của các server bắt buộc khác
Phần bản ghi bổ sung (Additional Information)
Tương tự với phần trên, phần bản ghi bổ sung có cấu trúc giống với phần phản hồi.Ngoài ra nó chứa các bản ghi hữu ích khác
Ví dụ: phần Câu trả lời trong Phản hồi cho một truy vấn MX bao gồm bản ghi
nguồn cung cấp tên máy chủ theo quy tắc của một mail server Phần thêm vào ở đây bao gồm bản ghi Kiểu A cung cấp địa chỉ IP cho tên máy chủ theo quy tắc của mail server
Trang 13Chương II Vấn đề bảo mật trong DNS
1 Các điểm yếu của DNS
Do một client bình thường tin tưởng các thông tin phân giải do DNS Server cung cấp Do đó, nếu DNS Server bị tấn công vì mục đích nào đó nhằm thay đổi các thông tin phân giải trả về cho client Điền này thật nguy hiểm cho client khi nhận được những thông tin phân giải đã bị “nhiễm bẩn”
1.1. Tấn công đầu độc cache (cache poisoning attack)
Hình 6 DNS cache poisioning
Như đã đề cập trong phần lý thuyết bên trên, các DNS Server sau khi trả thông tin đã phân giải được vào cache (cache trên DNS Server), mục đích là để tối ưu cho việc phân giải lần sau Lợi dụng cơ chế này, các attacker tiến hành đầu độc cache của DNS Server Có vài cách để thực hiện việc này :
Trang 14- Cách thứ nhất : thiết lập một DNS Server giả mạo với các record độc hại.
Mục đích của kẻ tấn công là muốn dẫn các client khi phân giải một cái tên nào đó về địa chỉ IP giả mạo, ví dụ khi client cần phân giải địa chỉ www.cnn.com
thì được trả về địa chỉ IP giả là 66.66.66.66 Khi nào record giả còn tồn tại trong cache của DNS Server nạn nhân, các truy vấn của www.cnn.com sẽ được chuyển hướng đến 66.66.66.66, đây có thể là một máy tính được đặc dưới sự kiểm soát củaattacker, các thông tin đến www.cnn.com sẽ được attacker forward đến đối tượng thật sự www.cnn.com và ngược lại Do đó client cuối cùng không biết có sự tồn tạicủa máy “man in the middle”
- Cách thứ 2 : Gửi một spoofed reply đến client nạn nhân thông qua sự giúp
đỡ của 1 sniffer
Thay vì thiết lập một DNS Server giả mạo, nếu attacker có thể đặt mình vào vị trí giữa client và DNS Server, attacker có thể ngăn chặn các request của client gửi đến DNS Server và sau đó gửi gói tin reply với thông tin sai đến client
Xin nhắc lại là client chỉ chấp nhận các gói tin reply với cùng các thông số
đã gửi đi ban đầu như Transaction ID, địa chỉ IP và số port Để biết các thông số này, attacker có thể nghe lén để capture lại các gói tin trong mạng Sau khi đã có các thông số đầy đủ, attacker có thể tạo gói tin reply DNS giả để gửi đến cho client Nội dung gói tin chứa thông tin sai trái phục vụ cho mục đích đen tối của attacker
Tuy nhiên hạn chế của phương pháp này là gói tin reply phải của attacker phải đến trước gói tin hợp lệ của DNS Server Nếu gói tin hợp lệ của DNS Server đến trước thì cách tấn công này sẽ không thực hiện được Đó là do client chỉ chấp nhận gói tin reply nào hợp lệ đến trước, và sẽ làm ngơ (ignore) các gói tin đến sau
Có nhiều cách để thực hiện ý đồ này của attacker, và để tăng khả năng thành công của phương pháp này, attacker có thể tiến hành tấn công từ chối dịch vụ (DOS) để làm chậm hoạt động của DNS Server Do phải capture các gói tin để lấy các thông
số của gói tin request DNS, việc capture các gói tin này khó có thể thực hiện trong môi trường mạng switch (switched netword) Do đó, kỹ thuật tấn công ARP
snoofing phải được thực hiện trước
Trang 15- Cách thứ 3 : gửi một lượng lớn snoofing reply đến client nạn nhân.
Hình 7 DNS spoofing
Kỹ thuật tấn công dựa vào số ID DNS snoofing đòi hỏi kẻ tấn công phải biếtchính xác số ID giao dịch giữa client và server Điều này có thể được thực hiện bằng cách gửi một lượng rất lớn các gói tin reply chứa số Transaction ID khác nhau đến client, hy vọng một trong số các gói tin gửi đến client sẽ hợp lệ
Trên thực tế, số ID này chỉ chiếm 2 byte bộ nhớ, cho nên nó chỉ có tất cả
65525 trường hợp Vì vậy, bằng cách gửi 65525 gói tin reply (mỗi gói tin có số ID khác nhau), một trong số chúng chắc chắn sẽ phù hợp với số Transaction ID giao dịch giữa client và server, đồng thời có thể làm ngập lụt (fool) máy nạn nhân
Với cách tấn công này, attacker không cần phải nghe lén số Transaction ID giao dịch giữa client và server Nhưng vấn đề của nó là khi nào thì nên tiến hành thực hiện tấn công? Đó là, làm thế nào để biết khi nào client thực hiện truy vấn DNS? Đây là việc gây khó khăn cho phương thức tấn công này