1. Trang chủ
  2. » Công Nghệ Thông Tin

TÌM HIỂU, THỬ NGHIỆM TẤN CÔNG DNS REFLECTION

21 291 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

Định dạng
Số trang 21
Dung lượng 433,25 KB
File đính kèm công cụ tấn công dos.zip (7 KB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hiện 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 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 các công ty, doanh nghiệp đó. Hình thức tấn công của các hacker liên tục 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á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 tấn công DNS Reflection, triển khai mô phỏng tấn công đó”.

Trang 1

HỌC VIỆN KỸ THUẬT MẬT MÃ

KHOA AN TOÀN THÔNG TIN

*******************

BÁO CÁO BÀI TẬP LỚN

AN TOÀN INTERNET & THƯƠNG MẠI ĐIỆN TỬ

ĐỀ TÀI: TÌM HIỂU, THỬ NGHIỆM TẤN CÔNG

DNS REFLECTION

Giảng viên hướng dẫn : Nguyễn Thị Thu Thủy

Sinh viên thực hiện Giang Văn Thắng

Nguyễn Hoành Quang Trần Quang Huy

Hà Nội – Năm 2017

Trang 2

Mục Lục

Trang 3

Mục lục hình ảnh

Trang 4

LỜI NÓI ĐẦU

Hiện nay, vai trò của công nghệ thông tin và Internet vô cùng quan trọng Điềunà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 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ínhcũng như uy tín cho các công ty, doanh nghiệp đó Hình thức tấn công của cáchacker liên tục 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ác cuộc tấn công của hackernó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ìmhiểu tấn công DNS Reflection, triển khai mô phỏng tấn công đó”

Do kiến thức còn hạn chế nên trong báo cáo sẽ không tránh khỏi nhiều sai sót,

vì vậy nhóm mong thầy cô góp ý thêm để nhóm có thể hoàn thiện tốt hơn trong đồ

án tốt nghiệp về sau!

Trang 5

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG TÊN MIỀN DNS

1.1 Giới thiệu về 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ênmiề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ênmiền Hệ thống tên miền (DNS) là một hệ thống đặt tên theo thứ tự cho máy 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 đadạ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ếtvớ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

DNS dùng cổng 53 để truyền tải thông tin Tại lớp vận chuyển, DNS sử dụngUDP 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ảotí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ẽ không bị hạn chế

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 Bởi vì điều này, World-Wide Web (www) siêu liên kết và trao đổi thông tintrên Internet có thể duy trì ổn định và cố định ngay cả khi định tuyến dòng Internetthay đổi hoặc những người tham gia sử dụng một thiết bị di động Tên miềninternet 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) Hệ thống tên miền phân phối trách nhiệm gántê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 Trên thế giới có khoảng 13 DNS root Server.DNS root server quản lý tất cả các tên miền Top level Các tên miền này như là:.com, org, vn,.net, Khi có một yêu cầu phân giải một Domain Name thành mộtđịa chỉ IP, máy khách sẽ gửi yêu cầu tới DNS gần nhất(DNS ISP) DNS ISP sẽ kếtnối tới DNS root Server để hỏi địa chỉ của một Domain Name DNS root Server sẽcăn cứ vào những Top Level của một Domain Name mà từ đó có những hướng dẫnthích hợp nhằm chuyển hướng cho máy khách đến đúng địa chỉ nó cần truy vấ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

Trang 6

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 Nhìn chung, hệ thống tên miền cũng lưu trữ các loại thôngtin khác, chẳng hạn như danh sách các máy chủ email mà chấp nhận thư điện tửcho một tên miền Internet Bằng cách cung cấp cho một thế giới rộng lớn, phânphối từ khóa – cơ sở của dịch vụ đổi hướng , Hệ thống tên miền là một thành phầnthiết yếu cho các chức năng của Internet Các định dạng khác như các thẻ RFID,

mã số UPC, kí tự Quốc tế trong địa chỉ email và tên máy chủ, và một loạt các địnhdạng khác có thể có khả năng sử dụng DNS

1.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 ResourceLocator) và một địa chỉ IP Địa chỉ IP gồm 4 nhóm số cách nhau bằng dấuchấm(IPv4) Khi mở một trình duyệt Web và nhập tên website, trình duyệt sẽ đếnthẳ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 đượcvà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ốngtên miền giúp cho nó có thể chỉ định tên miền cho các nhóm người sử dụngInternet 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ể duytrì ổn định và cố định ngay cả khi định tuyến dòng Internet thay đổi hoặc nhữngngười tham gia sử dụng một thiết bị di động Tên miền internet dễ nhớ hơn các địachỉ 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 địachỉ 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ữngmá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ềnriê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ọ chocá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 đựnglỗ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

