Bài giảng An ninh mạng - Bài 11: An toàn bảo mật các giao thức mạng - Bùi Trọng Tùng

BÀI 11.  
AN TOÀN BẢO MẬT  
CÁC GIAO THỨC MẠNG  
Bùi Trọng Tùng,  
Viện Công nghệ thông tin và Truyền thông,  
Đại học Bách khoa Hà Nội  
1
Nội dung  
• Tổng quan về mạng máy tính  
• An toàn bảo mật một số giao thức trong TCP/IP  
• An toàn bảo mật định tuyến, chuyển mạch  
2
1
1. Tổng quan về mạng máy tính  
• Mạng máy tính là gì?  
• Giao thức?  
• Hạ tầng mạng Internet  
Backbone  
ISP  
ISP  
3
Kiến trúc phân tầng  
Ứng dụng  
- Cung cấp dịch vụ cho người dùng  
- Gồm 2 tiến trình: client và server  
- Sử dụng dịch vụ của tầng giao  
tiến trình  
Giao vận  
Mạng  
Liên kết dữ liệu  
Vật lý  
- Giao thức tầng ứng dụng: DNS,  
DHCP, HTTP, SMTP, POP, IMAP...  
4
2
Kiến trúc phân tầng (tiếp)  
Ứng dụng  
- Điều khiển quá trình truyền dữ  
liệu giữa các tiến trình.  
- Dồn kênh/Phân kênh: số hiệu  
cổng dịch vụ  
Giao vận  
- TCP: hướng liên kết, tin cậy,  
truyền theo dòng byte  
- UDP: hướng không liên kết,  
truyền theo bức tin (datagram)  
Mạng  
Liên kết dữ liệu  
Vật lý  
5
Kiến trúc phân tầng (tiếp)  
Ứng dụng  
Kết nối liên mạng (Internetworking):  
- Đóng gói, phân mảnh dữ liệu  
Giao vận  
- Định tuyến  
- Chuyển tiếp gói tin  
- Đảm bảo chất lượng dịch vụ  
Mạng  
Liên kết dữ liệu  
Vật lý  
6
3
Kiến trúc phân tầng (tiếp)  
Ứng dụng  
- Điều khiển truyền dữ liệu trên  
từng liên kết vật lý: đóng gói,  
đồng bộ, phát hiện và sửa lỗi  
- Chuyển mạch dữ liệu giữa các  
liên kết vật lý  
- Điều khiển truy cập đường  
truyền  
Giao vận  
Mạng  
Liên kết dữ liệu  
Vật lý  
- Hỗ trợ truyền thông quảng bá  
- VLAN  
7
Kiến trúc phân tầng (tiếp)  
Ứng dụng  
Giao vận  
Mạng  
Liên kết dữ liệu  
- Mã hóa bit thành tín hiệu  
- Điều chế tín hiệu và truyền tín  
hiệu trên liên kết vật lý  
Vật lý  
8
4
Kiến trúc phân tầng (tiếp)  
Ứng dụng  
Chỉ triển khai  
trên các hệ  
thống đầu  
cuối  
Giao vận  
Mạng  
Triển khai trên  
Liên kết dữ liệu  
Vật lý  
tất cả các hệ  
thống con  
Khác nhau trên  
các đường truyền  
vật lý khác nhau  
9
Chồng giao thức (protocol stack)  
Giao thức ứng dụng  
Ứng dụng  
Giao vận  
Ứng dụng  
TCP/UDP  
Giao vận  
Giao thức  
liên kết dữ  
liệu  
Giao thức  
liên kết dữ  
liệu  
Liên kết  
dữ liệu  
Liên kết dữ liệu  
Vật lý  
Liên kết dữ liệu  
Vật lý  
Vật lý  
Tín hiệu  
Tín hiệu  
10  
5
Đóng gói dữ liệu (TCP)  
• Nút gửi: Thêm thông tin điều khiển (header)  
• Nút nhận: Loại bỏ thông tin điều khiển  
TCP Header  
Dữ liệu/thông điệp tầng ứng dụng  
message  
Ứng dụng  
Giao vận (TCP, UDP)  
Mạng (IP)  
segment  
packet  
TCP data  
TCP data  
TCP data  
IP TCP data  
frame  
Liên kết dữ liệu  
Vật lý  
ETH IP TCP data ETF  
IP Header  
Link (Ethernet)  
Header  
Link (Ethernet)  
Trailer  
11  
Những khó khăn với bài toánATBM mạng  
máy tính (nhắc lại)  
• Hệ thống mở  
• Tài nguyên phân tán  
• Người dùng ẩn danh  
• TCP/IP được không được thiết kế để đối mặt với các  
nguy cơ ATBM  
Không xác thực, giữ bí mật dữ liệu trong gói tin  
12  
6
2. TẤN CÔNG CÁC GIAO THỨC TẦNG ỨNG DỤNG  
Bùi Trọng Tùng,  
Viện Công nghệ thông tin và Truyền thông,  
Đại học Bách khoa Hà Nội  
13  
1.1. Tấn công dịch vụ DNS  
• Tên miền (domain name): định danh trên tầng ứng dụng  
cho nút mạng cung cấp dịch vụ  
• Domain Name System  
• Dịch vụ DNS: phân giải tên miền thành địa chỉ IP và  
ngược lại  
14  
7
Hệ thống tên miền  
Không gian tên miền  
Kiến trúc : hình cây  
Root  
Zone  
Mỗi nút là một tập hợp các  
bản ghi mô tả tên miền tương  
ứng với nút lá đó.  
SOA  
NS  
A
PTR  
CNAME  
15  
Hệ thống máy chủ DNS  
• Máy chủ tên miền gốc (Root server)  
Trả lời truy vấn cho các máy chủ cục bộ  
Quản lý các zone và phân quyền quản lý cho máy chủ cấp dưới  
Có 13 máy chủ gốc trên mạng Internet  
16  
8
Hệ thống máy chủ (tiếp)  
• Máy chủ tên miền cấp 1 (Top Level Domain)  
Quản lý tên miền cấp 1  
• Máy chủ của các tổ chức: của ISP  
• Máy chủ cục bộ: dành cho mạng cục bộ  
17  
Phân giải tên miền  
• Phân giải tương tác: Cơ chế mặc định trên các máy chủ DNS  
Tải đặt lên máy chủ tên miền  
root  
gốc rất lớn. Thực tế máy chủ  
server  
DNS cục bộ thường đã biết các  
máy chủ TLD (cơ chế cache).  
202.191.56.65  
TLD  
server  
Hỏi dns.hust.edu.vn  
dns.vn  
Local/ISP  
server  
Authoritative  
DNS server  
dns.hust.edu.vn  
18  
9
Phân giải tên miền  
• Phân giải đệ quy  
Root  
server  
soict.hust.edu.vn  
202.191.56.65  
202.191.56.65  
soict.hust.edu.vn  
TLD  
202.191.56.65  
Local/ISP  
server  
server  
dns.vn  
soict.hust.edu.vn  
Tải đặt lên các máy chủ cấp trên  
rất lớn. Thực tế máy chủ tên miền  
gốc và máy chủ cấp 1 không thực  
hiện phân giải đệ quy  
Authoritative  
DNS server  
dns.hust.edu.vn  
19  
Thông điệp DNS  
• DNS Query và DNS Reply  
SRC = 53  
checksum  
DST = 53  
length  
Chung khuôn dạng  
• QUESTION: tên miền cần  
truy vấn  
Identification  
#Question  
Flags  
#Answer RRs  
s  
Số lượng: #Question  
• ANSE: htt
Số lượng: #Answer RRs  
QUESTION  
• AUTHORITY: địa chỉ  
server trả lời truy vấn  
• ADDITIONAL: thông tin  
phân giải tên miền cho các  
địa chỉ khác  
ANSWER  
AUTHORITY  
ADDITIONAL  
20  
10  
dig linux.com  
; <> DiG 9.9.2-P1 <> linux.com  
;; global options: +cmd  
;; Got answer:  
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21655  
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2,  
ADDITIONAL: 3  
TTL: thời gian(s) lưu giữ  
;; QUESTION SECTION:  
;linux.com. IN A  
trả lời trong cache  
;; ANSWER SECTION:  
linux.com. 1786 IN A 140.211.167.51  
linux.com. 1786 IN A 140.211.167.50  
;; AUTHORITY SECTION:  
linux.com. 86386 IN NS ns1.linux-foundation.org.  
linux.com. 86386 IN NS ns2.linux-foundation.org.  
;; ADDITIONAL SECTION:  
ns1.linux-foundation.org. 261 IN A 140.211.169.10  
ns2.linux-foundation.org. 262 IN A 140.211.169.11  
21  
Một số dạng tấn công DNS  
• Tấn công vào máy chủ cung cấp dịch vụ:  
DoS/DDoS, tấn công khai thác các lỗi phần mềm  
• Tấn công vào giao thức DNS:  
DNS cache poisioning  
DNS rebinding  
DNS Amplification attack  
22  
11  
DNS cache poisoning  
(2a) a.bank.com  
QID=x1  
(1) Query:  
a.bank.com  
Local  
DNS  
Resolver  
User  
Browser  
ns.bank.com  
(3) Ipaddr  
(bị Resolver từ chối do  
đến sau)  
(2b) các thông điệp trả lời có  
QueryID ngẫu nhiên y1, y2, …  
NS bank.com=ns.bank.com  
A ns.bank.com=attackerIP  
Kẻ tấn công thành công nếu  
Attacker  
j: x = y  
1
j
Nội dung thông điệp trả lời  
được lưu trên bộ đệm của  
Local DNS Resolver  
23  
DNS cache poisioning (tiếp)  
• Nếu giá trị QueryID được sử dụng là ngẫu nhiên, xác suất  
thành công của kẻ tấn công không cao:  
P = k/216  
Thông điệp giả mạo có giá trị QueryID phù hợp phải đến trước  
thông điệp của DNS server tin cậy  
•
Tấn công DoS vào máy chủ NS  
Sử dụng kỹ thuật tấn công ngày sinh  
24  
12  
DNS cache poisioning (D.Kaminsky ‘08)  
• Kẻ tấn công gửi một loạt các yêu cầu truy vấn tên miền  
không tồn tại có cùng tên miền cấp trên với tên miền giả  
mạo  
Ví dụ: random1.google.com, random2.google.com,…  
• Gửi các thông điệp trả lời giả mạo với thông tin thêm vào  
phần Authority và Additional  
• Phòng chống: DNS server sử dụng số hiệu cổng ngẫu  
nhiên khi gửi thông điệp truy vấn  
25  
DNS cache poisioning (D.Kaminsky ‘08)  
;; QUESTION SECTION:  
;random6.google.com. IN A  
;; ANSWER SECTION:  
random6.google.com. 21600 IN A don’t matter  
;; A
goog
;; ADDITIONAL SECTION:  
mail.google.com. 86386 IN A 6.7.8.9  
26  
13  
DNS Rebinding  
<iframe src="http://www.evil.com">  
ns.evil.com  
(1b) 171.64.7.115 TTL = 0  
DNS server  
(3b) 192.168.0.100  
(2) HTTP Messages  
(4) attack  
web server  
corporate  
web server  
171.64.7.115  
192.168.0.100  
27  
Phòng chống tấn công DNS Rebinding  
• Trình duyệt: DNS Pinning  
Từ chối thay đổi ánh xạ tên miền sang địa chỉ IP khác trong một  
khoảng thời gian  
Hạn chế tương tác với proxy, VPN, Dynamic DNS  
• Máy trạm người dùng: sử dụng dịch vụ DNS tin cậy  
• Máy chủ:  
miền không nhận diện được  
Xác thực người dùng  
• Firewall: chặn các thông điệp DNS Reponse phân giải  
tên miền thành 1 địa chỉ cục bộ  
28  
14  
Làm thế nào để dịch vụ DNS an toàn hơn  
• Ý tưởng cơ bản: sử dụng mật mã học  
• Giải pháp 1: sử dụng kết nối SSL/TLS  
Phân tích?  
• Giải pháp 2: chứng thực bản ghi DNS  
DNSSEC  
Phân tích?  
29  
1.2. Tấn công dịch vụ DHCP  
• Dynamic Host Configuration Protocol  
• Cấp phát các cấu hình IP tự động cho máy trạm:  
Địa chỉ IP  
Địa chỉ gateway router  
Địa chỉ DNS server  
• Sử dụng UDP, cổng 67  
30  
15  
Hoạt động của DHCP  
DHCP  
server  
New  
client  
Thông điệp DHCP  
Offer có địa chỉ IP,  
ời  
gian sử dụng cấp  
phát cho client  
Kẻ tấn công  
bên trong có  
thể nghe thấy  
một máy trạm  
mới phát yêu  
Kẻ tấn công bên trong có  
thể phát thông điệp DHCP  
Offer trước server  
cầu DHCP  
31  
Các nguy cơ tấn công DHCP  
• Lỗ hổng: Bất kỳ máy trạm nào yêu cầu cũng được cấp  
phát địa chỉ IP  
Nguy cơ: Tấn công DoS làm cạn kho địa chỉ  
• Lỗ hổng: Không có xác thực cho các thông tin cấp phát từ  
DHCP server:  
Nguy cơ: Thay địa chỉ DNS server tin cậy bằng địa chỉ DNS của kẻ  
Nguy cơ: Thay địa chỉ default router, cho phép kẻ tấn công:  
Chặn bắt, do thám thông tin  
Tấn công phát lại  
Tấn công man-in-the-middle  
• Phòng chống: DHCP Snooping  
32  
16  
3. TẤN CÔNG GIAOTHỨC TCP  
Bùi Trọng Tùng,  
Viện Công nghệ thông tin và Truyền thông,  
Đại học Bách khoa Hà Nội  
33  
Nhắc lại về TCP  
• Transmission Control Protocol  
• Hướng liên kết (connection-oriented), tin cậy:  
Thiết lập liên kết: bắt tay 3 bước  
Truyền dữ liệu  
Kết thúc liên kết  
•
• Điều khiển luồng  
• Điều khiển tắc nghẽn  
34  
17  
Nguy cơATBM với TCP (Tính sẵn sàng)  
• Tấn công DoS – SYN Flooding  
Kẻ tấn công gửi hàng loạt gói tin SYN với địa chỉ nguồn là các địa  
chỉ IP giả  
Server gửi lại SYN/ACK, chuẩn bị tài nguyên để trao đổi dữ liệu,  
chờ ACK trong thời gian time-out  
tấn công thành công nếu trong thời gian time-out làm cạn kiệt tài  
nguyên của ứng dụng, máy chủ vật lý  
Server  
Client (initiator)  
Server chờ ACK  
từ client  
Kẻ tấn công  
không gửi lại  
ACK  
35  
Tấn công can thiệp vào kết nối TCP  
• Quá trình trao đổi dữ liệu kết thúc bình thường: giao thức  
TCP cho phép 2 bên đóng liên kết một cách độc lập (gửi  
gói tin FIN)  
Tin cậy: chờ nhận ACK  
Liên kết chỉ thực sự hủy khi 2 bên đã đóng  
• Ngược lại, nếu quá trình trao đổi dữ liệu không thể kết  
các gói tin lỗi), gói tin RST (reset) được gửi đi:  
Việc đóng liên kết xuất phát từ một bên  
Không cần chờ ACK  
Liên kết được hủy nếu Sequence Number là phù hợp  
kẻ tấn công có thể ngắt kết nối đột ngột của người dùng nếu biết  
được thông tin về số hiệu cổng, Sequence Number  
36  
18  
RST Injection  
Client (initiator)  
Server  
IP address 1.2.1.2, port 3344  
IP address 9.8.7.6, port 80  
...  
Attacker chèn gói tin RST  
IP address 6.6.6.6, port N/A  
SrcA=9.8.7.6, SrcP=80,  
DstA=1.2.1.2, DstP=3344,  
RST, Seq = y+1, Ack = x+16  
Client từ chối  
các dữ liệu  
được gửi từ  
server thực sự  
X
37  
Data Injection  
Client (initiator)  
Server  
IP address 1.2.1.2, port 3344  
IP address 9.8.7.6, port 80  
...  
Attacker chèn dữ liệu giả  
IP address 6.6.6.6, port N/A  
ACK, Seq = y+1, Ack = x+16  
Data=“200 OK … <poison> …”  
Client tiếp tục  
quá trình với dữ  
liệu giả  
Client từ chối  
gói tin vì Seq.  
Number không  
phù hợp  
38  
19  
Tấn công kết nối TCP trong trường hợp  
không biết thông tin về kết nối  
• Nhận xét: trong các kịch bản tấn công trên, kẻ tấn công  
cần phải theo dõi các thông số trên kết nối (cổng,  
Sequence Number...)  
• Trong trường hợp không có các thông tin này, kẻ tấn công  
vẫn có thể thực hiện bằng cách đoán nhận  
• Hoặc đơn giản hơn: giả mạo kết nối TCP  
• Phòng chống?  
39  
Tấn công giả mạo kết nối TCP  
Client  
Server  
IP address 1.2.1.2, port N/A  
IP address 9.8.7.6, port 80  
Giả mạo  
client  
SrcA=1.2.1.2, SrcP=5566,  
DstA=9.8.7.6, DstP=80, SYN, Seq = z  
Attacker  
không biết  
gó
Điều gì cản trở attacker  
thực hiện thành công?  
Attacker phải hoàn thành được  
giai đoạn bắt tay 3 bước  
SrcA=1.2.1.2, SrcP=5566, DstA=9.8.7.6,  
DstP=80, ACK, Seq = z+1, ACK = y+1  
40  
20  
Tải về để xem bản đầy đủ
pdf 37 trang baolam 22981 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng An ninh mạng - Bài 11: An toàn bảo mật các giao thức mạng - Bùi Trọng Tùng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_an_ninh_mang_bai_11_an_toan_bao_mat_cac_giao_thuc.pdf