Một hệ thống bảo mật là một hệ thống mà thông tin được xử lý trên nó phải đảm bảo được ba đặc trưng sau mô hình CIA: 1 Tính bí mật của hệ thống; 2 Tính toàn vẹn của thông tin; 3 Tính khả
Trang 2AN TOÀN MẠNG
Ấn bản 2015
Trang 3MỤC LỤC
MỤC LỤC I HƯỚNG DẪN V
BÀI 1: TỔNG QUAN VỀ AN TOÀN MẠNG 1
1.1 GIỚI THIỆU 1
1.1.1 Khái niệm an toàn mạng 1
1.1.2 Tính bí mật 2
1.1.3 Tính toàn vẹn 2
1.1.4 Tính khả dụng 3
1.2 CÁC MÔ HÌNH BẢO MẬT 3
1.2.1 Mô hình CIA (Confidentiality-Integrity-Availability) 3
1.2.2 Mô hình PARKERIAN HEXAD 4
1.2.3 Mô hình nguy cơ STRIDE 4
1.3 CHIẾN LƯỢC AN NINH MẠNG AAA 5
1.3.1 Điều khiển truy cập 5
1.3.2 Xác thực 8
1.3.3 Kiểm tra 10
1.4 CÁC NGUY CƠ MẤT AN NINH MẠNG 10
1.4.1 Phân loại 11
1.4.2 Thách thức an ninh 11
1.5 TẤN CÔNG MẠNG 12
1.5.1 Các phương thức tấn công cơ bản 13
1.5.2 Các mục tiêu tấn công 14
1.6 NGUYÊN TẮC XÂY DỰNG MỘT HỆ THỐNG BẢO MẬT 14
1.6.1 Chính sách và cơ chế bảo mật 14
1.6.2 Các mục tiêu của bảo mật hệ thống 15
TÓM TẮT 17
CÂU HỎI ÔN TẬP 18
BÀI 2: CÁC KỸ THUẬT TẤN CÔNG THĂM DÕ 19
2.1 GIỚI THIỆU 19
2.2 TRUY VẾT-FOOTPRINTING 20
2.2.1 Khái niệm 20
2.2.2 Thu thập thông tin tên miền 20
2.2.3 Thu thập thông tin Email 23
2.2.4 Thu thập thông tin sử dụng Traceroute 24
2.3 QUÉT-SCANNING 25
2.3.1 Giới thiệu 25
2.3.2 Phân loại 25
2.3.3 Các phương pháp quét 25
Trang 42.4 LIỆT KÊ - ENUMERATION 32
2.4.1 Khái niệm 32
2.4.2 Liệt kê NetBIOS 32
2.4.3 Liệt kê SNMP 33
2.4.4 Liệt kê Unix/Linux 34
2.4.5 Liệt kê LDAP 35
2.4.6 Liệt kê NTP 36
2.4.7 Liệt kê SMTP 36
2.4.8 Liệt kê DNS 36
2.4.9 Các phương pháp phòng chống 36
TÓM TẮT 38
CÂU HỎI ÔN TẬP 38
BÀI 3: TẤN CÔNG HỆ THỐNG 39
3.1 CÁC BƯỚC TẤN CÔNG 39
3.1.1 Mật khẩu 39
3.1.2 Tăng Đặc Quyền 42
3.1.3 Thực thi ứng dụng 43
3.1.4 Giấu tập tin 44
3.1.5 Xóa dấu vết 45
3.2 CÁCH PHÒNG CHỐNG 46
3.2.1 Biện pháp đối phó với crack password 46
3.2.2 Đối phó Rootkit 46
3.3 VÍ DỤ TẤN CÔNG HỆ THỐNG 47
TÓM TẮT 50
CÂU HỎI ÔN TẬP 51
BÀI 4: KỸ THUẬT NGHE LÉN VÀ PHÂN TÍCH GÓI TIN 52
4.1 GIỚI THIỆU 52
4.1.1 Nghe lén hợp pháp 52
4.1.2 Khái niệm tấn công nghe lén 53
4.1.3 Các mối đe dọa về nghe lén 53
4.1.4 Cơ chế hoạt động chung của nghe lén 54
4.1.5 Các nguy cơ dẫn tới Sniffing 54
4.2 PHÂN LOẠI TẤN CÔNG NGHE LÉN 55
4.2.1 Nghe lén thụ động 55
4.2.2 Nghe lén chủ động 55
4.3 CÁC KỸ THUẬT NGHE LÉN CHỦ ĐỘNG 55
4.3.1 Tấn công MAC Address 55
4.3.2 Tấn công DHCP 57
4.3.3 Tấn công giả mạo ARP 59
4.3.4 Đầu độc DNS 62
4.4 CÔNG CỤ PHÂN TÍCH GÓI TIN W IRESHARK 64
Trang 5TÓM TẮT 68
CÂU HỎI ÔN TẬP 68
BÀI 5: AN NINH HẠ TẦNG MẠNG 69
5.1 GIẢI PHÁP VÀ LỘ TRÌNH XÂY DỰNG BẢO MẬT HẠ TẦNG MẠNG 69
5.2 THIẾT KẾ MÔ HÌNH MẠNG AN TOÀN 71
5.3 CHÍNH SÁCH AN TOÀN MẠNG 72
5.3.1 Quy trình tổng quan xây dựng chính sách tổng quan 72
5.3.2 Hệ thống ISMS 73
5.3.3 ISO 27000 Series 74
5.4 ROUTER AND SWITCH 77
TÓM TẮT 81
CÂU HỎI ÔN TẬP 81
BÀI 6: FIREWALL 82
6.1 TỔNG QUAN FIREWALL 82
6.1.1 Khái niệm 82
6.1.2 Chức năng của tường lửa 83
6.1.3 Nguyên lý hoạt động 84
6.1.4 Phân loại 84
6.1.5 Thiết kế Firewall trong mô hình mạng 86
6.2 MỘT SỐ FIREWALL VÀ PROXY PHỐ BIẾN 87
6.2.1 Cấu hình Firewall IPtable 87
6.2.2 Cài đặt và cấu hình SQUID làm Proxy Server 89
6.2.3 Hệ thống Asa 94
TÓM TẮT 103
CÂU HỎI ÔN TẬP 103
BÀI 7: HỆ THỐNG PHÁT HIỆN VÀ CHỐNG XÂM NHẬP 104
7.1 HỆ THỐNG PHÁT HIỆN XÂM NHẬP 104
7.1.1 Khái niệm 104
7.1.2 Kiến trúc của một hệ thống phát hiện xâm nhập 105
7.1.3 Phân loại IDS 106
7.1.4 IDS Snort 108
7.2 HỆ THỐNG NGĂN CHẶN XÂM NHẬP IPS 115
7.2.1 Giới thiệu IPS 115
7.2.2 Kiến trúc hệ thống ngăn chặn xâm nhập 115
7.2.3 Phân loại IPS 119
7.2.4 Kỹ thuật nhận biết và ngăn chặn của IPS 123
7.2.5 Ví dụ xây dựng hệ thống IPS 125
TÓM TẮT 141
CÂU HỎI ÔN TẬP 141
BÀI 8: MẬT MÃ VÀ CÁC GIAO THỨC BẢO MẬT 142
Trang 68.1 BẢO MẬT THÔNG TIN VÀ MẬT MÃ 142
8.1.1 Giới thiệu 142
8.1.2 Kiến trúc an toàn của hệ thống truyền thông mở OSI 143
8.1.3 Mô hình an toàn mạng tổng quát 145
8.1.4 Lý thuyết mật mã hỗ trợ xây dựng ứng dụng bảo mật thông tin 145
8.2 CÁC GIAO THỨC BẢO MẬT MẠNG 150
8.2.1 Tổng quan Kerberos 150
8.2.2 SSL 153
8.2.3 IPSEC 159
TÓM TẮT 168
CÂU HỎI ÔN TẬP 168
BÀI 9: MẠNG RIÊNG ẢO - VPN 169
9.1 TỔNG QUAN VPN 169
9.1.1 Định nghĩa 169
9.1.2 Các chức năng 169
9.1.3 Lợi ích của VPN 170
9.1.4 Phân loại 171
9.2 CÁC GIAO THỨC CƠ BẢN TRONG VPN 175
9.2.1 Kiến trúc tổng quát các bước xử lý của VPN 175
9.2.2 Giao Thức PPTP 176
9.2.3 Giao thức PPP 179
9.3 MINH HỌA VPN 186
TÓM TẮT 203
CÂU HỎI ÔN TẬP 203
TÀI LIỆU THAM KHẢO 204
Trang 7HƯỚNG DẪN
MÔ TẢ MÔN HỌC
Do các ứng dụng trên mạng Internet ngày các phát triển và mở rộng, nên an toàn thông tin trên mạng đã trở thành nhu cầu bắt buộc cho mọi hệ thống ứng dụng Vì vậy, An toàn mạng là môn học không thể thiếu của sinh viên ngành mạng Mục đích của môn học này là cung cấp cho sinh viên kiến thức về các vấn đề an ninh mạng hiện nay và giải pháp tổng thể trong việc triển khai mạng an toàn
NỘI DUNG MÔN HỌC
Bài 1: Bài học cung cấp kiến thức tổng quan về an ninh mạng như các khái niệm
an ninh mạng, các mô hình an ninh, chiếc lược bảo mật hệ thống AAA, các nguy cơ tấn công mạng và nguyên tắc xây dựng hệ thống bảo mật Môi trường mạng hiện nay
có rất nhiều nguy cơ ảnh hưởng đến sự an toàn của một hệ thống thông tin Các nguy
cơ này có thể xuất phát từ các hành vi tấn công trái phép bên ngoài hoặc từ bản thân các lỗ hổng bên trong hệ thống Có nhiều nguy cơ đặt ra như: Trojans, đánh cắp thông tin, Mạng ma Flux Botnet, Thất thoát giữ liệu, vi phạm an ninh, Các mối đe dọa
an ninh trong nội bộ, Tổ chức tội phạm mạng, Lừa đảo, Gián điệp mạng, Zero-Day, Vishing, Mối đe dọa từ web 2.0, … Do vậy, an ninh mạng máy tính là tổng thể các giải pháp về mặt tổ chức và kỹ thuật nhằm ngăn cản mọi nguy cơ tổn hại đến mạng Một
hệ thống bảo mật là một hệ thống mà thông tin được xử lý trên nó phải đảm bảo được ba đặc trưng sau (mô hình CIA): (1) Tính bí mật của hệ thống; (2) Tính toàn vẹn của thông tin; (3) Tính khả dụng của thông tin Chiến lược bảo mật hệ thống AAA
là chiến lược nền tảng nhất để thực thi các chính sách bảo mật trên một hệ thống theo mô hình CIA Các mục tiêu cơ bản của việc thực hiện an ninh trên một mạng cần phải đạt được là: (1) Xác định những gì cần bảo vệ; (2) Xác định bảo vệ trước cái gì; (3) Xác định các nguy cơ; (4) Thực hiện các biện pháp để bảo vệ; và (5) Kiểm tra lại các tiến trình một cách liên tiếp và thực hiện cải tiến với mỗi lần tìm ra điểm yếu Bài 2: Bài học cung cấp các khái niệm về footprinting, scanning, và enumeration, các công cụ phần mềm hỗ trợ thực hiện và các giải pháp phòng tránh Kỹ thuật
Trang 8footprinting cho phép điều tra thông tin nạn nhân như các công nghệ Internet đang được sử dụng, hệ điều hành, phần cứng, hoạt động địa chỉ IP, địa chỉ e-mail và số điện thoại, và tập đoàn chính sách và thủ tục Kỹ thuật scanning thu thập như tên máy, địa chỉ ip, cấu hình máy tính, hệ điều hành, dịch vụ đang chạy, port đang mở
Kỹ thuật enumeration là quá trình trích xuất tên người dùng, tên máy, tài nguyên mạng, các chia sẻ, và cá dịch vụ từ một hệ thống Kỹ thuật này được tiến hành trong một môi trường mạng nội bộ
Bài 3: Bài học cung cấp kiến thức tổng quan về các bước tấn công mạng của Hacker Các bước tấn công mạng gồm có: (1) Thu thập thông tin để giành quyền truy cập; (2) Tạo ra user có đặt quyền trên hệ thống hoặc nâng quyền hạn của user đã thu thập được; (3) Tạo và duy trì backdoor để truy cập; (4) Che dấu các tập tin độc hại và (5) Xóa dấu vết Để thu thập thông tin thi Hacker ta sử dụng các kỹ thuật của bài học 2 (footprinting, scanning, enumeration) Khi có thông tin về đối tượng thì Hacker sẽ tấn công mật khẩu để giành quyền truy cập hệ thống Tăng đặc quyền (Escalating Privileges) là thêm nhiều quyền hơn cho một tài khoản người dùng Hacker có tài khoản đặc quyền sẽ truy cập cấp quản trị viên để cài đặt chương trình Một khi Hacker đã có thể truy cập tài khoản với quyền quản trị, Hacker sẽ thực thi các ứng dụng trên hệ thống đích Mục đích của việc thực thi ứng dụng có thể cài đặt một cửa sau trên hệ thống, cài đặt một keylogger để thu thập thông tin bí mật, sao chép các tập tin, … Hacker cần che dấu các tập tin trên một hệ thống nhằm ngăn chặn bị phát hiện
Bài 4: Bài giảng cung cấp kiến thức cho sinh viên các khái niệm, mối đe dọa, cơ chế hoạt động chung của tấn công nghe lén Nghe lén là một tiến trình cho phép giám sát cuộc gọi và cuộc hội thoại internet bởi thành phần thứ ba Hacker để thiết bị lắng nghe giữa mạng mang thông tin như hai thiết bị điện thoại hoặc hai thiết bị đầu cuối trên internet Các kỹ thuật nghe lén gồm có hai loại: nghe lén thụ động và nghe lén chủ động Nghe lén thụ động như là thực hiện nghe lén thông qua một Hub Nghe lén chủ động được thực hiện trên Switch Các kỹ thuật nghe lén chủ động: tấn công MAC, Tấn công DHCP, Tấn công đầu độc ARP, Tấn công đầu độc DNS Các giải pháp ngăn chặn nghe lén là kích hoạt bảo mật port (ví dụ DHCP Snooping)
Trang 9Bài 5: Bài học cung cấp kiến thức về việc xây dựng một hệ thống mạng bảo mật gồm có: (1) Các giải pháp và lộ trình xây dựng bảo mật hạ tầng mạng, (2) thiết kế
mô hình mạng an toàn, (3) chính sách an toàn mạng và (4) bảo mật cho thiết bị router, switch Để có thể xây dựng một hệ thống mạng đảm bảo tính an toàn cần phải có lộ trình xây dựng hợp lý giữa yêu cầu và chi phí, để từ đó lựa chọn giải pháp phù hợp Giải pháp phù hợp nhất phải cân bằng được các yếu tố: yêu cầu, giá thành giải pháp, tính năng, hiệu năng của hệ thống Giải pháp an ninh hạ tầng mạng bao gồm 4 mảng: (1) lý thuyết về Security, (2) kỹ năng tấn công, (3) kỹ năng cấu hình phòng thủ, và (4) lập chính sách an toàn thông tin Xây dựng chính sách an toàn mạng là bước hoàn thiện một môi trường làm việc và hoạt động theo chuẩn bảo mật Hiện nay nước ta có rất nhiều đơn vị đang xây dựng chính sách bảo mật theo chuẩn ISO 27001, sử dụng mô hình ISMS Để kiểm soát dữ liệu, Routers sử dụng ACL và Switch thi thực hiện chia Lan ảo
Bài 6: Bài học này trình bày các khái niệm về tường lửa, các chức năng, nguyên lý họa động, cách triển khai tường lừa trong mô hình mạng và các loại tường lửa hiện nay trên mạng Firewall là một kỹ thuật được tích hợp vào hệ thống mạng để chống
sự truy cập trái phép, nhằm bảo vệ các nguồn thông tin nội bộ và hạn chế sự xâm nhâp không mong muốn vào hệ thống Chức năng chính của Firewall là kiểm soát luồng thông tin từ giữa Intranet và Internet Thiết kế firewall phù hợp với hệ thống mạng là rất quan trọng, dưới đây trình bày một số mô hình triển khai firewall: (1) firewall làm chức năng Packet Filter, (2) firewall áp dụng cho vùng DMZ và (3) mô hình mạng tích hợp Bài học trình bày cách sử dụng một số tường lửa phổ biển hiện nay trong việc triển khai các hệ thống mạng an toàn như IPtable, ASA và proxy Server SQUID
Bài 7: Bài học trình bày các khái niệm về hệ thống phát hiện xâm nhập, kiến trúc hoạt động, phân loại IDS Để minh họa hệ thống phát hiện xâm nhập bằng phần mềm IDS snort, cách cài đặt, thiết lập rule cảnh báo, và giám sát hoạt động của nó Hệ thống phát hiện xâm nhập gồm có các thành phần chính như: thành phần phân tích gói tin, thành phần phát hiện tấn công, và thành phần phản ứng Hệ thống phát chặn xâm nhập nhận biết tấn công và ngăn chăn thông qua các kỹ thuật như nhận biết qua dấu hiệu, nhận biết qua sự bất thường về lưu lượng, nhập biết qua chính sách thiết
Trang 10lập, nhân biết qua sự phân tích giao thức Bài giảng trình bày hệ thống IPS của Cisco hoạt động ở lớp mạng để minh họa tính năng hoạt động của hệ thống phát hiện xâm nhập
Bài 8: Bài giảng cung cấp cho sinh viên kiến thức về vấn đề bảo mật thông tin: các thách thức, kiến trúc an toàn thông tin OSI, và các thuật toán mật mã cho phép cài đặt các dịch vụ của mô hình OSI Kiến trúc an toàn OSI gồm có 5 dịch vụ bảo mật: Xác thực các bên tham gia, Điều khiển truy cập, Bảo mật dữ liệu, kiểm tra tính toàn vẹn, và chống chối bỏ Các thuật toán mã hóa cần thiết để cài đặt các dịch vụ này là: DES, 3DES, AES, RSA, DiffieHellman, Hàm băm MD5, SHA, Mã xác thực MAC Giao thức quản lý khóa và bảo mật dữ liệu trong mạng Domain: Kerberos Giao thức bảo mật dữ liệu đầu cuối SSL Giao thức bảo mật gói dữ liệu IP: IPSEC
Bài 9: Bài học trình bày tổng quan về mạng VPN bao gồm: định nghĩa, các chức năng, và lợi ích của VPN Mạng VPN có 3 loại cơ bản: mạng truy cập từ xa, mạng VPN nội bộ và mạng VPN mở rộng Hai giao thức cơ bản là giao thức tạo kết nối mạng PPTP và giao thức liên kết dữ liệu cấp cao PPP Giao thức PPP dùng để vận chuyển dữ liệu với mạng nội bộ Giao thức PPP hổ trợ giao thức con kiểm soát liên kết Link Control Protocol (LCP), giao thức con kiểm soát mạng Network Control Protocol (NCP), giao thức chứng thực như Challenge Handshake Authentication Protocol (CHAP), Passwork Authentication Protocol (PAP), Extensible Authentication Protocol (EAP) Ngoài ra, PPP còn hổ trợ giao thức mã hóa như Encryption Control Protocol (ECP), Data Encryption Standard (DES), Advancde Encryption Standard (AES); Kiểm soát băng thông: Bandwidth Allocation Control Protocol (BACP); Kiểm soát nén: Compression Control Protocol; Có đủ khả năng phát hiện lỗi (CheckSum), tuy nhiên không sữa lỗi; và giám sát chất lượng liên kết: Link Quality Report (LQR) và Link Quality Monitoring(LQM)
KIẾN THỨC TIỀN ĐỀ
Môn học an toàn mạng đòi hỏi sinh viên cần có thức về hạ tầng mạng và dịch vụ mạng
Trang 11YÊU CẦU MÔN HỌC
Người học phải dự học đầy đủ các buổi lên lớp và làm bài tập đầy đủ ở nhà
CÁCH TIẾP NHẬN NỘI DUNG MÔN HỌC
Người học cần chuẩn bị hệ thống mạng ảo gồm máy tính hệ điều hành Windows Server, Linux; các thiết bị mạng router, switch; các phần mềm triển khai an toàn mạng (ISA, ACS, …) và các công cụ quản lí / giám sát mạng (Wireshark, SecureCRT, Solarwinds, SDM, Angry IP Scanner, Zenmap…) Từ đó, người học sử dụng để triển khai minh họa tất cả các kỹ thuật liên quan đến từng bài học
PHƯƠNG PHÁP ĐÁNH GIÁ MÔN HỌC
Môn học được đánh giá gồm:
Điểm quá trình (30%) Điểm học thực hành trên phòng máy Hình thức và nội dung được đề cập trong giáo trình thực hành An toàn mạng
Điểm thi (70%): Người học sẽ được phân công đồ án dưới sự hướng dẫn của Giảng viên phụ trách môn học và vấn đáp nội dung của đồ án kết hợp với nội dung lý thuyết trong các bài học
Trang 13BÀI 1: TỔNG QUAN VỀ AN
TOÀN MẠNG
Bài giảng cung cấp các kiến thức tổng quan về an ninh mạng máy tính, trong đó tập trung vào các nội dung sau:
- Giới thiệu an toàn mạng máy tính
- Chiến lược bảo mật hệ thống AAA
- Các nguy cơ mất an ninh mạng
- Nguyên tắc xây dựng một hệ thống bảo mật
1.1 GIỚI THIỆU
1.1.1 Khái niệm an toàn mạng
An toàn mạng máy tính là tổng thể các giải pháp về mặt tổ chức và kỹ thuật nhằm ngăn cản mọi nguy cơ tổn hại đến mạng Các tổn hại có thể xảy ra do:
Trang 141.1.2 Tính bí mật
Tính bí mật của thông tin là tính giới hạn về các đối tượng được quyền truy xuất đến thông tin Đối tượng truy xuất có thể là con người, là máy tính hoặc phần mềm Tùy theo tính chất của thông tin mà mức độ bí mật của chúng có thể khác nhau Các
kỹ thuật dùng đảm bảo tính bí mật của thông tin:
- Các cơ chế và phương tiện vật lý như nơi lưu trữ, thiết bị lưu trữ, dịch vụ bảo vệ,
- Kỹ thuật mật mã là công cụ bảo mật thông tin hữu hiệu nhất trong môi trường máy tính
- Kỹ thuật quản lý truy xuất được thiết lập để đảm bảo chỉ có những đối tượng được cho phép mới có thể truy xuất thông tin
Tính bí mật của thông tin phải được xem xét dưới hai yếu tố tách rời: (1) Bí mật về nội dung của thông tin; (2) Bí mật về sự tồn tại của thông tin
1.1.3 Tính toàn vẹn
Tính toàn vẹn đảm bảo sự tồn tại nguyên vẹn của thông tin, loại trừ mọi sự thay đổi có chủ đích hoặc do hư hỏng, mất mát thông tin vì sự cố thiết bị hoặc phần mềm Tính toàn vẹn được xét trên hai khía cạnh:
- Tính nguyên vẹn của nội dung thông tin: thông tin không bị thay đổi một cách không hợp lệ trong quá trình trao đổi thông tin
- Tính xác thực nguồn gốc của thông tin: nguồn phát thông tin phải được xác thực, không giả danh
Các cơ chế đảm bảo sự tồn tại nguyên vẹn của thông tin được chia thành hai loại gồm cơ chế phát hiện và cơ chế ngăn chặn Cơ chế phát hiện chỉ thực hiện chức năng giám sát và thông báo khi có các thay đổi diễn ra trên thông tin bằng cách phân tích các sự kiện diễn ra trên hệ thống mà không thực hiện chức năng ngăn chặn các hành
vi truy xuất trái phép đến thông tin Cơ chế ngăn chặn có chức năng ngăn cản các hành vi trái phép làm thay đổi nội dung và nguồn gốc của thông tin Các hành vi này bao gồm 2 nhóm: (1) Hành vi cố gắng thay đổi thông tin khi không được phép truy
Trang 15xuất đến thông tin; (2) Hành vi thay đổi thông tin theo cách khác với cách đã được cho phép
1.1.4 Tính khả dụng
Tính khả dụng của thông tin là tính sẵn sàng của thông tin cho các nhu cầu truy cập hợp lệ của người dùng được cấp quyền Nếu một hệ thống không khả dụng thì hai đặc trưng còn lại sẽ vô nghĩa
Trang 161.2.2 Mô hình PARKERIAN HEXAD
Donn B Parker (1998) bổ sung thêm ba đặc
trưng vào mô hình CIA
- Tính bảo mật mở rộng thêm tính sở hữu, chủ
quyền trên thông tin có thể bị mất dù không vi
phạm CIA
- Tính toàn vẹn mở rộng thêm tính xác thực: ngoài
việc xác thực về nội dung thông tin cần xác thực
về nguồn gốc thông tin
- Tính khả dụng mở rộng thêm tính hữu dụng:
thông tin phải dễ dùng, tránh chuyển thành dạng
phức tạp hơn, tránh tình trạng không dùng được
1.2.3 Mô hình nguy cơ STRIDE
Mô hình nguy cơ STRIDE do Microsoft giới thiệu Mô hình này chỉ ra 6 loại nguy cơ tấn công hệ thống mạng Các thành phần của mô hình này đối lập với các thành phần của mô hình CIA/Parkerian Hexad:
- Spoofing (giả mạo) mục đích là đối lập với Authentication
- Tampering (xáo trộn) đối lập với Integrity
- Repudiation (phủ nhận) đối lập một phần với Authenticity
- Information Disclosure (bộ lọc thông tin) đối lập với Confidentiality
- Denial of Service (D.o.S) đối lập với Availability
- Elevation of privilege mục đích là đối lập với Authorization
Khi xây dựng hệ thống mạng an toàn cần chỉ ra các loại nguy cơ mà hệ thống cần phòng trành và ngăn chặn
Hình 1.2: Mô hình Parkerian
Hexad
Trang 171.3 CHIẾN LƢỢC AN NINH MẠNG AAA
AAA (Access control, Authentication, Auditing) được xem là bước tiếp cận và là chiến lược nền tảng nhất để thực thi các chính sách bảo mật trên một hệ thống bảo mật theo mô hình CIA
1.3.1 Điều khiển truy cập
Điều khiển truy cập: bao gồm các luật điều khiển phương thức và điều kiện để truy cập đến hệ thống Điều khiển truy cập được thực hiện tại nhiều vị trí khác nhau của
hệ thống, chẳng hạn như tại thiết bị truy nhập mạng, tại hệ thống tập tin của hệ điều hành, trên hệ thống Active Directory Service, … Điều khiển truy cập được thực hiện theo ba mô hình sau:
Mô hình điều khiển truy cập bắt buộc (MAC-Mandatory Access Control): người quản trị điều khiển truy cập bằng cách dùng một tập luật chỉ định (chính sách bảo mật), áp dụng bắt buộc đối với tất cả các đối tượng trong hệ thống, người dùng không thể thay đổi được Khi dùng MAC, hệ thống chỉ định một nhãn truy cập cho mỗi người dùng, tiến trình hay tài nguyên hệ thống, dùng xác định các mức truy cập theo các tập luật sau:
- Một người dùng chỉ được phép chạy các tiến trình gán nhãn cùng cấp hoặc thấp hơn nhãn của người dùng
- Một tiến trình chỉ được phép đọc từ các tài nguyên gán nhãn cùng cấp hoặc thấp hơn nhãn của tiến trình
- Một tiến trình chỉ được phép ghi vào các tài nguyên gán nhãn cùng cấp hoặc cao hơn nhãn của tiến trình
Một số hệ thống hỗ trợ MAC: AIX 4.3.2, Trusted Solaris 8, SELinux,… Đặc điểm của
mô hình này là được thiết lập cố định ở mức hệ thống, người sử dụng không thay đổi
tự do được Người dùng và tài nguyên trong hệ thống được chia thành nhiều mức bảo mật khác nhau, phản ánh độ quan trọng của tài nguyên và người dùng Mô hình hoạt động dựa trên cơ sở gán nhãn Khi mô hình điều khiển bắt buộc đã được thiết lập, nó được áp dụng với tất cả người dùng và tài nguyên trên hệ thống
Mô hình điều khiển truy cập tự do (DAC-Discretionary Access Control): mô hình điều khiển truy cập trong đó việc xác lập quyền truy cập đối với từng tài nguyên cụ
Trang 18thể do người sở hữu tài nguyên đó quyết định DAC được cài đặt thông qua việc dùng ACL (Access Control List), là một cấu trúc dữ liệu chứa các chuỗi ACE (Access Control Entry), một ACE chứa nhận dạng (SID-Security Indentity) của người dùng và danh sách các tác vụ mà người dùng có thể thực thi trên tài nguyên đã được bảo mật Một tài nguyên được bảo mật có một Security Descriptor, trong đó mô tả chủ của tài nguyên Chuỗi điều khiển truy cập dùng DAC như sau:
Hình 1.3: Bảng điều khiển truy cập của NTFS
- Mỗi người dùng sau khi đăng nhập sẽ được gán một Access Token (thẻ truy cập) chứa nhận dạng và nhóm bảo mật của người dùng
- Mỗi tiến trình do người dùng chạy đều liên kết với một bản sao Access Token của người dùng
- Khi tiến trình thử truy cập một tài nguyên được bảo mật, tiến trình lấy thẻ dùng tài nguyên và chỉ định tập quyền truy cập cần thiết trên tài nguyên
- Hệ thống sẽ truy cập Security Descriptor của tài nguyên và tìm trong các DACL một ACE có SID trùng SID của Access Token liên kết tiến trình Từ đó xác định quyền truy cập của người dùng lên object
Trang 19Đây là mô hình được sử dụng phổ biến hiện nay, xuất hiện trong hầu hết các hệ điều hành (Windows, Linux, Unix,…) để điều khiển truy cập đến hệ thống tập tin và các loại tài nguyên khác Đặc điểm của mô hình này là không được áp dụng mặc định trên hệ thống Người sở hữu tài nguyên thường là người tạo ra tài nguyên đó hoặc người được gán quyền sở hữu Người sở hữu có toàn quyền điều khiển việc truy cập đến tài nguyên Quyền truy cập trên một tài nguyên có thể được chuyển từ đối tượng này sang đối tượng khác
Hình 1.4: Thiết lập quyền người dùng trên hệ thống Microsoft (gpedit.msc)
Mô hình điều khiển truy cập theo vai trò (RBAC-Role-Based Access Control): tích hợp phức hợp giữa MAC và DAC, tập trung quản lý nhóm thay vì quản lý người dùng Người quản trị gom các người dùng thành nhóm và gán quyền MAC trên cơ sở vai trò của người dùng trong hệ thống DAC được dùng bởi người dùng trong mỗi nhóm để quản lý các quyền mịn hơn RBAC tập trung vào khái niệm gán vai trò Mô hình này được dùng trên hệ Solaris của Sun Microsystems Đặc điểm của mô hình này là :
- Quyền truy cập được cấp dựa trên vai trò của người dùng trong hệ thống
Trang 20- Linh động hơn MAC, người quản trị bảo mật có thể cấu hình lại quyền truy cập cho từng nhóm chức năng hoặc thay đổi thành viên giữa các nhóm
- Đơn giản hơn DAC, không cần phải gán quyền truy cập trực tiếp đến từng người dùng
1.3.2 Xác thực
Xác thực là một thủ tục có chức năng nhận dạng của một đối tượng trước khi trao quyền truy cập cho đối tượng này trên một tài nguyên nào đó Xác thực được thực hiện dựa trên đặc điểm nhận dạng:
- Điều mà đối tượng biết (ví dụ: mật khẩu, mã PIN) Nếu một đối tượng có smartcard truy cập một tài khoản, đối tượng đó là chủ sở hữu của tài khoản Mật khẩu có thể bị mất nên ghi ra giấy, cho người khác biết hoặc dễ đoán
- Cái mà đối tượng có (ví dụ: key, smard, token) Nếu một đối tượng có smartcard truy cấp một tài khoản, đối tượng đó là chủ sở hữu của tài khoản Smartcard có thể bị đánh cắp, bị sao chép
- Đặc trưng của đối tượng: các đặc điểm nhận dạng sinh trắc học (ví dụ như vân tay, mặt người,…)
Nhiều kỹ thuật được sử dụng phối hợp nhau để tăng độ tin cậy của cơ chế xác thực Có hai kiểu xác thực: xác thực một chiều và xác thực hai chiều Xác thực một chiều là chỉ cung cấp cơ chế để một đối tượng kiểm tra nhận dạng của đối tượng kia
mà không cung cấp cơ chế kiểm tra ngược lại Xác thực hai chiều cho phép hai đối tượng tham gia xác thực lẫn nhau, do đó tính chính xác của quá trình xác thực được đảm bảo Ví dụ giao thức bảo mật SSL cung cấp cơ chế xác thực hai chiều dùng chứng chỉ số Một số phương thức xác thực:
PAP – Password Authentication Protocol, so sánh credentials (username/ password, Smart Card, PIN - Personal Identification Number) do người dùng cung cấp với credentials đã được lưu trong hệ thống Phương pháp này không thật bảo mật do credentials người dùng thường chuyển qua mạng dưới dạng không mã hóa
Trang 21Hình 1.5: Cơ chế xác thực CHAP [11]
Hình 1.6: Cơ chế xác thực Kerberos (nguồn Internet)
CHAP – Challenge Handshake Authentication Protocol, khi người dùng yêu cầu đăng nhập hệ thống, server xác thực gởi một trị ngẫu nhiên cho người dùng Người dùng tạo trị băm mã hóa một chiều từ mật khẩu và trị ngẫu nhiên chuyển cho server cùng với nhận diện của người dùng Server tạo trị băm đối chứng từ mật khẩu người dùng và trị ngẫu nhiên Nếu so trùng trị băm do người dùng gởi và trị băm đối chứng, quá trình xác thực sẽ thành công
Kerberos dùng một server trung tâm (KDC – Key Distribution Center) để xác thực hai chiều với người dùng, rồi phân phối các thẻ dịch vụ cho người dùng, cho phép họ truy cập tài nguyên
Trang 22Xác thực dựa vào chứng chỉ số (Certificate): là phương thức xác thực rộng rãi trên Internet Phương thức này cung cấp khóa công khai dựa vào chứng chỉ số Bên gửi sử dụng khóa công khai để mã hóa dữ liệu Chỉ có bên nhận có khóa riêng để giải mã dữ liệu
1.3.3 Kiểm tra
Kiểm tra là cơ chế xem xét lại hoạt động của hệ thống, ghi nhận các hành vi diễn
ra trên hệ thống và liên kết các hành vi này với các tác nhân gây ra hành vi Mục tiêu của kiểm tra là cung cấp các thông tin cần thiết cho việc phục hồi hệ thống khi có sự
cố, đánh giá mức độ an toàn của hệ thống để kế hoạch nâng cấp kịp thời và cung cấp các thông tin làm chứng cứ cho việc phát hiện các hành vi truy xuất trái phép trên hệ thống Có hai cách kiểm tra Kiểm tra trước là thường xuyên theo dõi các ghi nhận để phát hiện dấu hiệu xâm nhập hoặc hành vi bất thường Kiểm tra sau là hành vi giám định thực hiện sau khi hệ thống đã bị tổn thương
Các thành phần của hệ thống kiểm tra gồm có:
- Logger: ghi lại thông tin giám sát trên hệ thống trong các tập tin đặc biệt
- Analyzer: cho phép hiển thị và phân tích kết quả kiểm tra, tức các audit log
- Notifier: cảnh báo về tính an toàn của hệ thống dựa trên kết quả phân tích
Việc kiểm tra hệ thống có thể thực hiện thường xuyên hoặc định kỳ, thủ công hoặc
tự động Kiểm tra hệ thống là thực hiện các chức năng:
- Kiểm tra việc tuân thủ chính sách an toàn về mật khẩu
- Đánh giá khả năng xâm nhập hệ thống từ bên ngoài
- Kiểm tra phản ứng của hệ thống đối với các dấu hiệu có thể dẫn đến tấn công hoặc
sự cố hệ thống
1.4 CÁC NGUY CƠ MẤT AN NINH MẠNG
Hiên nay, có rất nhiều nguy cơ ảnh hưởng đến sự an toàn của một hệ thống thông tin Các nguy cơ này có thể xuất phát từ các hành vi tấn công trái phép bên ngoài hoặc từ bản thân các lỗ hổng bên trong hệ thống
Trang 231.4.1 Phân loại
Tất cả các hệ thống đều mang trong mình lỗ hổng hay điểm yếu Nhìn một cách khái quát, ta có thể phân ra thành các loại điểm yếu chính sau:
Phần mềm: Việc lập trình phần mềm đã ẩn chứa sẵn các lỗ hổng Theo ước tính cứ
1000 dòng mã sẽ có trung bình từ 5-15 lỗi, trong khi các hệ điều hành được xây dựng
từ hàng triệu dòng mã
Phần cứng: Lỗi thiết bị phần cứng như Firewall, Router,
Chính sách: Đề ra các quy định không phù hợp, không đảm bảo an ninh, ví dụ như chính sách về xác thực, qui định về nghĩa vụ và trách nhiệm người dùng trong hệ thống
Sử dụng: Cho dù hệ thống được trang bị hiện đại đến đâu chăng nữa nhưng do con người sử dụng và quản lý nên sự sai sót và bất cẩn của người dùng có thể gây ra những lỗ hổng nghiêm trọng
1.4.2 Thách thức an ninh
Các thách thức cần quan tâm:
- Tội phạm mạng ngày càng gia tăng theo chiều hướng tinh vi hơn
- Rò rỉ dữ liệu, thất thoát trong nội bộ và nhân viên làm việc xa
- An ninh di động, xác thực và các phương tiện truyền thông xã hội
- Nguồn nhân lực an ninh mạng
- Khai thác các lỗ hổng, vận hành hệ thống an ninh
- Bảo vệ các cơ sở hạ tầng quan trọng
- Cân bằng giữa việc công và tư
- Tiếp cận với việc nhận dạng các chiến thuật và chu trình
Danh sách các nguy cơ an ninh:
- Trojans, đánh cắp thông tin
- Mạng ma Flux Botnet
- Thất thoát giữ liệu, vi phạm an ninh
Trang 24- Các mối đe dọa an ninh trong nội bộ
- Mối đe dọa từ web 2.0
- Các loại virus mới
- Tống tiền trên mạng
- Di chuyển dữ liệu (usb, máy tính xách tay, băng sao lưu, )
- Lỗ hổng trong công nghệ mới
- Dự án gia công phần mềm
- Mạng xã hội
- Công nghệ ảo hóa và điện toán đám mây
1.5 TẤN CÔNG MẠNG
Tấn công mạng gồm các giai đoạn như sau:
Trinh sát: Trinh sát đề cập đến giai đoạn chuẩn bị để một Hacker tìm kiếm để thu thập thông tin về một mục tiêu trước khi tung ra một cuộc tấn công Mục đích chính
là tìm hiểu một lượng lớn thông tin của mục tiêu để việc tấn công trong tương lai trở nên dễ dàng hơn Phạm vi mục tiêu của trinh sát có thể bao gồm các khách hàng, nhân viên, hoạt động, mạng, và hệ thống, Các loại trinh sát gồm có: (1) Trinh sát thụ động là trinh sát mà không cần trực tiếp tương tác với mục tiêu, ví dụ như tìm kiếm hồ sơ công khai hoặc các bản tin đã phát hành (2) Trinh sát chủ động là trinh sát cần phải trực tiếp tương tác với mục tiêu qua nhiều phương tiện, ví dụ như các cuộc gọi để lấy thông tin kỹ thuật cá nhân
Trang 25Quét: Trước khi tấn công, trên cơ sở các thông tin thu thập được qua quá trình trinh sát, Hacker quét mạng lưới thông tin của mục tiêu Quét có thể bao gồm việc sử dụng các trình quay số, máy quét cổng, lập bản đồ mạng, quét bao quát, quét lỗ hổng, Hacker khai thác các thông tin như tên máy tinh, địa chỉ IP, và tài khoản người dùng để bắt đầu tấn công
Truy cập: Truy cập dùng để chỉ việc Hacker có được quyền truy cập vào hệ thống điều hành hoặc ứng dụng mạng Hacker có thể truy cập ở cấp hệ điều hành, cấp ứng dụng hoặc cấp mạng Hacker có thể nâng cấp quyền để có thể truy cập toàn bộ hệ thống Hacker đoạt được quyền kiểm soát hệ thống rồi mới khai thác thông tin Ví dụ như bẻ mật khẩu, tràn bộ đệm, từ chối dịch vụ, đánh cắp tài khoản,
Duy trì truy cập: Duy trì truy cập nói đến việc Hacker cố gắng giữ lại quyền sở hữu
hệ thống Hacker sử dụng các hệ thống đã chiếm được để bắt đầu các cuộc tấn công tiếp theo Hacker có thể giữ quyền sở hữu hệ thống của mình khỏi những Hacker khác bằng backdoors, rootkits, hoặc trojan Kẻ tấn có thể thực hiện tất cả các thao tác với
dữ liệu của hệ thống đang sở hữu
Xóa dấu vết: Hacker tiến hành xóa các bản ghi trên máy chủ, hệ thống và các ứng dụng để tránh bị nghi ngờ … Mục đích là để che giấu hành vi tấn công của Hacker Sau đó, Hacker tiếp tục truy cập vào hệ thống của nạn nhân (vì không bị chú ý và phát hiện) để xóa bằng chứng liên quan đến bản thân
1.5.1 Các phương thức tấn công cơ bản
Brute Force: Là phương thức tấn công mà Hacker sử dụng những password đơn giản để thử lần lượt nhằm đoán ra mật khẩu của người dùng Phương thức này chỉ áp dụng đối với những mật khẩu đơn giản
Dictionary: Là phương thức tấn công tương tự Brute force nhưng thay vì thử lần lượt mật khẩu, Hacker sử dụng bộ từ điển chứa mật khẩu cần thử
Spoofing: Là dạng tấn công mà một cá nhân, một hệ thống thực hiện hành vi giả mạo Ví dụ như một người giả mạo địa chỉ email gửi đi mà không cần phải xác thực DoS: Là dạng tấn công mà một người hay một hệ thống làm cho một hệ thống khác không thể truy cập hoặc bị chậm đi đáng kể bằng cách sử dụng hết các tài nguyên Man-in-the-middle: Hacker bằng một cách nào đó đứng giữa giao tiếp của hai máy tính
Trang 26Replay: Ví dụ như khi một quá trình xác thực được thực hiện thành công và bị kẻ tấn công capture được quá trình đó Khi cần đăng nhập vào hệ thống, kẻ tấn công phát lại luồng traffic đó để thực hiện xác thực
Sesion Hijacking: Khi người dùng thực hiện thành công quá trình xác thực, Hacker thực hiện tấn công cướp phiên giao tiếp
1.5.2 Các mục tiêu tấn công
1.5.2.1 Tấn công hệ điều hành
Các loại tấn công vào hệ điều hành như: Nghe trộm; Giả mạo và ngắt kết nối; Tấn công bằng gói SYN; Tấn công truyền lại; Tấn công sửa đổi dữ liệu; Tấn công DoS, DDoS; Tấn công đoán mật khẩu; Tấn công ở giữa; Tấn công cửa sau; Tấn công thỏa hiệp; Tấn công lớp ứng dụng; Tấn công vào hệ điều hành Hacker tìm kiếm các lỗ hổng của hệ điều hành và khai thác chúng để truy cập vào hệ thống mạng Một số lỗ hổng như Lỗ hổng tràn bộ đệm; Lỗi trong hệ điều hành; Hệ điều hành chưa vá lỗi
1.5.2.2 Tấn công lớp ứng dụng
Phần mềm ứng dụng đi kèm với nhiều chức năng nên dễ phát sinh lỗi Phát hành gấp rút nên thiếu thời gian thử nghiệm Các loại tấn công lớp ứng dụng như: Tràn bộ đệm; Hoạt động quá sức; Tấn công XSS, Tấn công từ chối dịch vụ SYN, Tấn công SQL injection; Mã độc hại; Lừa đảo; Chiếm quyền điều khiển; Tấn công trung gian; Tấn công giả mạo tham số; Tấn công cây thư mục; Tấn công vào cấu hình sai
Khi một hệ thống bị lỗi cấu hình, như sự thay đổi trong quyền truy cập vào tập tin, thì nó đã trở nên không an toàn Các quản trị viên cần thiết lập các tham số cấu hình thiết bị trước khi triển khai trong mạng Nếu không có những thiết lập mặc định này thiết bị sẽ dễ dàng bị tấn công Để tối ưu hóa cấu hình, người quản trị cần thực hiện việc gỡ bỏ bất kỳ dịch vụ hoặc phần mềm không cần thiết
1.6 NGUYÊN TẮC XÂY DỰNG MỘT HỆ THỐNG BẢO MẬT 1.6.1 Chính sách và cơ chế bảo mật
Chính sách bảo mật: hệ thống các quy định nhằm đảm bảo sự an toàn của hệ thống thông tin
Trang 27Cơ chế bảo mật: hệ thống các phương pháp, công cụ, thủ tục,… dùng để thực thi các quy định của chính sách bảo mật Cơ chế bảo mật thường là: Các biện pháp kỹ thuật như tường lửa, xác thực người dùng, cơ chế phân quyền sử dụng tập tin và thư mục, kỹ thuật mã hóa để che giấu thông tin, hoặc các thủ tục: quy trình bảo mật
mà khi thực hiện nó thì chính sách bảo mật được an toàn
Với một chính sách bảo mật cho trước, cơ chế bảo mật phải đáp ứng được ba yêu cầu sau:
- Ngăn chặn các nguy cơ gây ra vi phạm chính sách bảo mật
- Phát hiện các hành vi vi phạm chính sách bảo mật
- Khắc phục hậu quả của rủi ro khi có vi phạm xảy ra
Thông thường, việc xây dựng một hệ thống bảo mật dựa trên hai giả thiết sau:
- Chính sách bảo mật phân chia một cách rõ ràng các trạng thái của hệ thống thành hai nhóm: an toàn và không an toàn Nếu chính sách không liệt kê được các trạng thái không an toàn của hệ thống thì chính sách không mô tả được một hệ thống bảo mật thật sự
- Cơ chế bảo mật có khả năng ngăn chặn hệ thống tiến vào trạng thái không an toàn Từng cơ chế riêng lẻ được thiết kế để bảo vệ một hoặc một số các quy định trong chính sách Tập hợp tất cả các cơ chế triển khai trên hệ thống phải đảm bảo thực thi tất cả các quy định trong chính sách
1.6.2 Các mục tiêu của bảo mật hệ thống
Một hệ thống bảo mật phải thỏa mãn ba yêu cầu cơ bản của mô hình CIA Người quản trị hệ thống cần định nghĩa các trạng thái an toàn của hệ thống thông qua chính sách bảo mật, sau đó thiết lập cơ chế bảo mật để bảo vệ chính sách đó
Một hệ thống lý tưởng là hệ thống có chính sách bảo mật xác định một cách chính xác và đầy đủ các trạng thái an toàn của hệ thống và có cơ chế thực thi đầy đủ và hiệu quả các quy định trong chính sách
Thực tế khó xây dựng được hệ thống như vậy do hạn chế về kỹ thuật, yếu tố con người, chi phí thiết lập cơ chế cao hơn lợi ích mà hệ thống an toàn mạng lại Do vậy,
Trang 28khi xây dựng một hệ thống bảo mật, mục tiêu đặt ra cho việc thiết kế cơ chế bảo mật được áp dụng phải bao gồm ba phần sau:
Ngăn chặn: mục tiêu thiết kế là ngăn chặn các hành vi đối với chính sách bảo mật
Có nhiều sự kiện, hành vi dẫn đến vi phạm chính sách bảo mật Các hành vi phạm đơn giản như: để lộ mật khẩu, quên thoát khỏi hệ thống khi rời khỏi máy tính,…đến các hành vi vi phạm phức tạp và có chủ đích như tấn công hệ thống bên ngoài
Phát hiện: mục tiêu thiết kế tập trung vào các sự kiện vi phạm chính sách bảo mật
đã xảy ra trên hệ thống Cơ chế này chủ yếu dựa vào việc theo dõi và phân tích các thông tin trong nhật ký hệ thống và dữ liệu đang lưu thông trên mạng để tìm ra các dấu hiệu của các vi phạm, các dấu hiệu này phải được nhận dạng trước và được mô tả trong cơ sở dữ liệu của hệ thống
Phục hồi: mục tiêu thiết kế bao gồm các cơ chế nhằm chặn đứng các vi phạm đang diễn ra hoặc khắc phục hậu quả của vi phạm một cách nhanh chóng với mức độ thiệt hại thấp nhất Một phần quan trọng trong cơ chế phục hồi là việc nhận diện những sơ
hở của hệ thống và điều chỉnh các sơ hở đó, các sơ hở này có thể do chính sách bảo mật chưa chặt chẽ hoặc cơ chế bảo mật có lỗi kỹ thuật, kém hiệu quả
Trang 29TÓM TẮT
Bài học cung cấp kiến thức tổng quan về an ninh mạng như các khái niệm an ninh mạng, các mô hình an ninh, chiếc lược bảo mật hệ thống AAA, các nguy cơ tấn công mạng và nguyên tắc xây dựng hệ thống bảo mật
Môi trường mạng hiên nay có rất nhiều nguy cơ ảnh hưởng đến sự an toàn của một
hệ thống thông tin Các nguy cơ này có thể xuất phát từ các hành vi tấn công trái phép bên ngoài hoặc từ bản thân các lỗ hổng bên trong hệ thống Các nguy cơ tấn công có nguồn gốc từ phần mềm, phần cứng và chính sách sử dụng Có nhiều nguy
cơ đặt ra như: Trojans, đánh cắp thông tin, mạng ma Flux Botnet, Thất thoát giữ liệu,
vi phạm an ninh, các mối đe dọa an ninh trong nội bộ, tổ chức tội phạm mạng, lừa đảo, gián điệp mạng, zero-Day, vishing, mối đe dọa từ web 2.0, … Do vậy, an ninh mạng máy tính là tổng thể các giải pháp về mặt tổ chức và kỹ thuật nhằm ngăn cản mọi nguy cơ tổn hại đến mạng Một hệ thống bảo mật là một hệ thống mà thông tin được xử lý trên nó phải đảm bảo được ba đặc trưng sau (mô hình CIA): (1) Tính bí mật của hệ thống; (2) Tính toàn vẹn của thông tin; (3) Tính khả dụng của thông tin Chiến lược bảo mật hệ thống AAA là chiến lược nền tảng nhất để thực thi các chính sách bảo mật trên một hệ thống theo mô hình CIA Người quản trị hệ thống cần định nghĩa các trạng thái an toàn của hệ thống thông qua chính sách bảo mật và cơ chế bảo mật Các mục tiêu cơ bản của việc thực hiện an ninh trên một mạng cần phải đạt được là: (1) Xác định những gì cần bảo vệ; (2) Xác định bảo vệ trước cái gì; (3) Xác định các nguy cơ; (4) Thực hiện các biện pháp để bảo vệ; và (5) Kiểm tra lại các tiến trình một cách liên tiếp và thực hiện cải tiến với mỗi lần tìm ra điểm yếu
Trang 30CÂU HỎI ÔN TẬP
Câu 1: Trình bày các khái niệm và thuật ngữ an ninh mạng ? Câu 2: Trình bày chiến lược an ninh mạng AAA? Minh họa? Câu 3: Trình bày các nguy cơ trong an ninh mạng máy tính ? Câu 4: Trình bày các chính sách và cơ chế bảo mật ?
Câu 5: Trình bày quy trình tấn công mạng?
Câu 6: Trình bày các kỹ thuật tấn công mạng cơ bản?
Câu 7: Trình bày các đối tượng tấn công mạng là gì?
Trang 31BÀI 2: CÁC KỸ THUẬT TẤN CÔNG
THĂM DÕ
Sau khi học xong bài này, sinh viên có thể biết và hiểu được các kỹ thuật điều tra thông tin mà Hacker thực hiện khi chuẩn bị tấn vào hệ thống mạng của nạn nhân:
- Kỹ thuật footprinting: thu thập thông tin máy chủ dựa vào tên miền;
- Kỹ thuật Scanning: quét các cổng đang hoạt động của máy chủ;
- Kỹ thuật Enumeration: lấy thông tin máy chủ dựa vào các giao thức mạng như:
Yêu cầu trên cũng áp dụng cho một Hacker trên mạng Chúng phải ra sức thu thập càng nhiều thông tin càng tốt về mọi góc cạnh bảo mật của tổ chức Kết quả thu được
sẽ giúp cuộc tấn công trót lọt hơn Bằng cách dò theo dấu chân, những bộ lưu trữ trên internet, truy cập từ xa, cùng với sự hiện diện của internet, Hacker có thể góp nhặt một cách có hệ thống các thông tin từ nhiều nguồn khác nhau về một tổ chức nào đó
Trang 322.2 TRUY VẾT-FOOTPRINTING
2.2.1 Khái niệm
Footprinting được định nghĩa là quá trình điều tra, thu thập thông tin của một tổ chức nhằm tạo ra bản đồ thông tin về hệ thống mạng của một tổ chức nào đó Quá trình Footprinting được thực hiện trong 2 bước đầu của việc khám phá thông tin và định vị phạm vi mạng (hình 2-1) Footprinting thực hiện xác định mục tiêu hệ thống, ứng dụng, hoặc vị trí vật lý của mục tiêu Các thông tin khác thu được có thể bao gồm việc xác định các công nghệ Internet đang được sử dụng, hệ điều hành, phần cứng, hoạt động địa chỉ IP, địa chỉ e-mail và số điện thoại, và tập đoàn chính sách và thủ tục
Hình 2.1: Bảy bước thực hiện tổng hợp thông tin
2.2.2 Thu thập thông tin tên miền
Một số nguồn thông thường được sử dụng để thu thập thông tin bao gồm sau đây: Domain name lookup, Whois, Nslookup, Sam Spade
Sam Spade (http://www.samspade.org) là một website có chứa một bộ sưu tập về những công cụ như Whois, nslookup, và traceroute Bởi vì chúng được xác định vị trí trên 1 website, những công cụ làm việc cho vài hệ điều hành này và là đơn vị để cung cấp thông tin về 1 mục tiêu tổ chức
Trang 33Nslookup là công cụ truy vấn những DNS server để tìm thông tin Nó được cài đặt trong Unix, Linux, và hệ đều hành Window Công cụ hack Sam Spade bao gồm những công cụ nslookup
DNSwatch là một công cụ lấy thông tin DNS, địa chỉ website http://www.dnswatch.info
Hình 2.2: công cụ nslookup
Hình 2.3: Công cụ DNSWatch
ARIN Lookups: ARIN là một cơ sở dữ liệu của thông tin bao gồm những thông tin như chủ sở hữu của địa chỉ IP tĩnh Cơ sở dữ liệu ARIN có thể được truy vấn việc sử dụng công cụ Whois, ví dụ tại http://centralops.net/
Trang 34Hình 2.4: ARIN cung cấp thông tin DNS của Hutech
Các loại bảng ghi DNS thường gặp được sử dụng để xác định rõ chức năng máy chủ
- A (address): Ánh xạ hostname thành địa chỉ IP
- SOA (Start of Authoriy): Xác định bảng ghi thông tin của DNS Server
- CNAME (canonical name): Cung cấp những tên biệt danh (alias) cho tên miền đang
có
- MX (mail exchange): Xác định mail server cho domain
- PSRV (service): Xác định những dịch vụ như những directory service
- PTR (pointer): Ánh xạ địa chỉ ip thành hostname
- NS (name server): Xác định Name Server khác cho domain
Trang 352.2.3 Thu thập thông tin Email
Hình 2.5: Công cụ tìm địa chỉ email của một tổ chức: 1 st email address spider
Phần mềm ―1 st email address spider‖ được sử dụng để tìm kiếm thông tin email
Hacker thường sử dụng phần mềm này để lọc ra email của các cá nhân liên quan Emailtracking là chương trình cho phép người gửi biết được những việc đã làm của người nhận như reads, forwards, modifies, hay deletes Hầu hết các chương trình E-mailtracking hoạt động tại server của tên miền email Một file đồ họa đơn bit được sử dụng để đính kèm vào email gửi cho người nhận, nhưng file này sẽ không được đọc Khi một hành động tác động vảo email, file đính kèm đó sẽ gửi thông tin lại cho server cho biết hành động của server Bạn thường thấy những file này đính kèm vào email với cái tên quen thuộc như noname, noread
Trang 36Emailtracking pro và mailtracking.com là những công cụ giúp Hacker thực hiện chức năng theo dõi email Khi sử dụng công cụ, tất cả những hoạt động như gửi mail, trả lời, chuyển tiếp, sửa mail đều được gửi đến người quản lý Người gửi sẽ nhận được những thông báo này một cách tự động
2.2.4 Thu thập thông tin sử dụng Traceroute
Hình 2.6: Công cụ traceroute
Traceroute là gói công cụ được cài đặt sẵn trong hầu hết các hệ điều hành Chức năng của nó là gửi một gói tin ICMP Echo đến mỗi hop (router hoặc gateway), cho đến khi đến được đích Khi gói tin ICMP gửi qua mỗi router, trường thời gian sống (Time To Live – TTL) được trừ đi xuống một mức Chúng ta có thể đếm được có bao nhiêu Hop mà gói tin này đã đi qua, tức là để đến được đích phải qua bao nhiêu router Ngoài ra, chúng ta sẽ thu được kết qua là những router mà gói tin đã đi qua Một vấn đề lớn khi sử dụng Traceroute là hết thời gian đợi (time out), khi gói tin đi qua tường lửa hoặc router có chức năng lọc gói tin Mặc dù tường lửa sẽ chặn đứng việc gói tin ICMP đi qua, nhưng nó vẫn gửi cho Hacker một thông báo cho biết sự hiện diện này
Trang 372.3 QUÉT-SCANNING
2.3.1 Giới thiệu
Quét là một bước tiếp theo của Footprinting trong tiến trình tấn công hệ thống Giai đoạn này giúp Hacker xác định được nhiều thông tin của mục tiêu cần tấn công Những thông tin cần thu thập như tên máy, địa chỉ ip, cấu hình máy tính, hệ điều hành, dịch vụ đang chạy, port đang mở… Những thông tin này sẽ giúp cho Hacker có
kế hoạch tấn công hợp lý, cũng như việc chọn kỹ thuật tấn công nào Quét giúp định
vị hệ thống còn hoạt động trên mạng hay không
2.3.2 Phân loại
Công cụ quét được sử dụng để thu thập thông tin về một hệ thống như địa chỉ IP,
hệ điều hành, và các dịch vụ chạy trên các máy tính mục tiêu Có 3 loại quét mạng chủ yếu: Quét cổng, quét mạng, quét nguy cơ
Quét port: là quá trình xác định cổng TCP/IP mở và có sẵn trên một hệ thống Công cụ quét Port cho phép Hacker tìm hiểu về các dịch vụ có sẵn trên một hệ thống nhất định Mỗi dịch vụ hay ứng dụng máy tính được kết hợp với một số cổng thông dụng Ví dụ: công cụ quét xác định cổng 80 mở cho biết một web sever đang chạy trên đó
Quét mạng: là quá trình xác định máy chủ đang hoạt động trên mạng Máy chủ được xác định bởi IP Các công cụ này cố gắng xác định tất cả các máy chủ trực tiếp hoặc trả lời trên mạng và địa chỉ IP tương ứng của chúng
Quét nguy cơ: là quá trình chủ động xác định các lỗ hổng của hệ thống máy tính trên mạng Thông thường, một máy quét lỗ hổng đầu tiên xác định các hệ điều hành,
số phiên bản, các gói dịch vụ có thể được cài đặt Sau đó, máy quét lỗ hổng xác định các điểm yếu, lỗ hổng trong hệ điều hành Trong giai đoạn tấn công sau đó, Hacker
có thể khai thác những điểm yếu để đạt được quyền truy cập vào hệ thống
2.3.3 Các phương pháp quét
Tấn công Quét thường thực hiện trình tự các bước sau: Kiểm tra hệ thống, kiểm tra cổng mở, lấy thông tin phiên bản hệ điều hành, quét lỗ hỏng bảo mật, dựng biểu
đồ hệ thống mạng, chuẩn bị proxy
Trang 382.3.3.1 Kiểm tra hệ thống
Quét ICMP: Bản chất của quá trình này là gửi một gói ICMP Echo Request đến máy chủ đang muốn tấn công Việc quét này rất hữu ích để định vị các thiết bị hoạt động hoặc xác định hệ thống có tường lửa hay không
Ping Sweep: được sử dụng để xác định các máy chủ còn ―sống‖ từ một loạt các địa chỉ IP bằng cách gửi các gói ICMP Echo Request đến tất cả các IP đó Nếu một máy chủ còn ―sống‖ nó sẽ trả lại một gói tin ICMP Reply
2.3.3.2 Kiểm tra các cổng mở
Trong gói tin TCP, ý nghĩa việc thiết lập Flag được sử dụng để Scan Port như sau:
- Thông số SYN để yêu cầu kết nối giữa hai máy tính
- Thông số ACK để trả lời kết nối giữa hai máy có thể bắt đầu được thực hiện
- Thông số FIN để kết thúc quá trình kết nối giữa hai máy
- Thông số RST từ Server để nói cho Client biết rằng giao tiếp này bị cấm (không thể sử dụng)
- Thông số PSH sử dụng kết hợp với thông số URG
- Thông số URG sử dụng để thiết lập độ ưu tiên cho gói tin này
Hình 2.7: Cấu trúc header của gói TCP
Trang 39Toàn bộ các thông số này trong gói tin nó chỉ thể hiện là 1 hoặc 0 nếu là 0 thì gói tin TCP không thiết lập thông số này, nếu là 1 thì thông số nào đó được thực hiện nó
sẽ lần lượt trong 8 bits trong phần Flag
Ba bước bắt tay kết nối TCP:
Bước I: Client gửi đến Server một gói tin SYN
Bước II: Server trả lời tới Client một gói tin SYN/ACK
Bước III: Khi Client nhận được gói tin SYN/ACK sẽ gửi lại server một gói ACK – và quá trình trao đổi thông tin giữa hai máy bắt đầu
Hình 2.8: Cơ chế bắt tay ba bước
Bốn bước kết thúc kết nối:
Bước I: Client gửi đến Server một gói tin FIN ACK
Bước II: Server gửi lại cho Client một gói tin ACK
Bước III: Server lại gửi cho Client một gói FIN ACK
Bước IV: Client gửi lại cho Server gói ACK và quá trình ngắt kết nối giữa Server và Client được thực hiện
Hình 2.9: Bốn bước kết thúc kết nối TCP
Nguyên tắc Scan Port trên một hệ thống
TCP Scan: Trên gói TCP/UDP có 16 bit dành cho Port Number điều đó có nghĩa nó
có từ 1 – 65535 port Không một Hacker nào lại scan toàn bộ các port trên hệ thống, chúng chỉ scan những port hay sử dụng nhất thường chỉ sử dụng scan từ port 1 tới port 1024 mà thôi Dựa vào các nguyên tắc truyền thông tin của TCP, Hacker có thể Scan Port nào mở trên hệ thống bằng nhưng phương thức sau đây:
Trang 40- SYN Scan: Khi Client gửi gói SYN với một thông số Port nhất định tới Server nếu server gửi về gói SYN/ACK thì Client biết Port đó trên Server được mở Nếu Server gửi về cho Client gói RST/SYN tôi biết port đó trên Server đóng
- FIN Scan: Khi 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 mở port đó, nếu Server gửi về gói RST thì Client biết Server đó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ì tôi biết port đó trên Server 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 tôi biết port
đó trên Server 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 thực tế 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 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
Có vài dạng Scan cho các dịch vụ điển hình dễ bị tấn công như:
- RPC Scan: Cố gắng kiểm tra xem hệ thống có mở port cho dịch vụ RPC không
- Windows Scan tương tự như ACK Scan, nhưng nó có thể chỉ thực hiện trên một số port nhất định
- FTP Scan: Có thể sử dụng để xem dịch vụ FTP có được sử dụng trên Server hay không
- IDLE: đây là dạng Passive Scan, sniffer và đưa ra kết luận máy tính mở port nào Phương thức này chính xác nhưng đôi khi không đầy đủ bởi có những port trên máy tính mở nhưng không giao tiếp thì phương thức này cũng không scan được UDP Scan: Nếu như gói tin truyền bằng TCP để đảm bảo sự toàn vẹn của gói tin sẽ luôn được truyền tới đích Gói tin truyền bằng UDP sẽ đáp ứng nhu cầu truyền tải dữ