Trang 7

Mỗi Website có một hostname (là tên miền) và một địa chỉ IP Địa chỉ IP gồm 4nhóm số cách nhau bằng dấu chấm(IPv4) Khi người dùng 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 quaviệ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 DNSserver Các DNS trợ giúp qua lại với nhau để dịch địa chỉ "IP" thành "hostname" vàngược lại Vì vậy người sử dụng chỉ cần nhớ tên, không cần phải nhớ địa chỉ IP

1.3Các thành phần của DNS

Các thành phần của DNS:

- DNS Domain Name Space: mỗi DNS domain sẽ có một tên duy nhất Hệ

thống DNS là hệ thống có cấu trúc phân tầng có cấp bậc cụ thể Gốc củadomain (root domain) nằm trên cùng, sau và được ký hiệu là dấu "." bao gồm

13 máy chủ gốc của Internet thế giới, tiếp đến là Top-Layer, bao gồm các tênmiền com, vn, net tầng này mỗi tên miền bao gồm từ 2 đến 5 ký tự, riêngtên miền 2 ký tự dành riêng cho mỗi quốc gia Tiếp đến là tầng Second-Level,

có thể là tầng subdomains như .com.vn hay có thể là host name nhưmicrsosoft.com

- Zones: một vấn đề quan trọng khác của DNS đó là Zone Trong hệ thống DNS,

người ta chia nhỏ thành những phần để gán những quản lý riêng,vì vậy cầnphải chia ra các Zone để đảm bảo việc quản lý DNS một cách dễ dàng hơn -nói cách khác khi một hệ thống tên miền được chia ra các phần nhỏ hơn để dễquản lý đó là các Zone

Và trên thực tế dữ liệu DNS được chứa trên các máy chủ Zone, dữ liệu của DNS

là dữ liệu của các Zone Trong DNS khi tạo ra một Zone mới thì sẽ có 3 sự lựachọn là:

+ Primary Zone: máy chủ chứa dữ liệu Primary Zone là máy chủ có thể toàn

quyền trong việc update dữ liệu Zone

+ Secondary Zone: là 1 bản copy của Primary Zone, do nó chứa dữ liệu Zone

nên cung cấp khả năng phân giải cho các máy có yêu cầu Muốn cập nhật dữliệu Zone phải đồng bộ với máy chủ Primary

+ Stub Zone: dữ liệu của Stub Zone chỉ bao gồm dữ liệu NS Record trên máy

chủ Primary Zone mà thôi, với việc chứa dữ liệu NS máy chủ Stub Zone có vaitrò chuyển các yêu cầu dữ liệu của một Zone nào đó đến trực tiếp máy chủ cóthẩm quyền của Zone đó

Trang 8

Trong Forward Lookup có thể sử dụng để chuyển các yêu cầu đến một máy chủ cóthẩm quyền Một điều quan trọng của sự khác nhau đó là Stub Zone có khả năngchứa dữ liệu NS của Primary Zone nên có khả năng thông minh trong quá trình cậpnhật dữ liệu, địa chỉ của máy chủ NS của Zone đó nên việc chuyển yêu cầu sẽ dễdàng hơn

Forward Lookup là nhờ một máy chủ phân giải tên hộ, và không thể tự động cậpnhật dữ liệu, nhưng đó cũng là một lợi thế và có thể sử dụng trên Internet CònStub Zone chỉ sử dụng khi trong một domain có nhiều Zone con và chỉ dành chomột tổ chức khi truy cập vào các dữ liệu của tổ chức đó

- Name Servers: chính là máy chủ chứa dữ liệu Primary Zone

1.4 Cơ chế phân giải

DNS service có 2 chức năng chính là phân giải tên thành IP và IP thành tên

1.4.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-leveldomain Khi có query về 1 tên domain nào đó thì Root Name Server sẽ cung cấptên và địa chỉ IP của name server quản lý top-level domain đó (thực tế thì hầu hếtcác root server cũng chính là máy chủ quản lý top-level domain) và đến lượt cácname server của top-level domain cung cấp danh sách các name server có quyềntrê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

Qua quá trình trên cho thấy vai trò rất quan trọng của Root Name Server trongquá trình phân giải tên domain Nếu mọi Root Name Server trên mạng Internetkhô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ựchiện

