bài giảng - mã hóa và an toàn mạng - Pdf 18

TRƯỜNG ĐẠI HỌC DUY TÂN
KHOA CÔNG NGHỆ THÔNG TIN
BÀI GIẢNG
MÃ HÓA VÀ AN TOÀN MẠNG
Biên Soạn NGUYỄN MINH NHẬT
ĐÀ NẴNG, 6/2006
1
Chương 1 TỔNG QUAN VỀ AN TÒAN MẠNG
1.1 Mở đầu
• Nhu cầu bảo mật thông tin có những thay đổi lớn trong thời gian gần đây
“We use computers for everything from banking and investing to shopping and
communicating with others through email or chat programs. Although you may not
consider your communications "top secret," you probably do not want strangers
reading your email, using your computer to attack other systems, sending forged
email from your computer, or examining personal information stored on your
computer (such as financial statements).” - by CERT
• Biện pháp truyền thống là sử dụng các máy móc quản lý và các trang thiết
bị hỗ trợ
• Máy tính được sử dụng như một công cụ tự động hoá để bảo vệ dữ liệu và
những những thông tin lưu trữ khác.
• Việc sử dụng mạng và các kết nối giao tiếp đòi hỏi giải pháp để bảo vệ dữ
liệu trong suốt quá trình truyền
Có một số các định nghĩa cần nắm rõ:
• An toàn máy tính (Computer Security) – Là một tiến trình ngăn chặn và
phát hiện sử dụng không hợp pháp vào máy tính của bạn bằng cách lựa
chọn các công cụ thiết kế để bảo vệ dữ liệu và tấn công của hackers ( hầu
hết là các
• An toàn mạng (Network Security) – Là các phương pháp để bảo vệ dữ
liệu trong suốt quá trình chuyển động của chúng.
• An toàn Internet (Internet Security) – Là các phương pháp để bảo vệ dữ
liệu trong suốt quá trình vận chuyển của chúng ra ngoài đến kết nối internet

sinh ra trên mạng do các lỗ hổng này mang lại thường là : sự ngưng trệ của dịch
vụ, cấp thêm quyền đối với các user hoặc cho phép truy nhập không hợp pháp vào
hệ thống.
Hiện nay trên thế giới có nhiều cách phân lọai khác nhau về lỗ hổng của hệ
thống mạng. Dưới đây là cách phân loại sau đây được sử dụng phổ biến theo mức
độ tác hại hệ thống, do Bộ quốc phòng Mỹ công bố năm 1994.
a. Các lỗ hổng loại C
Các lỗ hổng loại này cho phép thực hiện các phương thức tấn công theo DoS
(Denial of Services - Từ chối dịch vụ). Mức độ nguy hiểm thấp, chỉ ảnh hưởng tới
chất lượng dịch vụ, có thể làm ngưng trệ, gián đoạn hệ thống; không làm phá hỏng
dữ liệu hoặc đạt được quyền truy nhập bất hợp pháp
DoS là hình thức tấn công sử dụng các giao thức ở tầng Internet trong bộ giao
thức TCP/IP để làm hệ thống ngưng trệ dẫn đến tình trạng từ chối người sử dụng
hợp pháp truy nhập hay sử dụng hệ thống. Một số lượng lớn các gói tin được gửi
tới server trong khoảng thời gian liên tục làm cho hệ thống trở nên quá tải, kết quả
là server đáp ứng chậm hoặc không thể đáp ứng các yêu cầu từ client gửi tới.Một
ví dụ điển hình của phương thức tấn công DoS là vào một số Web Site lớn làm
ngưng trệ hoạt động của web site này: như www.google.com, www.ebay.com,
www.yahoo.com v.v…
3
Tuy nhiên, mức độ nguy hiểm của các lỗ hổng loại này được xếp loại C; ít
nguy hiểm vì chúng chỉ làm gián đoạn cung cấp dịch vụ của hệ thống trong một
thời gian mà không làm nguy hại đến dữ liệu và những kẻ tấn công cũng không
đạt được quyền truy nhập bất hợp pháp vào hệ thống.
b. Các lỗ hổng loại B
Các lỗ hổng cho phép người sử dụng có thêm các quyền trên hệ thống mà
không cần thực hiện kiểm tra tính hợp lệ. Đối với dạng lỗ hổng này, mức độ nguy
hiểm ở mức độ trung bình. Những lỗ hổng này thường có trong các ứng dụng trên
hệ thống; có thể dẫn đến mất hoặc lộ thông tin yêu cầu bảo mật.
Các lỗ hổng loại B có mức độ nguy hiểm hơn lỗ hổng loại C, cho phép người

mềm sử dụng; người quản trị nếu không hiểu sâu về dịch vụ và phần mềm sử dụng
sẽ có thể bỏ qua những điểm yếu này.
Đối với những hệ thống cũ, thường xuyên phải kiểm tra các thông báo của các
nhóm tin về bảo mật trên mạng để phát hiện những lỗ hổng loại này. Một loạt các
chương trình phiên bản cũ thường sử dụng có những lỗ hổng loại A như: FTP,
Gopher, Telnet, Sendmail, ARP, finger
Ảnh hưởng của các lỗ hổng bảo mật trên mạng Internet
Phần trên chúng ta đã phân tích một số trường hợp có những lỗ hổng bảo mật,
những kẻ tấn công có thể lợi dụng những lỗ hổng này để tạo ra những lỗ hổng
khác tạo thành một chuỗi mắt xích những lỗ hổng. Ví dụ, một kẻ phá hoại muốn
xâm nhập vào hệ thống mà anh ta không có tài khoản truy nhập hợp lệ trên hệ
thống đó. Trong trường hợp này, trước tiên kẻ phá hoại sẽ tìm ra các điểm yếu trên
hệ thống, hoặc từ các chính sách bảo mật, hoặc sử dụng các công cụ dò xét thông
tin (như SATAN, ISS) trên hệ thống đó để đạt được quyền truy nhập vào hệ thống.
Sau khi mục tiêu thứ nhất đã đạt được; kẻ phá hoại có thể tiếp tục tìm hiểu các
dịch vụ trên hệ thống, nắm bắt được các điểm yếu và thực hiện các hành động phá
hoại tinh vi hơn.
Tuy nhiên, không phải bất kỳ lỗ hổng bảo mật nào cùng nguy hiểm đến hệ
thống. Có rất nhiều thông báo liên quan đến lỗ hổng bảo mật trên mạng Internet,
hầu hết trong số đó là các lỗ hổng loại C, và không đặc biệt nguy hiểm đối với hệ
thống. Ví dụ, khi những lỗ hổng về sendmail được thông báo trên mạng, không
phải ngay lập tức ảnh hưởng trên toàn bộ hệ thống. Khi những thông báo về lỗ
hổng được khẳng định chắc chắn, các nhóm tin sẽ đưa ra một số phương pháp để
khắc phục hệ thống.
Dựa vào kẻ hở của các lỗ hỗng này, kẻ xấu sẽ xây dựng các hình thức tấn công
khác nhau nhằm không chế và nắm quyền kiểm soát trên mạng. Cho đến nay, các
hacker đã nghĩ ra không biết bao nhiêu kiểu tấn công từ xa qua mạng khác nhau.
Mỗi cuộc tấn công thường mở đầu bằng việc trực tiếp hoặc gián tiếp chui vào một
hoặc nhiều máy tính đang nối mạng của người khác. Sau khi đã vào được hệ thống
mạng, hacker có thể đi đến các bước khác như xem trộm, lấy cắp, thay đổi và thậm

(SYN Defender) có thể được mô tả như sau. Hai máy tính nối mạng IP muốn làm
việc với nhau theo giao thức TCP thì thủ tục đầu tiên là phải "bắt tay"
(handshaking). Giả sử A là máy nói trước, nó sẽ đưa ra yêu cầu đồng bộ tới B
(SYN). B nhận được yêu cầu thì sẽ đáp ứng lại bằng câu trả lời "SYN/ACK" và
cấp phát tài nguyên để đối thoại với A. Đến lượt A khi thấy B đáp lại thì phải
khẳng định một lần nữa là thực sự muốn làm việc (trả lời đồng ý bằng "ACK").
Chỉ sau khi A đồng ý như vậy thì phiên làm việc mới bắt đầu.
Các Hacker đã tìm ra kẻ hở bên trong thủ tục "bắt tay" trên và lợi dụng để tấn
công "ngập lụt". Một cuộc tấn công "ngập lụt" được tiến hành như sau:
- Máy tính của tin tặc sẽ đóng vai trò của A, còn máy tính bị tấn công là B. A
sẽ gửi yêu cầu "SYN" muốn đối thoại với B, nhưng nó sẽ tự xưng là A' chứ không
phải là A, trong đó, A' là một địa chỉ giả không tồn tại trong thực tế.
- B nhận được yêu cầu thì đáp lại bằng câu trả lời "SYN/ACK". Tuy nhiên, câu
trả lời này sẽ dẫn đến địa chỉ A' chứ không phải A ( do B hoàn toàn không biết địa
chỉ A đã bị tin tặc mạo danh là A' ở trên". Vì A' lại là một địa chỉ không tồn tại
trong thực tế nên sẽ không có thể có "ACK" như lẽ ra phải trả lời theo qui định từ
A' đến B.
- Không có trả lời, nhưng theo thủ tục thì máy B vẫn phải chờ đợi, đó chính là
một kẻ hở của hệ thống. Nếu A cứ gửi liên tiếp những yêu cầu giả mạo như vậy thì
B sẽ phải dành hết tài nguyên này đến tài nguyên khác của mình ra để đối thoại,
cuối cùng, B sẽ hết sạch tài nguyên và không thể đáp ứng được các yêu cầu khác
6
nữa, nghĩa là B bị "ngập lụt" bởi các yêu cầu đồng bộ và phải "từ chối phục vụ"
chỉ vì bận "bắt tay".
c. Từ chối phục vụ (Denial of Service-DoS)
Kỹ thuật "từ chối phục vụ" làm cho hệ thống máy chủ bị nhận quá nhiều yêu
cầu giả và không thể đáp ứng được nữa. Kỹ thuật này còn được cải tiến thành "từ
chối phục vụ phân tán" ( Distributed DoS- DDoS) khi các cuộc tấn công đồng loạt
xuất phát từ nhiều nơi trên mạng và được hứa hẹn trước vào cùng một thời điểm
nên rất khó chống đỡ.

trình tự đã được thiết kế, dẫn đến sự sụp đổ cho chính hệ thống đó. Phần lớn
những kẻ hở này xuất phát từ các sai sót của phần mềm, nhà sản xuất phần mềm
7
đã không thể lường trước được hết các tình huống sẽ xảy ra. Do đó, khi tin tặc gửi
những thứ nằm ngoài các trường hợp đã dự tính, phần mềm dễ bị lúng túng và gây
tắc. Ngoài ra, còn có các kẻ hở trong các giao thức hoạt động của hệ thống, đặc
biệt là giao thức TCP/IP. Điển hình của kiểu lợi dụng này là tấn công "gây lụt".
c thêm :Đọ ở

/>d. Lợi dụng chương trình
Kỹ thuật "lợi dụng" (exploit) khai thác các điểm yếu hoặc các lỗi có sẵn trong
trong một số phần mềm quen biết trên máy của nạn nhân hoặc máy chủ. Phần lớn
các phiên bản hệ điều hành đều có nhiều kẻ hở và thường bị lợi dụng.
e. Giả mạo IP
Kỹ thuật "giả dạng" ( masquerade) hay còn gọi là "giả mạo IP" (IP spoofing)
cho phép hacker gửi vào một máy tính những gói dữ liệu có vẻ đi đến từ một địa
chỉ IP khác với địa chỉ của hacker nhằm che đậy dấu vết. Kỹ thuật này kết hợp với
các kiểu tấn công chủ động khác như lặp lại hoặc thay đổi các thông điệp.
f. Bẫy cửa sập (trapdoor)
Kỹ thuật " bẫy cửa sập" là gài mới một cửa hậu (backdoor) hoặc lợi dụng kẽ hở
có sẵn trong hệ thống của nạn nhân mà chui vào, đợi thời cơ để khai
thác.Backdoor trong một phần mềm là "cổng hậu" để đi tắt không qua cổng chính,
nơi có thể kiểm tra hay xác thực nhân thân của người muốn truy cập vào hệ thống.
Trong thực tiễn, nó có thể là một chương trình máy tính được gài lén lút vào hệ
thống hoặc là một chương trình hợp lệ nhưng bị sửa đổi lại. Thậm chí tin tặc có
thể thay đổi một chương trình biên dịch (compiler) để gài backdoor khi người lập
trình trót sử dụng phải compiler này.
g. Lặp lại thông điệp (message replay)
Kỹ thuật "lặp lại thông điệp" sử dụng việc tái lập một phần hoặc toàn bộ một
thông điệp nhằm gây ra hiệu ứng khác với ý định của chính chủ nhân.

với người quản trị mạng những thông tin này là hết sức hữu ích và cần thiết; đối
với những kẻ phá hoại những thông tin này sẽ hết sức nguy hiểm.
k. Password Cracker
Một chương trinh bẻ khoá password là chương trình có khả năng giải mã một
mật khẩu đã được mã hoá hoặc có thể vô hiệu hoá chức năng bảo vệ mật khẩu của
một hệ thống.
Hầu hết việc mã hoá các mật khẩu được tạo ra từ một phương thức mã hoá.
Các chương trình mã hoá sử dụng các thuật toán mã hoá để mã hoá mật khẩu.
l. Đánh hơi gói tin (Packet Sniffer)
Sniffer theo nghĩa đen là đánh hơi, ngửi. Đối với bảo mật hệ thống sniffer được
hiểu là các công cụ (có thể là phần cứng hoặc phần mềm) "bắt" các thông tin lưu
chuyển trên mạng; từ các thông tin "bắt" được đó để "đánh hơi" lấy được những
thông tin có giá trị trao đổi trên mạng. Hoạt động của sniffer cũng giống như các
chương trình "bắt" các thông tin gõ từ bàn phím (key capture). Tuy nhiên các tiện
ích key capture chỉ thực hiện trên một trạm làm việc cụ thể; đối với sniffer có thể
bắt được các thông tin trao đổi giữa nhiều trạm làm việc với nhau.
Các chương trình sniffer (sniffer mềm) hoặc các thiết bị sniffer (sniffer cứng)
đều thực hiện bắt các gói tin ở tầng IP trở xuống (gồm IP datagram và Ethernet
9
Packet). Do đó, có thể thực hiện sniffer đối với các giao thức khác nhau ở tầng
mạng như TCP, UDP, IPX,
Mặt khác, giao thức ở tầng IP được định nghĩa công khai, và cấu trúc các
trường header rõ ràng, nên việc giải mã các gói tin này không khó khăn.
Mục đích của các chương trình sniffer đó là thiết lập chế độ promiscuous
(mode dùng chung) trên các card mạng ethernet - nơi các gói tin trao đổi trong
mạng - từ đó "bắt" được thông tin.
Các thiết bị sniffer có thể bắt được toàn bộ thông tin trao đổi trên mạng là dựa
vào nguyên tắc broadcast (quảng bá) các gói tin trong mạng Ethernet. Trên hệ
thống mạng không dùng hub, dữ liệu không chuyển đến một hướng mà được lưu
chuyển theo mọi hướng. Ví dụ khi một trạm làm việc cần được gửi một thông báo

trên mạng, người quản trị cũng cần chủ động thiết lập các chương trình sniffer, với
vai trò này sniffer có tác dụng tốt.
m. Mã di động (Mobile code -Java, JavaScript, and ActiveX)
G n đây, trên các di n đàn v b o m t xu t hi n các báo cáo v các v n đ v i " mãầ ễ ề ả ậ ấ ệ ề ấ ề ớ
di đ ng " ( ch ng h n. ộ ẳ ạ Java, JavaScript, Và ActiveX). ây là nh ng ngôn ng l pĐ ữ ữ ậ
trình đ cho nh ng ng i phát tri n m ng vi t mã mà đ c th c hi n b i trìnhể ữ ườ ể ạ ế ượ ự ệ ở
duy t m ng (c a) các b n. Dù mã này, nói chung h u ích, song nó c ng là c h i choệ ạ ủ ạ ữ ũ ơ ộ
nh ng k t n công s d ng đ thu nh t nh ng thông tin (nh trang web nào màữ ẻ ấ ử ụ ể ặ ữ ư
b n đ n th m) hay đ ch y nh ng mã hi m đ c trên máy tính c a b n. Kh d vôạ ế ă ể ạ ữ ể ộ ủ ạ ả ĩ
hi u hóa Java, JavaScript, và ActiveX trong b duy t m ng c a các b n. Do đó,ệ ộ ệ ạ ủ ạ
m t khuy n cáo khi s d ng trình duy t cho nh ng trang web mà b n khôngộ ế ử ụ ệ ữ ạ
quen thu c, không tin t ng thì không nên m các công ngh đ c h tr b iộ ưở ở ệ ượ ỗ ợ ở
ActiveX v.v…
có thêm nhi u thông tin h n v mã hi m đ c xem :Để ề ơ ề ể ộ
/>n. Trojans
Trojan Horse được lấy tên từ một câu chuyện thần thoại cổ “ Con ngựa thành
Trojan“. Người ta định nghĩa :”Trojan horse là một chương trình không chính
thức chứa trong khoảng thời gian một chương trình hợp pháp”. Như vậy, Trojans
có thể chạy được là do các chương trình hợp pháp đã bị thay đổi mã của nó bằng
những mã bất hợp pháp.
Những chương trình virus là một loại điển hình của các chương trình Trojans.
Vì những chương trình virus che dấu các đoạn mã trong những chương trình sử
dụng hợp pháp. Khi những chương trình này hoạt động thì những đoạn mã ẩn dấu
thực thi để thực hiện một số chức năng mà người sử dụng không biết (ăn cắp mật
khẩu hay sao chép files v.v…).
Xét về khía cạnh bảo mật và giám sát trên Internet thì một chương trình Trojan
sẽ thực hiện các vấn đề sau:
- Giúp người lập trình phát hiện ra các lỗi hoặc thông tin cá nhân của máy
người dùng trên hệ thống mạng.
- Giúp người lập trình phát hiện kiểm soát và khống chế các hoạt động trên

sử dụng tại nhà :
- Tham khảo nhân sự hỗ trợ hệ thống của các bạn nếu bạn làm việc từ nhà
- Sử phần mềm bảo vệ virus
- Sử dụng Firewall
- Đừng mở email không biết rõ nguồn gốc
- Đừng mở chương trình không biết nguồn gốc
- Vô hiệu hóa những phần mở rộng tên tập tin ẩn
- Lưu giữ tất cả các ứng dụng được vá (bao gồm hệ điều hành của bạn)
- Tắt máy tính (của) các bạn hay ngắt ra khỏi mạng khi không phải đang sử
dụng
- Vô hiệu hóa Java, JavaScript, Và ActiveX nếu khả dĩ
- Vô hiệu hóa những đặc tính scripting trong những chương trình email
- Thực hiện sao lưu bình thường đối với số liệu tới hạn
- Làm cho một đĩa khởi động trong trường hợp là máy tính của các bạn bị hư
hại hay thỏa hiệp
12
1.3. Các dịch vụ, cơ chế bảo mật và tấn công (Services, Mechanisms, Attacks)
• Cần có cách thức thực hiện để xác định các yêu cầu
• Có 3 quan điểm để tiếp cận về bảo mật thông tin :
– Tấn công bảo mật (security attack)
– Cơ chế bảo mật (security mechanism)
– Dịch vụ bảo mật (security service)
• Ngoài ra cũng có những quan điểm ngược lại
1.3.1. Dịch vụ bảo mật (Security Service)
- Là một họat động nhằm tăng cường khả năng bảo vệ của những hệ thống xử
lý dữ liệu và sự trao đổi thông tin của tổ chức.
- Dùng để đếm những tấn công bảo mật
- Thực hiện một hoặc nhiều cơ chế bảo mật để hỗ trợ cho dịch vụ
- Thông thường sử dụng các hàm sao chép kết hợp với những tài liệu vật lý
Ví dụ như : chữ ký, vân tay, niên hiệu v.v…cần sự bảo vệ một các công khai

• X.800 gồm 5 thành phần chính sau :
+Xác thực(Authentication) : - Đảm bảo sự tồn tại của một giao tiếp
+Điều khiển truy cập (Access Control) : Ngăn chặn việc sự dụng trái phép
của tài nguyên
+Sự tin cậy dữ liệu (Data Confidentiality) : Bảo vệ dữ liệu từ việc truy cập
tái phép
+Tòan vẹn dữ liệu (Data Integrity) : Đảm bảo dữ liệu nhận và gởi là thực
thể hợp pháp ( authorized entity)
+Sự từ chối (Non-Repudiation) – Bảo vệ chống lại các từ chối thông qua
quy tắc trong giao tiếp
Cơ chế bảo mật (X.800)
• Đặt trưng của cơ chế bảo mật:
– Đọc bộ giải mã (encipherment), chữ ký số (digital signatures), điều
khiển truy cập(access controls), toàn vẹn dữ liệu (data integrity),
thay đổi truy cập hợp pháp (authentication exchange), điều khiển lộ
trình(routing control), chứng thực (notarization) v.v…
• Cơ chế bảo mật xâm nhập (pervasive security mechanisms)
– Ủy thác chức năng (trusted functionality), dán nhãn bảo mât,
(security labels), sự kiện phát hiện, kiểm tra vết bảo mật (security
audit trails), phục hồi bảo mật (security recovery)
Phân loại tấn công bảo mật
• Tấn công bị động (passive attacks): Nghe trộm (eavesdropping) hoặc kiểm
tra các luồng dịch chuyển để :
– Thu lượm nội dung các thông điệp
– giám sát luồng lưu thông
• Tấn công tích cực (active attacks) : Thay đổi các luồng dữ liệu qua việc:
– Giả mạo (masquerade) một thực thể như là một cái khác
– Thay thế thông điệp
– Sửa đổi thông điệp trong khi dịch chuyển
– Từ chối dịch vụ


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status