LỜI NÓI ĐẦU
Tầm quan trọng của An ninh truyền thông từ lâu đã được ghi nhận trong quân sự
và trong những lĩnh vực hoạt động xã hội – nơi có thể xuất hiện sự uy hiếp đến An
ninh Quốc gia. Việc làm chủ an ninh truyền thông và những con số bí mật của nó được
công nhận như một tác nhân quan trọng đem lại chiến thắng trong rất nhiều cuộc xung
đột quân sự từ nhiều thế kỷ qua, trong đó có cả Thế chiến thứ II ở thế kỷ trước. Với
khái niệm này An ninh truyền thông là phương tiện che dấu thông tin và bảo vệ nó
không bị bóp méo hay mất mát trong quá trình truyền tin. Việc giải mã các mật mã là
những phương tiện làm vô hiệu hoá khả năng an ninh của đối phương.
Ngày nay hệ thống mạng máy tính đã có những bước phát triển mạnh mẽ, xâm
nhập vào rất nhiều lĩnh vực của cuộc sống. Với hệ thống mạng Internet, những dịch vụ
như giáo dục từ xa, trao đổi thương mại, giao dịch điện tử, … đã trở thành hiện thực.
Tuy nhiên, vì là một hệ thống mạng mở, có phạm vi toàn cầu và không có bất kỳ tổ
chức nào quản lý nên mạng Internet cũng trở thành môi trường lý tưởng cho các phần
tử xấu thực hiện các hành động phá hoại, đánh cắp thông tin gây tổn hại về kinh tế, uy
tín của các cơ quan tổ chức và cá nhân tham gia vào hệ thống mạng. Vì vậy vấn đề
đảm bảo an ninh, an toàn thông tin trên mạng máy tính trở thành một yêu cầu tất yếu
và quan trọng cả ở góc độ quốc gia và quốc tế.
Giáo trình an toàn thông tin được xây dựng nhằm cung cấp cho người đọc những
kiến thức cơ bản về an toàn thông tin, khai thác sử dụng các dịch vụ an toàn trong hệ
thống thông tin, xây dựng một số giải pháp nhằm đảm bảo tính an toàn của hệ thống.
Nội dung của giáo trình bao gồm:
Chương I: Tổng quan về An toàn thông tin trên mạng máy tính
Đưa ra những vấn đề tổng quan về An ninh, an toàn mạng máy tính; các
hình thức tấn công phổ biến; các dịch vụ an toàn mạng và một số mô hình mạng
đảm bảo an toàn.
Chương II: Mật mã và An toàn thông tin trên mạng máy tính
Trình bày những kiến thức cơ bản về Mật mã, các giải thuật mã hoá, một số
giao thức mã hoá đảm bảo an toàn; giải pháp xây dựng mô hình ứng dụng sử
dụng lý thuyết mật mã để đảm bảo an toàn thông tin trong quá trình truyền thông
trên mạng máy tính.
mạng máy tính 11
II. Một số hình thức tấn công mạng phổ biến (Attacks) 14
1. Tấn công thăm dò 15
2. Tấn công truy nhập 24
3. Tấn công từ chối dịch vụ (DoS/DDoS) 32
III. Một số mô hình tổng quan đảm bảo An toàn mạng 34
1. Mô hình áp dụng cho trung tâm mạng nhỏ 34
2. Mô hình áp dụng cho trung tâm mạng trung bình 34
3. Mô hình áp dụng cho trung tâm mạng lớn 35
CÂU HỎI ÔN TẬP CHƯƠNG 1 36
CHƯƠNG 2: MẬT MÃ VÀ AN TOÀN THÔNG TIN TRÊN MẠNG 37
I. Tổng quan về mật mã 37
1. An toàn thông tin và mật mã 37
2. Các thuật ngữ và khái niệm mật mã cơ bản 37
II. Mật mã khoá đối xứng (khóa bí mật) 38
1. Mô hình mật mã khoá đối xứng 39
2. Một số hệ mật khoá đối xứng 39
III. Mật mã khoá công khai (bất đối xứng) 42
1. Mô hình mật mã khoá công khai và những nguyên tắc của các hệ mã khoá công
khai 43
2. Một số kỹ thuật phân phối khoá công khai 43
3. Hệ mã khoá công khai RSA 47
4. Cơ sở hạ tầng khoá công khai PKI (Public Key Infrastructure) 48
5. Hàm băm và chữ ký số 54
IV. Một số giao thức mã hoá 57
1. Giao thức mã hoá tầng 2 mô hình OSI 57
2. Giao thức mã hoá tầng 3 mô hình OSI – IPSec (IP Security) 59
3. Giao thức mã hoá tầng 4 mô hình OSI (SSL và TLS ) 60
4. Giao thức mã hoá tầng 7 mô hình OSI 61
CÂU HỎI ÔN TẬP VÀ BÀI TẬP THỰC HÀNH CHƯƠNG 2 63
I. Kiểm soát truy nhập mạng 115
1. Điều khiển truy nhập 115
2. Các phương pháp chứng thực (Authentication) 116
3. Các phương pháp cấp quyền (Authorization) 122
4. Giám sát thống kê (Accounting) 122
II. An toàn dịch vụ Web 123
1. Tổng quan về an toàn Web 123
2. Một số hình thức tấn công Web và giải pháp phòng chống 126
3. Triển khai giải pháp đảm bảo an toàn Web 139
III. An toàn dịch vụ Email 141
1. Tổng quan về an toàn Email 141
2. Một số hình thức tấn công Email 142
3. Triển khai dịch vụ Email đảm bảo an toàn 147
IV. Virus và phần mềm gây hại 151
1. Tổng quan về Virus máy tính 151
2. Một số giải pháp phòng chống Virus máy tính 162
CÂU HỎI ÔN TẬP VÀ BÀI TẬP THỰC HÀNH CHƯƠNG 4 166
TÀI LIỆU THAM KHẢO 168
4
CHƯƠNG 1: TỔNG QUAN VỀ AN TOÀN THÔNG TIN TRÊN MẠNG MÁY
TÍNH
I. Một số vấn đề về An toàn Thông tin trên mạng máy tính
1. Thực trạng An ninh mạng ở Việt Nam và trên Thế giới
Lịch sử của các cuộc tấn công mạng máy tính khởi đầu vào những năm 1950 -
1960, bao trùm cả phần cứng lẫn phần mềm và xoay quanh phòng thí nghiệm trí thông
minh nhân tạo tại Viện công nghệ Massachusetts (MIT - Mỹ). Những sinh viên thông
minh với bản chất tò mò, từng xâm nhập hệ thống điện thoại và trung tâm điều hành
của câu lạc bộ đường sắt Tech Model, đã bị cuốn hút bởi những chiếc máy tính đồ sộ
trong viện. Giám đốc của MIT là Marvin Minsky cho phép họ tiếp cận trực tiếp với
những cỗ máy này và đây được coi như nền tảng đầu tiên của các hacker tương lai.
Nổi tiếng với tên hiệu “Cap'n Crunch”, John Draper là một trong những con người
đầu tiên trên thế giới này được “nhận mệnh danh là hacker”. Trong thập niên 70,
Draper đã sử dụng một chiếc còi đồ chơi tặng kèm trong hộp ngũ cốc Cap'n Crunch để
5
“hack” vào đường dây điện thoại và thoải mái thực hiện các
cuộc gọi “miễn phí”. Draper vô tình nhận ra rằng chiếc còi
tạo ra một âm thanh có tần số giống hệt tần số tín hiệu cuộc
gọi trên đường dây điện thoại. Nhờ đó mà anh ta đã có thể
điều khiển cuộc gọi tiếp tục được diễn ra mà người nghe
vẫn cứ tưởng là cuộc gọi đã kết thúc rồi. Năm 1972, Draper
bị phát hiện khi hãng điện thoại “nhìn thấy sự bất thường”
trong hóa đơn tiền điện thoại của anh. Sau đó Draper bị kết
án 2 tháng tù giam. Vụ tấn công của Draper đã khai sinh là
thuật ngữ “Phreaking”. Nghĩa của thuật ngữ này trong xã
hội của chúng ta ngày nay là “tấn công vào các hệ thống viễn thông”.
Kevin Mitnick
Đầu những năm 1990, Kevin Mitnick, hay còn gọi là
"chúa tể các hacker", đã đột nhập thành công vào hệ thống
máy tính của các công ty truyền thông và kỹ thuật lớn trên thế
giới như Nokia, Fujitsu, Motorola, Sun Microsystems. Mitnick
bị FBI bắt vào năm 1995, sau đó được thả vào năm 2000.
Mitnick không thừa nhận những hoạt động của mình là tấn
công mà gọi là "một mánh khóe của xã hội".
Kevin Poulsen
Năm 1983, khi còn là một sinh viên Poulsen đã tấn công
vào mạng Arpanet, tiền thân của mạng Internet. Anh ta đã
phát hiện ra một lỗ hổng trong cấu trúc của mạng này và tạm
chiếm quyền điều khiển mạng mở rộng của nước Mỹ.
Năm 1990: Khi một đài phát thanh ở khu vực Los
Angeles công bố một cuộc thi với giải thưởng dành cho người
240.015 USD. Về số tiền bị đánh cắp, CitiBank chỉ có thể lấy lại khoảng 400.000
USD.
David Smith
Năm 1999, David Smith phát tán sâu Melissa từ một máy
tính ở bang New Jersey (Mỹ) thông qua một tài khoản thư điện
tử AOL đánh cắp được. Con sâu máy tính có khả năng tự động
phát tán đến 50 người đầu tiên có tên trong sổ địa chỉ Outlook
khi đã lây nhiễm lên PC. Melissa đã lây nhiễm và tấn công PC
của hơn 300 doanh nghiệp trên toàn thế giới - trong đó có cả
những tên tuổi lớn như Microsoft, Intel hay Lucent
Technologies. Những doanh nghiệp này đã buộc phải đóng máy
chủ email (email gateway) do lượng email được gửi đi quá
nhiều. Tổng thiệt hại mà Melissa gây ra ước tính lên tới con số
80 triệu USD. Sau khi bị kết tội, Smith lĩnh án tù 20 tháng và phải làm việc dưới sự
giám sát của FBI nhằm trợ giúp cơ quan này phát hiện ra các loại mã độc mới cũng
như lần tìm tác giả của chúng.
Jonathan James
Cuối tháng 6-1999, Jonathan James hoa mắt khi biết tài
liệu mã nguồn của NASA có thể được bán với giá 1,7 triệu
USD. James - khi ấy mới chỉ có 15 tuổi - đã đột nhập thành
công vào máy tính của NASA nhờ đánh cắp được một mật
khẩu tài khoản đăng nhập ở Trung tâm vũ trụ Marshall
(Alabama, Mỹ) với hi vọng sẽ kiếm được ít tài liệu để bán lấy
tiền. Hậu quả của vụ tấn công là trong tháng 7-1999 NASA đã
buộc phải ngắt kết nối mạng máy tính trong suốt vài tuần lễ.
Tài liệu bị đánh cắp là tài liệu liên quan đến kiểm soát môi
trường trên trạm vũ trụ như nhiệt độ, độ ẩm… Tròn 16 tuổi,
James bị kết án 6 tháng tù giam và phải chấp nhận thời gian
giám sát thử thách cho đến khi nào tròn 18 tuổi.
MafiaBoy
2008) thì chỉ có 394 lỗ hổng đã được khắc phục (chiếm 3%), trong đó có 63% các ứng
dụng web bị lây nhiễm (năm 2007 là 59%). Trong năm 2008, Symatec đã phát hiện ra
55.398 máy chủ đặt website lừa đảo (tăng 66% so với năm 2007) trong đó những lừa
đảo liên quan đến dịch vụ tài chính chiếm 76% (tăng 52% so với năm 2007)
Cũng theo báo cáo của Symatec, Việt Nam là nước đứng thứ 8 trong khu vực
Châu Á Thái Bình Dương về các hoạt động tấn công đe doạ và đứng thứ 2 trong khu
8
vực Đông Nam Á (sau Thái Lan). Có thể điểm qua một số vụ tấn công vào các hệ
thống mạng và website tại Việt Nam như sau:
- 14h ngày 27/11/2006 website của Bộ Giáo dục đào tạo bị tấn công bởi một học
sinh trung học
- Chủ nhật ngày 12/3/2006, website thương mại điện tử VietCo.com bị tấn công
từ chối dịch vụ DDos, làm cho hệ thống không thể hoạt động được, nhân viên toàn
công ty phải nghỉ việc
- Ngày 27/9/2010, máy ATM của ngân hàng Đông Á bị Virus Conficker tấn
công
- Ngày 22/11/2010, website VietNamNet đã bị Hacker tấn công chiếm quyền
điều khiển và xóa sạch dữ liệu trên hệ thống máy chủ. Phải mất gần 1 ngày, các
chuyên gia mới đưa VietNamNet hoạt động được trở lại
9
Theo thống kê từ hệ thống giám sát virus của Trung tâm An ninh mạng BKAV,
trong tháng 9 năm 2010 Việt Nam xuất hiện 2.876 virus mới, lây nhiễm trên 5.610.000
lượt máy tính. Đã có 36 website của các cơ quan, doanh nghiệp của Việt Nam bị
Hacker xâm nhập, trong đó có 20 trường hợp gây ra bởi Hacker trong nước và 16
trường hợp gây ra bởi Hacker nước ngoài.
Thông tin về tình hình virus và an ninh mạng tháng 9/2010
10
Danh sách 10 virus lây lan nhiều nhất tháng 9/2010
Những cuộc tấn công mà chúng ta biết được thực chất chỉ là phần nổi. Trên thực
tế còn rất nhiều cuộc tấn công khác cũng gây nên những hậu quả hết sức nghiêm trọng
chuẩn áp dụng.
Trước tình hình trên, năm 2007, Bộ Bưu chính, Viễn thông (nay là Bộ Thông tin
và Truyền thông) đã có Chỉ thị số 03/2007/CT-BBCVT ngày 23/02/2007 về việc tăng
cường đảm bảo an ninh thông tin trên mạng Internet đã yêu cầu các cơ quan, tổ chức,
doanh nghiệp viễn thông, internet tham gia hoạt động trên mạng Internet phải xây
dựng quy trình và quy chế đảm bảo an ninh thông tin cho các hệ thống thông tin, tham
khảo các chuẩn quản lý an toàn TCVN 7562, ISO 27001, đảm bảo khả năng truy vết
và khôi phục thông tin trong trường hợp có sự cố.
TCVN 7562 là tiêu chuẩn tương đương với tiêu chuẩn quốc tế ISO 17799 phiên
bản 2000 (nay đã được cập nhật phiên bản 2005 và đổi tên thành ISO 27002), còn tiêu
chuẩn ISO 27001 ở Việt Nam vẫn chưa có tiêu chuẩn tương đương, dẫn đến việc áp
dụng gặp nhiều khó khăn (chủ yếu chỉ áp dụng trong một số ít các tổ chức có trình độ
nhân lực cao, nằm ở các thành phố lớn). Do đó năm 2007, Bộ Thông tin và Truyền
thông đã giao Trung tâm Ứng cứu khẩn cấp máy tính Việt Nam (VNCERT) thực hiện
đề tài “Nghiên cứu, xây dựng tiêu chuẩn kỹ thuật cho hệ thống quản lý an toàn thông
tin”, mã số 63-07-KHKT-TC, với mục đích xây dựng tiêu chuẩn về hệ thống an toàn
thông tin trên cơ sở chấp thuận áp dụng tiêu chuẩn quốc tế ISO 27001, áp dụng được
cho các cơ quan, tổ chức ở Việt Nam.
Tiêu chuẩn này khuyến khích việc áp dụng cách tiếp cận theo quy trình khi thiết
lập, triển khai, điều hành, giám sát, soát xét, bảo trì và nâng cấp hệ thống ISMS của tổ
chức.
Một tổ chức cần xác định và quản lý rất nhiều hoạt động để vận hành một cách
hiệu quả. Bất cứ hoạt động nào sử dụng các tài nguyên và quản lý việc tiếp nhận các
đầu vào chuyển hóa thành đầu ra có thể coi như một quy trình, Thông thường đầu ra
của một quy trình này là đầu vào của một quy trình tiếp theo.
Việc áp dụng một hệ thống các quy trình trong tổ chức, cùng với sự nhận biết
tương tác giữa các quy trình như vậy, và sự quản lý chúng, có thể coi như “cách tiếp
cận theo quy trình”.
Cách tiếp cận theo quy trình cho quản lý an toàn thông tin được trình bày trong
tiêu chuẩn này nhằm khuyến khích người sử dụng nhấn mạnh các điểm quan trọng:
kinh nghiệm thực tiễn và báo cáo kết quả cho ban
quản lý để soát xét.
A (Hành động) - Duy trì và
nâng cấp ISMS
Tiến hành các hành động khắc phục và hành động
phòng ngừa dựa trên các kết quả của việc kiểm toán
nội bộ hệ thống ISMS, soát xét của ban quản lý
hoặc các thông tin liên quan khác nhằm liên tục
hoàn thiện hệ thống ISMS.
13
Triển khai và
điều hành hệ
thống ISMS
Triển khai và
điều hành hệ
thống ISMS
Giám sát và
đánh giá hệ
thống ISMS
Giám sát và
đánh giá hệ
thống ISMS
P
D
C
A
Thiết lập hệ
thống ISMS
Thiết lập hệ
thống ISMS
quản lý an
toàn thông
tin
Các bộ
phận liên
quan
Kết quả
quản lý an
toàn thông
tin
Chi tiết dự thảo quốc gia về hệ thống quản lý an toàn thông tin (TCVN 2008)
tham khảo tại trang tin điện tử: />II. Một số hình thức tấn công mạng phổ biến (Attacks)
Để đảm bảo an toàn thông tin dữ liệu trên đường truyền tin và trên mạng máy
tính có hiệu quả thì điều trước tiên là phải lường trước hoặc dự đoán trước các khả
năng không an toàn, khả năng xâm phạm, nguồn gốc của cuộc tấn công, các sự cố rủi
ro có thể xảy ra đối với thông tin dữ liệu được lưu trữ và trao đổi trên đường truyền tin
cũng như trên mạng. Xác định càng chính xác các nguy cơ nói trên thì càng có các
quyết định, giải pháp tốt để giảm thiểu các thiệt hại.
Có hai loại hành vi xâm phạm thông tin dữ liệu đó là: vi phạm chủ động và vi
phạm thụ động.
- Vi phạm thụ động chỉ nhằm mục đích cuối cùng là nắm bắt được thông tin
(đánh cắp thông tin). Việc làm đó có khi không biết được nội dung cụ thể nhưng có thể
dò ra được người gửi, người nhận nhờ thông tin điều khiển giao thức chứa trong phần
đầu các gói tin. Kẻ xâm nhập có thể kiểm tra được số lượng, độ dài và tần số trao đổi.
Vì vậy vi pham thụ động không làm sai lệch hoặc hủy hoại nội dung thông tin dữ liệu
được trao đổi. Vi phạm thụ động thường khó phát hiện nhưng có thể có những biện
pháp ngăn chặn hiệu quả.
- Vi phạm chủ động là dạng vi phạm có thể làm thay đổi nội dung, xóa bỏ, làm
trễ, xắp xếp lại thứ tự hoặc làm lặp lại gói tin tại thời điểm đó hoặc sau đó một thời
gian. Vi phạm chủ động có thể thêm vào một số thông tin ngoại lai để làm sai lệch nội
đoán, phát hiện các sự cố nhằm giúp cải thiện hoạt động hệ thống mạng. Tuy nhiên, kỹ
thuật này về sau bị biến tướng, trở thành công cụ đắc lực phục vụ mục đích thu thập
trái phép các thông tin nhạy cảm, tên tài khoản, mật khẩu, credit card,… của người
dùng khi luân chuyển trên mạng.
Sniffing chủ yếu xảy ra ở mặt vật lý. Nghĩa là kẻ tấn công phải tiếp cận và có thể
điều khiển một thành phần của hệ thống mạng, chẳng hạn như một máy tính nào đó.
Ví dụ kẻ tấn công có thể dùng laptop hoặc PC trong các dịch vụ Internet, các quán café
WiFi, trong hệ thống mạng nội bộ doanh nghiệp,… Trường hợp hệ thống máy tính
nghe trộm và kẻ tấn công ở cách xa nhau, kẻ tấn công tìm cách điều khiển một máy
tính nào đó trong hệ thống rồi cài đặt trình nghe lén vào máy đó để thực hiện nghe
trộm từ xa.
15
Hiện nay, nghe trộm mạng thực hiện rất dễ dàng, bởi có quá nhiều công cụ giúp
thực hiện như Cain&Abe, Ettercap, Ethereal, Dsniff, TCPdump, Sniffit, Các công cụ
này ngày càng được “tối ưu hóa” để dễ sử dụng và tránh bị phát hiện khi thực thi. So
với các kiểu tấn công khác, tấn công dạng Sniffing cực kỳ nguy hiểm, bởi nó có thể
ghi lại toàn bộ thông tin được truyền dẫn trên mạng, và người sử dụng không biết là
đang bị nghe trộm lúc nào do máy tính của họ vẫn hoạt động bình thường, không có
dấu hiệu bị xâm hại. Điều này dẫn đến việc phát hiện và phòng chống nghe trộm rất
khó, và hầu như chỉ có thể phòng chống trong thế bị động (passive), nghĩa là chỉ phát
hiện được bị nghe trộm khi đang ở tình trạng bị nghe trộm.
Để hiểu được bản chất của quá trình Sniffing thì cần hiểu nguyên tắc chuyển tải
các khung (frames) của lớp Datalink từ các gói tin (packets) ở lớp Network trong mô
hình OSI. Cụ thể là qua hai loại thiết bị tập trung các node mạng sử dụng phổ biến
hiện nay là Hub và Switch.
- Nghe lén trong mạng dùng Hub (Thụ động - Passive): Một khung gói tin khi
chuyển từ máy A sang máy B thì đồng thời nó được gửi đến tất cả các máy khác đang
kết nối cùng Hub theo cơ chế loan tin (broadcast). Các máy tính nhận được gói tin này
và tiến hành so sánh yêu cầu về địa chỉ MAC (địa chỉ vật lý của card mạng) trên gói
tin với địa chỉ đích. Nếu trùng lập thì sẽ nhận, còn không thì cho qua. Do gói tin từ A
xử lý không kịp và trở nên quá tải. Khi đó Switch sẽ không đủ sức thể hiện bản chất
Layer2 mà broadcast gói tin ra toàn bộ các port của mình. Hacker sẽ dễ dàng bắt được
toàn bộ thông tin trong mạng.
Để phòng chống hình thức tấn công này, đối với một mạng có quy mô nhỏ, người
quản trị có thể sử dụng địa chỉ IP tĩnh và ARP table tĩnh, khi đó bạn sẽ liệt kê bằng tay
IP nào đi với MAC nào. Trong Windows có thể sử dụng câu lệnh ipconfig /all để xem
IP và MAC và dùng câu lệnh arp –s để thêm vào Arp table. Khi ép tĩnh như vậy sẽ
ngăn chặn hacker gửi các gói Arp response giả tạo đến máy của mình vì khi sử dụng
Arp table tĩnh thì nó luôn luôn không thay đổi. Chú ý rằng cách thức này chỉ áp dụng
được trong môi trường mạng với quy mô nhỏ, vì với mạng có quy mô lớn chúng ta sẽ
phải thêm vào Arp table bằng tay với số lượng quá nhiều.
Đối với một mạng lớn, ta có thể sử dụng chức năng Port security (chỉ áp dụng
được trên các dòng Switch có hỗ trợ chức năng config port). Khi mở chức năng Port
security lên các port của Switch ta có thể quy định port đó chỉ chấp nhận một địa chỉ
MAC. Như vậy sẽ ngăn chặn được việc thay đổi địa chỉ MAC trên máy hacker. Ngoài
ra cũng có thể sử dụng các công cụ, ví dụ như ArpWatch. Nó sẽ phát hiện và báo cáo
17
các thông tin liên quan đến ARP đang diễn ra trong mạng. Nhờ đó nếu có hiện tượng
tấn công bằng Arp spoofing thì người quản trị có thể giải quyết kịp thời.
MAC Flooding:
Địa chỉ MAC (Media Access Control) : là kiểu địa chỉ vật lí, đặc trưng cho một
thiết bị hoặc một nhóm các thiết bị trong mạng LAN. Địa chỉ này được dùng để nhận
diện các thiết bị giúp cho các gói tin lớp 2 có thể đến đúng đích. Địa chỉ MAC được
phân ra làm 3 loại: Unicast (đại diện cho một thiết bị duy nhất), Multicast (đại diện
cho một nhóm thiết bị) và Broadcast (FFFF.FFFF.FFFF – đại diện cho tất cả các thiết
bị có trong mạng LAN).
Chức năng chuyển mạch của Switch: Việc đưa thiết bị chuyển mạch vào một
mạng LAN có nhiều mục đích nhưng mục đích quan trong nhất là để chia một mạng
LAN ra thành nhiều vùng khác nhau nhằm giảm thiểu việc xung đột gói tin khi có quá
nhiều thiết bị được nối vào cùng một môi trường truyền dẫn. Các vùng được phân chia
không khác gì chức năng của một Hub. Lợi dụng điểm yếu của thiết bị chuyển mạch,
Hacker tấn công MAC Flooding bằng cách làm tràn bảng CAM của Switch.
Ví dụ: mô hình tấn công làm ngập bảng CAM
Trong ví dụ trên, host C của kẻ tấn công gửi đi liên tục hàng loạt các bản tin có
địa chỉ MAC nguồn là địa chỉ giả mạo (host X và host Y). Switch sẽ cập nhật địa chỉ
của các host giả mạo này vào bảng CAM. Kết quả là khi host A gửi tin đến cho host B;
địa chỉ của B không tồn tại trong bảng nên gói tin được Switch gửi ra các cổng của nó
và C sẽ nhận được bản tin mà A muốn gửi riêng cho B.
Nguyên lý chung của các phương pháp phòng chống là không để các gói tin có
địa chỉ MAC lạ đi qua Switch. Phương pháp phòng chống hiệu quả nhất là cấu hình
Port Security trên Switch. Khi Switch nhận được một gói tin chuyển đến, nó sẽ kiểm
tra địa chỉ MAC nguồn của gói tin với danh sách các địa chỉ đã được cấu hình trước
đó. Nếu hai địa chỉ này khác nhau thì tuỳ theo sự cấu hình của người quản trị mà
Switch sẽ xử lí gói tin đến với các mức độ khác nhau. Như vậy cấu hình Port Security
là một phương pháp hiệu quả nhất để phòng chống MAC Flooding. Tuy nhiên, với
những Switch không hỗ trợ cấu hình Port Security thì có một biện pháp có thể dùng
19
được là sử dụng phần mềm phát hiện gói tin giả mạo. Như ta đã thấy, sau khi bảng
CAM của Switch bị tràn, mọi gói tin đến Switch đều bị gửi ra các cổng và việc tấn
công này cần phải tiến hành liên tục để đảm bảo rằng bảng CAM luôn bị tràn. Do đó
trong khoảng thời gian aging (khoảng thời gian để Switch xóa một ánh xạ ra khỏi bảng
nếu không nhận được thông tin trao đổi trên cổng); kẻ tấn công phải tiến hành gửi đi ít
nhất 2 lần số bản tin giả mạo. Ta có thể dùng một máy tính gắn vào một cổng trên
Switch để bắt các gói tin giả mạo này (do chúng bị flood ra tất cả các cổng). Từ các
gói tin bị bắt được, phần mềm sẽ đọc ra địa chỉ MAC nguồn của gói tin. Nếu trong một
khoảng thời gian nhất định (bằng khoảng thời gian aging của Switch) số địa chỉ MAC
nguồn là quá lớn, phần mềm sẽ ghi lại kết quả và báo cho người quản trị biết rằng đã
có tấn công trong mạng. Tuy nhiên, phương pháp này lại có rất nhiều nhược điểm:
• Nhược điểm thứ nhất: do phải xử lý quá nhiều gói tin trong một khoảng thời
gian ngắn, hiệu năng của máy sẽ giảm. Số lượng gói tin ở đây không chỉ là các bản tin
Ping là một khái niệm rất đơn giản tuy nhiên lại rất hữu ích cho việc chẩn đoán
mạng. Tiểu sử của từ "ping" như sau: Ping là tiếng động vang ra khi một tàu ngầm
muốn biết có một vật thể khác ở gần mình hay không, nếu có một vật thể nào đó gần
tàu ngầm tiếng sóng âm này sẽ va vào vật thể đó và sẽ có âm thanh phản xạ lại như
vậy tàu ngầm đó sẽ biết là có gì đó ở gần.
Lệnh “Ping” trên hệ thống mạng gửi một gói tin ICMP (Internet Control Message
Protocol) “echo request” đến Host. Nếu nhận được thông tin phản hồi (echo reply) thì
chứng tỏ Host đó đang hoạt động (đang sống); còn ngược lại thì có thể khẳng định là
Host đó đã ngừng hoạt động (hoặc không tồn tại).
Hacker sử dụng các công cụ quét IP phổ biến như: SupperScan, Pinger, Frendly
pinger, wsping pro, … để thăm dò xem có những Host nào hoạt động trên hệ thống
mạng, đây là một bước ban đầu và cần thiết để Hacker thực hiện các kỹ thuật tấn công
tiếp theo.
Giao diện công cụ SupperScan
Cách thức phòng chống Ping Sweep tốt nhất là cấu hình chặn gói tin ICMP ngay
tại Firewall. Ngoài ra còn có thể sử dụng một số kỹ thuật che dấu địa chỉ IP thật của
máy như: NAT, PAT sẽ được trình bày ở phần sau của giáo trình này.
c. Quét cổng (Port Sweep)
Truyền thông bằng giao thức TCP/IP sử dụng các cổng TCP hoặc cổng UDP (nếu
giao thức UDP được sử dụng cùng với giao thức IP). Cổng TCP hoặc UDP là một con
đường để truy nhập hệ thống đích, thông thường nó liên quan đến một dịch vụ, một
tiến trình hay một chức năng nhất định. Một cổng tương tự như một mạch ảo kết nối
21
giữa 2 dịch vụ hoặc 2 tiến trình truyền thông với nhau giữa 2 máy tính hoặc 2 thiết bị
mạng khác nhau.
Một số cổng TCP thông dụng:
Port
No
Purpose
Port
đóng.
- FIN Scan: Client chưa có kết nối tới Server nhưng vẫn tạo ra gói FIN với số
port nhất định gửi tới Server cần Scan. Nếu Server gửi về gói ACK thì Client biết
Server đang mở port đó, nếu Server gửi về gói RST thì Client biết Server đang đóng
port đó.
- NULL Scan Sure: Client sẽ gửi tới Server những gói TCP với số port cần
Scan mà không chứa thông số Flag nào, nếu Server gửi lại gói RST thì chứng tỏ port
đó trên Server đang bị đóng.
- XMAS Scan Sorry: Client sẽ gửi những gói TCP với số Port nhất định cần
Scan chứa nhiều thông số Flag như: FIN, URG, PSH. Nếu Server trả về gói RST thì
Client biết port đó trên Server đang bị đóng.
- TCP Connect: Phương thức này rất thực tế, nó gửi đến Server những gói tin
yêu cầu kết nối tới các port cụ thể trên server. Nếu server trả về gói SYN/ACK thì
Client biết port đó mở, nếu Server gửi về gói RST/ACK thì Client biết port đó trên
Server bị đóng.
- ACK Scan: dạng Scan này nhằm mục đích tìm những Access Controll List
trên Server. Client cố gắng kết nối tới Server bằng gói ICMP nếu nhận được gói tin là
Host Unreachable thì client sẽ hiểu port đó trên server đã bị lọc.
Sau khi một Hacker biết được một hoặc nhiều địa chỉ IP của các hệ thống đang
sống (tồn tại) trên mạng, kẻ tấn công sẽ chạy phần mềm quét cổng (Nmap, Strobe) để
tìm ra những cổng quan trọng nào đang mở, những cổng nào chưa được sử dụng. Ví
dụ, kẻ tấn công có thể truy nhập và tấn công các dịch vụ DNS trên cổng 53 của một
máy chủ DNS. Cổng 23 của Telnet cũng là một mục tiêu hấp dẫn mà những kẻ tấn
công nhắm đến để giành quyền truy nhập vào một máy tính.
Một cách để ngăn chặn truy nhập thông qua một cổng mở là dừng các dịch vụ
hoặc các tiến trình hệ điều hành không sử dụng hoặc chỉ cấu hình khởi động các dịch
vụ một cách thủ công bằng chính hiểu biết của mình.
Dừng tiến trình crond (cổng 1249) bằng lệnh kill trong linux
23
Ngoài ra, có thể dùng các thiết bị chuyên dụng để phát hiện và ngăn chặn tấn
đổi các thông tin xác thực rồi truyền lại, cố gắng đóng giả người dùng (tấn công
Relay). Hình thức tấn công này được coi là rất nguy hiểm vì khi bị tấn công, việc trao
24
đổi dữ liệu giữa các máy tính vẫn diễn ra bình thường nên người dùng không hề hay
biết mình bị tấn công.
Tấn công MITM
Tấn công chuyển tiếp gói tin (Relay)
Ngày nay, cùng với sự phát triển của hệ thống mạng Internet, nhu cầu trao đổi,
giao dịch thương mại điện tử tăng lên. Nếu không có giải pháp tốt để bảo vệ thông tin
của các phiên giao dịch thì rất có thể sẽ bị các đối tượng xấu tấn công bằng hình thức
MITM và gây ra những thiệt hại hết sức to lớn. Ví dụ, Hacker có thể tấn công kiểu
Relay, bắt được các gói tin URL khi người dùng thực hiện các câu lệnh chuyển tiền
qua môi trường Web, sau đó thay đổi thông tin và đóng giả người dùng để rút trộm
tiền. Một số kiểu tấn công Man In The Middle tiêu biểu như: ARP Cache, DNS
Spoofing, Hijacking, …
ARP Cache
Như đã trình bày ở phần trước của giáo trình này, giao thức ARP tồn tại một
điểm yếu là không hề có một cơ chế nào để xác thực các thông tin trong gói tin ARP
Response. Do đó, Hacker có thể giả mạo để ăn cắp những thông tin nhạy cảm bằng
cách đứng giữa đánh lừa cả 2 máy tính đang tham gia giao dịch.
25