Ví dụ : client cần truy cập trang web “www.howstuffwork.com” thì client sẽ

yêu cầu phân giải địa chỉ IP của web server nào có chứa mã nguồn của website

“www.howstuffwork.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àyDNS 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ỏi tiếp name server quản lý domain “.com” miền “howstuffwork.com” địa chỉ IP là bao nhiêu Cuối

Trang 9

cùng DNS local truy vấn máy chủ quản lý domain “www.howstuffwork.com” và

nhận được câu trả lời

Hình 1: Cơ chế hoạt động của DNS

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ộcphả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ângiải được Name Server không thể tham chiếu đến 1 Name Server khác NameServer có thể gửi truy vấn dạng truy vấn đệ quy hoặc truy vấn lặp lại đếnName 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 10

Hì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ờicho 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 tintrả về lúc đó có thể lấy từ dữ liệu cục bộ (kể cả cache) Trong trường hợpName Server không tìm thấy thông tin trong dữ liệu cục bộ nó sẽ trả về tênmiền và địa chỉ IP của Name Server nào gần nhất mà nó biết

Trang 11

Hình 3: Truy vấn lặp lại

1.4.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ềnngườ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ầnkhô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ínhhoặc các mạng có địa chỉ IP tương ứng

Trang 12

1.5 Cấu trúc của gói tin DNS

Hình 4: Cấu trúc gói tin DNS

- ID: Là một trường 16 bits, chứa mã nhận dạng, nó được tạo ra bởi mộtchương trình để thay cho truy vấn Gói tin hồi đáp sẽ dựa vào mã nhận dạngnày để hồi đáp lại Chính vì vậy mà truy vấn và hồi đáp có thể phù hợp vớinhau

- QR: Là một trường 1 bit Bít này sẽ được thiết lập là 0 nếu là gói tin truyvấn, được thiết lập là một nếu là gói tin hồi đáp

Trang 13

- Opcode: Là một trường 4 bits, được thiết lập là 0 cho cờ hiệu truy vấn,được thiết lập là 1 cho truy vấn ngược, và được thiết lập là 2 cho tình trạngtruy vấn.

- AA: Là trường 1 bit, nếu gói tin hồi đáp được thiết lập là 1, sau đó nó sẽ điđến một server có thẫm quyền giải quyết truy vấn

- TC: Là trường 1 bit, trường này sẽ cho biết là gói tin có bị cắt khúc ra dokích thước gói tin vượt quá băng thông cho phép hay không

- RD: Là trường 1 bit, trường này sẽ cho biết là truy vấn muốn server tiếp tụctruy vấn một cách đệ quy

- RA: Trường 1 bit này sẽ cho biết truy vấn đệ quy có được thực thi trênserver không

- Z: Là trường 1 bit Đây là một trường dự trữ, và được thiết lập là 0

- Rcode: Là trường 4 bits, gói tin hồi đáp sẽ có thể nhận các giá trị sau:

 0: Cho biết là không có lỗi trong quá trình truy vấn

 1: Cho biết định dạng gói tin bị lỗi, server không hiểu được truy vấn

 2: Server bị trục trặc, không thực hiện hồi đáp được

 3: Tên bị lỗi Chỉ có server có đủ thẩm quyền mới có thể thiết lập giátrị này

 4: Không thi hành Server không thể thực hiện chức năng này

 5: Server từ chối thực thi truy vấn

- QDcount: Số lần truy vấn của gói tin trong một vấn đề

- ANcount: Số lượng tài nguyên tham gia trong phần trả lời

- NScount: Chỉ ra số lượng tài nguyên được ghi lại trong các phần có thẩmquyền của gói tin

- ARcount: Chỉ ra số lượng tài nguyên ghi lại trong phần thêm vào của gói tin

Trang 14

CHƯƠNG 2: DNS REFLECTION ATTACK

Hệ thống DNS thực chất 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 các hệ thống phần cứng và các công cụ phần mềm chạy dưới dạng dịch

vụ thì cần có các giao thức DNS (Bao gồm đị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ì DNS hội tụ đầy đủ các yếu tố: Phần cứng, phần mềm và giao thứcnhư đã trình bày ở trên 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 ảnhhưởng tới người dùng

2.1 Một số kiểu tấn công DNS

Tấn công đầu độc cache (cache poisoning attack)

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ủaDNS 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ủa

attacker, 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ại của máy “man in the middle”

Ngày đăng: 20/04/2018, 23:04

TỪ KHÓA LIÊN QUAN

w