Bảo mật mạng 5B n và k thù: Alice, Bob, Trudy ạ ẻ ❒ Bob, Alice bạn bè muốn truyền thông “an toàn” ❒ Trudy kẻ xâm nhập có thể ngăn chặn, xóa, thêm các thông điệp... Bảo mật mạng 37Ch ký s
Trang 1All material copyright 1996-2006
J.F Kurose and K.W Ross, All Rights Reserved
Slide này được biên dịch sang tiếng Việt theo
sự cho phép của các tác giả
Trang 37.1 B o m t m ng là gì? ả ậ ạ
B o m t m ng ả ậ ạ 3
Trang 4B o m t m ng là gì? ả ậ ạ
Sự bảo mật: chỉ có người gửi, người nhận mới
“hiểu” được nội dung thông điệp
❍ ng i g i mã hóa thông đi p ườ ử ệ
❍ ng i nh n gi i mã thông đi p ườ ậ ả ệ
Chứng thực: người gửi, người nhận xác định là
nhận ra nhau
Sự toàn vẹn thông điệp: người gửi, người nhận
muốn bảo đảm thông điệp không bị thay đổi
(trên đường truyền hoặc sau khi nhận) mà
không bị phát hiện
Truy cập & tính sẵn sàng: các dịch vụ phải có
Trang 5Bảo mật mạng 5
B n và k thù: Alice, Bob, Trudy ạ ẻ
❒ Bob, Alice (bạn bè) muốn truyền thông “an toàn”
❒ Trudy (kẻ xâm nhập) có thể ngăn chặn, xóa, thêm các thông điệp
Trang 6Bob, Alice có th là nh ng ai? ể ữ
❒ trình duyệt Web/server cho các giao dịch điện tử
❒ client/server ngân hàng trực tuyến
❒ DNS servers
❒ các router trao đổi thông tin cập nhật bảng routing
❒ v.v.
Trang 7Bảo mật mạng 7
B n và k thù ạ ẻ
Hỏi: Kẻ xấu có thể làm những việc gì?
Đáp: rất nhiều!
❍ nghe lén: ngăn ch n các thông đi p ặ ệ
❍ kích ho t ạ chèn các thông đi p vào trong k t n i ệ ế ố
❍ gi danh:ả có th gi m o đ a ch ngu n trong gói ể ả ạ ị ỉ ồ(ho c b t kỳ tr ng nào trong đó)ặ ấ ườ
❍ c p:ướ “ti p t c” k t n i hi n hành nh ng thay ế ụ ế ố ệ ư
ng i g i ho c ng i nh n b ng chính h ườ ử ặ ườ ậ ằ ọ
❍ t ch i d ch v :ừ ố ị ụ d ch v hi n t i b ng i khác ị ụ ệ ạ ị ườ
dùng (đ ng nghĩa quá t i)ồ ả
❍ v.v
Trang 87.2 Các nguyên lý mã hóa
Trang 9Bảo mật mạng 9
Ngôn ng mã hóa ữ
khóa đối xứng : khóa bên gửi và bên nhận giống nhau khóa công cộng : khóa mã chung, khóa giải mã bí mật (riêng)
văn b n g c ả ố văn b n đã mã hóa ả văn b n g c ả ố
Trang 10Mã hóa khóa đ i x ng ố ứ
mật mã thay thế: thay thứ này thành thứ khác
❍ mã hóa ký t đ n: thay th t ng ký t m tự ơ ế ừ ự ộ
văn bản gốc: abcdefghijklmnopqrstuvwxyz văn bản đã mã hóa: mnbvcxzasdfghjklpoiuytrewq
văn bản gốc: bob i love you alice
mã hóa thành: nkn s gktc wky mgsbc
ví d :ụ
H i:ỏ B khóa ki u mã hóa đ n gi n này d không?ẻ ể ơ ả ễ
Trang 11Bảo mật mạng 11
khóa đối xứng : Bob và Alice cùng biết (đối xứng) khóa: K
❒ vd: khóa được biết trong mẫu mã hóa ký tự đơn
❒ Hỏi: Làm thế nào Bob và Alice thỏa thuận giá trị khóa?
văn b n g c ả ố văn b n đã mã ả
KA-B
giải thuật
mã hóa
giải thuậtgiải mã
Trang 12Mã hóa khóa đ i x ng ố ứ : DES
DES: Data Encryption Standard
❒ chuẩn mã hóa của Hoa Kỳ [NIST 1993]
❒ khóa đối xứng 56-bit, văn bản gốc vào bit
64-❒ Bảo mật trong DES như thế nào?
❍ ch a có cách ti p c n “backdoor-c a sau” đ gi i ư ế ậ ử ể ảmã
❒ làm cho DES bảo mật hơn:
❍ dùng 3 khóa tu n t (3-DES) trong m i datumầ ự ỗ
❍ dùng c ch liên k t kh i mãơ ế ế ố
Trang 14AES: Advanced Encryption Standard
❒ chuẩn NIST khóa đối xứng mới (tháng 11-2001) thay thế cho
DES
❒ dữ liệu xử lý từng khối 128 bit
❒ các khóa 128, 192, hoặc 256 bit
❒ giải mã brute force (thử sai) tốn 1s với DES, tốn 149 tỷ tỷ năm với AES
Trang 15❒ ng i g i, ng i nh n ườ ử ườ ậkhông chia s khóa ẻcông c ngộ
❒ khóa công c ng cho ộ
m i ng i đ u bi tọ ườ ề ế
❒ khóa gi i mã riêng ch ả ỉ
có ng i nh n bi tườ ậ ế
Trang 16Mã hóa khóa công c ng ộ
văn b n g c ả ố
m văn b n đã mãả
encryption algorithm decryption algorithm
K B
-m = K B-(K (m)B+ )
Trang 20RSA ví d : ụ
Bob ch n ọ p=5, q=7 Thì n=35, z=24
e=5 (vì e, z nguyên t cùng nhau).ố
d=29 (vì ed-1 chia h t cho z)ế
Trang 21Bảo mật mạng 21
RSA: T i sao là ạ m = (m e mod n) d mod n
(m e mod n) dmod n = m edmod n
(p-1)(q-1) d 1 ) ư
Trang 22RSA: đ c tính quan tr ng khác ặ ọ
Đ c tính sau đây s r t h u ích: ặ ẽ ấ ữ
K B-( K (m)B+ ) = m = K +B( K (m)-B )
đ u tiên dùng ầ khóa công c ng, ộ sau đó dùng khóa riêng
đ u tiên dùng ầ khóa riêng, sau
đó dùng khóa công c ng ộ
Trang 237.3 S ch ng th c ự ứ ự
B o m t m ng ả ậ ạ 23
Trang 25là Alice
“Tôi là Alice”
Trang 28IP c a ủ Alice
Trang 29IP c a ủ Alice
“Tôi là Alice”
IP c a ủ Alice m t kh u c a Alice ủậ ẩ
Trang 30IP c a ủ Alice
Trang 31IP c a ủ Alice
“Tôi là Alice”
IP c a ủ Alice đã mã hóam t kh uậ ẩ
Trang 32S ch ng th c: th l i ự ứ ự ử ạ
M c tiêu:ụ tránh c ch t n công ki u phát l iơ ế ấ ể ạ
Ph ng pháp:ươ s (R) ch dùng 1 l n trong th i gian ho t đ ngố ỉ ầ ờ ạ ộ
ap4.0: đ ch ng th c Alice “s ng”, Bob g i Alice s R ể ứ ự ố ử ố
Trang 33Bảo mật mạng 33
S ch ng th c: ap5.0 ự ứ ự
ap4.0 yêu cầu chia sẻ khóa đối xứng
❒ chúng ta có thể chứng thực dùng các kỹ
thuật khóa công cộng?
ap5.0: dùng 1 lần, mã hóa khóa công cộng
Trang 34ap5.0: l h ng b o m t ỗ ổ ả ậ
Kẻ tấn công ẩn: Trudy giả làm Alice (đối
với Bob) và như Bob (đối với Alice)
Trang 35Bảo mật mạng 35
ap5.0: l h ng b o m t ỗ ổ ả ậ
Kẻ tấn công ẩn: Trudy giả làm Alice (đối
với Bob) và như Bob (đối với Alice)
Khó khăn đ phát hi n:ể ệ
Bob nh n m i th mà Alice g i và ng c l iậ ọ ứ ử ượ ạ
v n đ là Trudy cũng nh n t t c các thông đi p ấ ề ậ ấ ả ệ
nh th !ư ế
Trang 367.4 S toàn v n ự ẹ
Trang 37Bảo mật mạng 37
Ch ký s ữ ố
Kỹ thuật mã hóa tương tự như các
chữ ký bằng tay.
❒ người gửi (Bob) đánh dấu (số hóa) tài
liệu, thiết lập thuộc tính anh ấy là
người sở hữu/tạo lập tài liệu
❒ có thể kiểm tra, không thể làm giả:
người nhận (Alice) có thể chứng thực
với người khác là chỉ có Bob chứ ngoài
ra không có ai (kể cả Alice) đã ký trên tài liệu đó
Trang 38Ch ký s ữ ố
Chữ ký số đơn giản cho thông điệp m:
❒ Bob ký m bằng cách mã hóa với khóa riêng của anh ấy K B , tạo thông điệp “đã được
ký”, K B (m)
-
-Dear Alice
Oh, how I have
missed you I think of
you all the time! …
(blah blah blah)
khóa riêng c a ủ Bob
K B
-thông điệp của Bob, m, đã ký (mã hóa) với khóa riêng của
anh ấy
K B-(m)
Trang 39Bảo mật mạng 39
Ch ký s (tt) ữ ố
❒ Giả sử Alice nhận được m, với chữ ký số hóa là K B (m)
❒ Alice kiểm tra m đã được ký bởi Bob bằng cách áp dụng khóa công cộng của Bob K B cho K B (m) sau đó kiểm tra K B (K B (m) ) = m.
❒ Nếu K B (K B (m) ) = m, bất cứ ai đã ký m phải dùng
khóa riêng của Bob
+ +
-
Trang 40-Phân lo i thông đi p ạ ệ
H: hàm băm
H(m)
Trang 41Bảo mật mạng 41
Internet checksum: hàm băm
Internet checksum có một số đặc tính của hàm băm:
➼ sinh ra các phân loại độ dài cố định (tổng 16 bit) của thông điệp
Trang 42thông
đi p l n ệ ớ
m H: hàm băm H(m)
ch ký s ữ ố (đã mã hóa)
khóa riêng
c a Bob ủ K B
-+
Bob g i thông đi p đã ký s ử ệ ố
hóa:
Alice kiểm tra chữ ký và
sự toàn vẹn của thông điệp đã ký bằng số hóa:
K-(H(m))
phân lo i ạ thông đi p đã ệ
mã hóa
KB-(H(m))
phân lo i ạ thông đi p đã ệ
mã hóa
thông
đi p l n ệ ớ m
H: hàm băm H(m)
ch ký s ữ ố (đã gi i ả mã) H(m)
khóa công
c ng ộ
c a Bob ủ K B+
ch ký s = phân lo i thông đi p đã ký ữ ố ạ ệ
Trang 43❍ v i chu i x có 128 bit b t kỳ, khó khăn đ xây ớ ỗ ấ ể
d ng thông đi p m sao cho băm MD5 c a nó b ng ự ệ ủ ằ
v i xớ
❒ SHA-1 cũng được dùng
❍ chu n c a M [ẩ ủ ỹ NIST, FIPS PUB 180-1]
❍ phân lo i thông đi p 160-bitạ ệ
Trang 447.5 Khóa phân b và ch ng ch ố ứ ỉ
Trang 45center-KDC) được tin
cậy – hoạt động trung
gian giữa các thực thể
Vấn đề khóa công cộng:
❒ Khi Alice lấy được khóa công cộng của Bob (từ web site, email, đĩa), làm sao biết khóa công cộng của Bob chứ không phải của Trudy?
Giải pháp:
❒ nơi cấp chứng chỉ (certification
authority-CA) được tin cậy
Trang 46Key Distribution Center (KDC)
❒ Alice, Bob cần khóa đối xứng được chia sẻ
❒ KDC: chia sẻ khóa bí mật khác nhau với mỗi người dùng đã đăng ký
❒ Alice, Bob biết các khóa đối xứng của họ,
KA-KDC KB-KDC , để truyền thông với KDC
KX-KDC
KY-KDCK
Trang 47v i Alice ớ
Alice và Bob truy n thông: dùng R1 nhề ư
khóa phiên làm vi c ệ đ chia s mã hóa ể ẻ đ i x ngố ứ
H i:ỏ Làm sao KDC cho phép Bob, Alice xác đ nh khóa bí ị
m t ậ đ i x ngố ứ đ truy n thông v i nhau?ể ề ớ
Trang 48C p ch ng ch ấ ứ ỉ
❒ Certification authority (CA): gắn kết
khóa công cộng với thực thể E nào đó
❒ E (người, router) đăng ký khóa công cộng của họ với CA
❍ E cung c p “b ng ch ng đ nh n d ng” cho CA ấ ằ ứ ể ậ ạ
❍ CA t o ra ch ng ch ràng bu c E v i khóa công c ng c a ạ ứ ỉ ộ ớ ộ ủ
nó
❍ ch ng ch ch a khóa công c ng c a E đ c ký s b i CA – ứ ỉ ứ ộ ủ ượ ố ở
CA nói “đây là khóa công c ng c a E” ộ ủ
K B+
ch ng ch cho khóa
Trang 49Bảo mật mạng 49
C p ch ng ch ấ ứ ỉ
❒ Khi Alice muốn lấy được khóa công cộng
của Bob:
❍ l y ch ng ch c a Bob ( Bob ho c n i nào đó)ấ ứ ỉ ủ ở ặ ơ
❍ áp d ng khóa công c ng c a CA cho ch ng ch ụ ộ ủ ứ ỉ
c a Bob, l y đ c khóa công c ng c a Bobủ ấ ượ ộ ủ
khóa công
c ng c a Bob ộ ủ
K B+
ch ký s ữ ố (đã
gi i mã) ả
khóa công c ng ộ
c a CA ủ K CA+
K B+
Trang 50M i ch ng ch ch a: ỗ ứ ỉ ứ
❒ Số thứ tự (duy nhất)
❒ thông tin về người sở hữu chứng chỉ, bao gồm giải
thuật và chính giá trị khóa (không hiển thị ra)
❒ thông tin v ề
ng i ườ phát hành ch ng ứchỉ
❒ ngày ki m tra ểtính h p lợ ệ
❒ ch ký s b iữ ố ở
ng i ườ phát
Trang 517.6 Đi u khi n truy c p: các ề ể ậ
firewall
B o m t m ng ả ậ ạ 51
Trang 53Bảo mật mạng 53
Firewall: T i sao ph i dùng? ạ ả
ngăn ch n các cu c t n công t ch i d ch v denial of ặ ộ ấ ừ ố ị ụservice (DoS):
❍ SYN flooding: k t n công thi t l p nhi u k t n i TCP ẻ ấ ế ậ ề ế ố
“ o”, không còn tài nguyên cho các k t n i “th t” ả ế ố ậ
Trang 54L c gói tin ọ
❒ mạng nội bộ kết nối với Internet thông
qua router firewall
❒ router lọc từng gói một, xác định
chuyển tiếp hoặc bỏ các gói dựa trên:
❍ đ a ch IP ngu n, đ a ch IP đích ị ỉ ồ ị ỉ
Các gói đ n s đ c ế ẽ ượ phép vào? Các gói chu n b ra có đ c ẩ ị ượ
phép không?
Trang 55❍ Ngăn ch n các client bên ngoài t o các k t n i ặ ạ ế ố
TCP v i các client bên trong, nh ng cho phép ớ ưcác client bên trong k t n i ra ngoài.ế ố
Trang 56các user bên trong
được telnet ra ngoài.
phiên telnet t ừ host đ n gateway ế
phiên telnet t ừ gateway đ n host ế
application gateway router và l cọ
1 yêu c u t t c các user ph i telnet thông qua gateway ầ ấ ả ả
2 v i các user đã đ c c p phép, gateway thi t l p k t n i ớ ượ ấ ế ậ ế ố
v i host đích gateway ti p v n d li u gi a 2 k t n i ớ ế ậ ữ ệ ữ ế ố
3 Router l c và ch n t t c các k t n i telnet không xu t ọ ặ ấ ả ế ố ấ
Trang 57có chính sách nào dành cho UDP
❒ sự cân bằng: mức
độ truyền thông với bên ngoài và sự an toàn
❒ nhiều site bảo vệ mức cao vẫn phải chịu đựng sự tấn công
Trang 587.7 Các lo i t n công và cách ạ ấ
phòng ch ng ố
Trang 59❍ Quét port: liên t c th thi t l p các k t n i ụ ử ế ậ ế ố
TCP v i m i port (xem th chuy n gì x y ra)ớ ỗ ử ệ ả
Biện pháp đối phó?
Trang 60Các m i đe d a b o m t Internet ố ọ ả ậ
Biện pháp đối phó
❍ ghi nh n l u thông vào m ngậ ư ạ
❍ quan tâm hành vi nghi ng (các đ a ch IP, port ờ ị ỉ
b quét liên t c)ị ụ
Trang 61Bảo mật mạng 61
Các m i đe d a b o m t Internet ố ọ ả ậ
nghe ngóng gói:
❍ ph ng ti n truy n thông ph bi n ươ ệ ề ổ ế
❍ NIC promiscuous (h n t p) đ c t t c các gói chuy n ỗ ạ ọ ấ ả ể qua nó
Trang 62Các m i đe d a b o m t Internet ố ọ ả ậ
Packet sniffing: Biện pháp đối phó
❍ t t c các host trong t ch c ch y ph n m m ki m ấ ả ổ ứ ạ ầ ề ể tra đ nh kỳ th host có ch đ promiscuous ị ử ở ế ộ
❍ 1 host m i đo n c a ph ng ti n truy n thông ỗ ạ ủ ươ ệ ề
src:B dest:A payload
Trang 63Bảo mật mạng 63
Các m i đe d a b o m t Internet ố ọ ả ậ
IP Spoofing (giả mạo IP):
❍ có th sinh ra các gói IP “thô” tr c ti p t ng ể ự ế ừ ứ
d ng, gán giá tr b t kỳ vào tr ng đ a ch IP ụ ị ấ ườ ị ỉngu nồ
❍ bên nh n không th xác đ nh ngu n b gi m oậ ể ị ồ ị ả ạ
❍ ví d : C gi m o là Bụ ả ạ
A
B
Csrc:B dest:A payload
Bi n pháp đ i phóệ ố ?
Trang 64Các m i đe d a b o m t Internet ố ọ ả ậ
IP Spoofing: lọc quyền vào
❍ router s không chuy n ti p các gói đi v i ẽ ể ế ớ
tr ng h p các đ a ch ngu n không h p lườ ợ ị ỉ ồ ợ ệ
❍ tuy t v i, nh ng l c nh th không th áp d ng ệ ờ ư ọ ư ế ể ụcho t t c các m ngấ ả ạ
src:B dest:A payload
Trang 65Bảo mật mạng 65
Các m i đe d a b o m t Internet ố ọ ả ậ
Denial of service (DOS):
❍ gây ra “ng p l t” b ng các gói sinh ra b i ý đ ậ ụ ằ ở ồ
SYN
SYN SYN SYN
Bi n pháp đ i phóệ ố ?
Trang 66SYN SYN
Trang 68B o m t e-mail ả ậ
Alice:
sinh ra khóa riêng đ i x ng ố ứ ng u nhiên, K ẫ
Alice mu n g i 1 e-mail bí m t, m, đ n Bob.ố ử ậ ế
Trang 70-Internet m
Trang 72Pretty good privacy (PGP)
❒ người phát minh: Phil
-BEGIN PGP SIGNED Hash: SHA1
MESSAGE -Bob:My husband is out of town tonight.Passionately yours, Alice
-BEGIN PGP Version: PGP 5.0
SIGNATURE -Charset: noconv yhHJRHhGJGhgg/12EpJ+lo8gE4vB3mqJ hFEvZP9t6n7G6m5Gw2
-END PGP
SIGNATURE -A PGP signed message:
Trang 73❍ trình duy t yêu c u ệ ầ
ch ng ch server, phát ra ứ ỉ
b i CA đ c tin c y ở ượ ậ
❍ trình duy t dùng khóa ệ công c ng c a CA đ ộ ủ ể trích ra khóa công c ng ộ
c a server t ch ng ch ủ ừ ứ ỉ
❒ kiểm tra trong trình duyệt của bạn để thấy các CA được tin cậy
Trang 74SSL (tt)
Mã hóa phiên làm việc SSL
:
❒ trình duyệt sinh ra
khóa phiên đối xứng, mã
hóa nó với khóa công
cộng của server, gửi
khóa (đã mã hóa) cho
server.
❒ dùng khóa riêng, server
giải mã khóa phiên
❒ trình duyệt, server
biết khóa phiên
❍ t t c d li u g i vào trong TCP ấ ả ữ ệ ử
❒ SSL: cơ sở của IETF Transport Layer Security (TLS)
❒ SSL có thể dùng cho các ứng dụng không Web, như IMAP
❒ chứng thực client
có thể hoàn thành với các chứng chỉ
Trang 75❍ các đo n TCP & UDP; các ạ
thông đi p ICMP & SNMP ệ
❍ t o kênh logic l p network ạ ớ
g i là m t security ọ ộ association (SA)
❒ mỗi SA theo 1 chiều duy nhất
Trang 76❒ trường header kế tiếp: xác định kiểu của dữ liệu (vd: TCP, UDP, ICMP)
Trang 77❒ trường header kế tiếp
nằm trong ESP trailer.
❒ trường chứng thực ESP tương tự như của AH
❒ Protocol = 50
IP header ESP TCP/UDP segment
header trailerESP authent.ESP
đã mã hóa
đã ch ng th c ứ ự
Trang 78B o m t IEEE 802.11 ả ậ
❍ 85% vi c s d ng mà không có mã hóa/ch ng th cệ ử ụ ứ ự
❍ d dàng b phát hi n/nghe ngóng và nhi u lo i t n ễ ị ệ ề ạ ấcông khác!
❒ Bảo mật 802.11
❍ mã hóa, ch ng th c ứ ự
❍ th nghi m b o m t 802.11 đ u tiên: Wired ử ệ ả ậ ầ
Equivalent Privacy (WEP): có thi u sótế
❍ th nghi m hi n t i: 802.11iử ệ ệ ạ
Trang 79Bảo mật mạng 79
Wired Equivalent Privacy (WEP):
❒ chứng thực như trong giao thức ap4.0
❍ host yêu c u ch ng th c t access pointầ ứ ự ừ
❍ access point g i 128 bit ử
❍ host mã hóa dùng khóa đ i x ng chia số ứ ẻ
❍ access point gi i mã, ch ng th c hostả ứ ự
❒ không có cơ chế phân bố khóa
❒ chứng thực: chỉ cần biết khóa chia sẻ
Trang 81WEP-encrypted data plus CRC
Figure 7.8-new1: 802.11 WEP protocol mã hóa WEP phía g iử
Trang 84AP: access point AS:
Authentication server
wired network
STA:
client station
1 Discovery of security capabilities
AS derives same PMK, sends to AP
802.11i: 4 giai đo n ho t đ ng ạ ạ ộ
Trang 85Bảo mật mạng 85
wired network
EAP TLS EAP EAP over LAN (EAPoL)
IEEE 802.11
RADIUS UDP/IP
EAP: extensible authentication protocol
❒ EAP được gửi trên các “link” riêng biệt
❍ mobile-đ n-AP (EAP trên LAN)ế
❍ AP đ n server ch ng th c (RADIUS trên UDP)ế ứ ự