Hệ thống phát hiện xâm nhập trái phép IDS-Intrusion Detection System là một phương pháp bảo mật có khả năng chống lại các kiểu tấn công mới, các vụ lạm dụng xuất phát từ trong hệ thống v
Trang 1An ninh thông tin nói chung và an ninh mạng nói riêng đang là vấn đềđược quan tâm không chỉ ở Việt Nam mà trên toàn thế giới Cùng với sự phát triển nhanh chóng của mạng Internet, việc đảm bảo an ninh cho các hệ thống thông tin càng trở nên cấp thiết hơn bao giờ hết
Nhiều phương pháp đã được phát triển để bảo mật hạ tầng mạng và việc truyền thông trên Internet, bao gồm các cách như sử dụng tường lửa (Firewall),
mã hóa, và mạng riêng ảo (VPN) Hệ thống phát hiện xâm nhập trái phép (IDS-Intrusion Detection System) là một phương pháp bảo mật có khả năng chống lại các kiểu tấn công mới, các vụ lạm dụng xuất phát từ trong hệ thống
và có thể hoạt động tốt với các phương pháp bảo mật truyền thống Qua đó, đồ
án tốt nghiệp này em mong muốn có thể tìm hiểu, nghiên cứu về hệ thống phát hiện và phòng chống xâm nhập mạng với mục đích nắm bắt được các giải pháp, các kỹ thuật tiên tiến để chuẩn bị tốt cho hành trang của mình sau khi ra trường Qua đó, giúp em nắm được các kiểu tấn công mạng phổ biến hiện nay Nguyên lý hoạt động, cách thức phát hiện và phòng chống của hệ thống Từ đó
có thể sử dụng công cụ để ngăn chặn các kiểu tấn công mạng thông thường
Trang 2Để hoàn thành khóa luận này, em xin tỏ lòng biết ơn sâu sắc đến thầy Ngô Văn Công đã tận tình hướng dẫn trong suốt quá trình viết đồ án tốt nghiệp.Cung cấp kiến thức và giúp đỡ em rất nhiều.
Em cũng xin chân thành cảm ơn quý thầy cô trong khoa Công nghệ thông tin - trường Đại học Nha Trang đã tận tình truyền đạt kiến thức trong 4 năm học tập Với vốn kiến thức được tiếp thu trong quá trình học không chỉ là nền tảng cho quá trình nghiên cứu đề tài mà còn là hành trang quý báu để em bước vào đời một cách vững chắc và tự tin
Em cũng thầm biết ơn sự ủng hộ của gia đình, bạn bè – những người thân yêu luôn là chỗ dựa vững chắc cho em trong suốt quá trình nghiên cứu
Mong tiếp nhận những ý kiến, nhận xét từ quý thầy cô
Cuối cùng, em xin kính chúc quý thầy cô và gia đình dồi dào sức khỏe và thành công trong sự nghiệp giảng dạy
Nha Trang, ngày tháng năm 2012
Sinh viên thực hiện
Võ Trọng Quang
Trang 3
Trang 4
Trang 5
CHƯƠNG 1: TỔNG QUAN VỀ BẢO MẬT MẠNG 1
1.1 Tại sao phải cần bảo mật mạng? 1
1.2 Một số khái niệm về bảo mật 1
1.2.1 Các yếu tố bảo mật 1
1.2.2 Hành vi xâm nhập là gì? 2
1.2.3 Các đối tượng tấn công mạng 2
1.2.4 Các lỗ hổng bảo mật 3
1.3 Một số kiểu, hình thức tấn công mạng 4
1.3.1 Các kiểu tấn công 4
1.3.2 Một số hình thức tấn công mạng 5
1.3.3 Các bước hacker thường tấn công 8
1.3.4 Một số dấu hiệu xâm nhập thông thường 10
1.3.5 Các khai thác thông dụng 10
1.4 Các mức bảo vệ an toàn mạng 11
1.5 Các quy tắc bảo mật 12
1.6 Nhiệm vụ của người quản trị 13
CHƯƠNG 2: TỔNG QUAN VỀ IDS/IPS 15
2.1 Tổng quan về IDS/IPS 15
2.1.1 Định nghĩa IDS/IPS 15
2.1.2 Chức năng của IDS/IPS 16
2.1.3 Sự khác nhau giữa IDS/IPS 17
2.2 Các phương pháp nhận diện của hệ thống IDS/IPS 18
2.2.1 Phát hiện sự lạm dụng 19
2.2.2 Phát hiện sự bất thường 20
2.2.3 So sánh giữa 2 mô hình 23
2.3 Kiến trúc của hệ thống IDS/IPS 23
2.3.1 Các thành phần cơ bản 23
2.3.2 Kiến trúc của hệ IDS/IPS 24
2.4 Phân loại IDS/IPS 25
2.4.1 Network based IDS/IPS (NIDS) 26
Trang 62.4.3 So sánh giữa NIDS và HIDS 34
CHƯƠNG 3: GIỚI THIỆU IPS 36
3.1 Đặt vấn đề 36
3.2 Định nghĩa IPS 36
3.3 Chức năng IPS 36
3.4 Kiến trúc chung của hệ thống IPS 38
3.4.1 Module phân tích luồng dữ liệu 38
3.4.2 Module phát hiện tấn công 38
3.4.3 Module phản ứng 40
3.5 Phân loại hệ thống IPS 41
3.5.1 IPS ngoài luồng (Promiscuous Mode IPS) 41
3.5.2 IPS trong luồng (In-line IPS) 41
3.6 Các công cụ hỗ trợ IPS (IDS) 41
3.6.1 Hệ thống phân tích đánh giá tổn thương 42
3.6.2 Kiểm tra toàn vẹn dữ liệu 43
3.6.3 Honey Pot và Padded Cell System 43
3.7 Các kỹ thuật xử lý IPS 43
3.7.1 Anomaly detection 44
3.7.2.Misuse detection 46
3.7.3 Policy-Based IPS 48
3.7.4 Protocol Analysis-Based IPS 49
CHƯƠNG 4: NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS/IPS 50
4.1 Giới thiệu về Snort 50
4.2 Kiến trúc Snort 50
4.2.1 Module giải mã gói tin 51
4.2.2 Module tiền xử lý 51
4.2.3 Module phát hiện 52
4.2.4 Module log và cảnh báo 53
4.2.5 Module kết xuất thông tin 53
Trang 74.3.2 Cấu trúc luật của Snort 54
4.4 Chế độ ngăn chặn của Snort : Snort – Inline 62
CHƯƠNG 5: CÀI ĐẶT SNORT TRONG MÔ HÌNH MẠNG 64
5.1 Cài đặt Snort trên Ubuntu 10.04 64
5.1.1 Chuẩn bị môi trường 64
5.1.2 Cài đặt các gói bổ trợ 64
5.1.3 Cài đặt Snort 64
5.2 Các chế độ thực thi trong Snort 65
5.3 Cấu hình 1 số rules cơ bản cảnh báo, ngăn chặn Snort 65
5.3.1 Ngăn chặn 1 ping thông thường 65
5.3.1 Tấn công Ping of death 67
5.3.4 Tấn công Dos với HTTP Post 67
5.3.3 Tấn công Smurt Attack 69
5.3.4 Tấn công Land attack 69
5.3.5 Tấn công Winnuke 70
5.3.6 Tấn công ARP Cache 70
5.3.7 Tấn công UDP flood 71
5.4 Cấu hình 1 số rules cho Iptables: 71
5.4.1 Ngăn chặn ping 71
5.4.2 Chặn truy cập web 71
5.4.3 Chặn IMCP có kích thước lớn 72
5.4.4 Chặn SYN flood 72
5.4.5 Ngăn port scanning 72
5.4.5 Hạn chế UDP DOS 72
KẾT LUẬN 73
TÀI LIỆU THAM KHẢO 74
Trang 8Hình 1: Các kiểu tấn công mạng 5
Hình 2: Các bước hacker thường tấn công 9
Hình 3: Các mức độ bảo vệ của mạng 11
Hình 4: Các vị trí đặt IDS trong mạng 16
Hình 5: Các thành phần chính 25
Hình 5: Mô hình NIDS 26
Hình 6: Mô hình IDS inline 27
Hình 7: Mô hình IDS pasive 28
Hình 8: Mô hình HIDS 32
Hình 9: Mô hình kiến trúc hệ thống Snort 51
Hình 10: Cấu trúc phần header 55
Trang 9CHƯƠNG 1: TỔNG QUAN VỀ BẢO MẬT MẠNG
1.1 Tại sao phải cần bảo mật mạng?
Bảo mật là một trong những lĩnh vực mà hiện nay giới công nghệ thông tin khá quan tâm Một khi internet ra đời và phát triển, nhu cầu trao đổi thông tin trở nên cần thiết Mục tiêu của việc nối mạng là làm cho mọi người có thể sửdụng chung tài nguyên từ những vị trí địa lý khác nhau Cũng chính vì vậy mà các tài nguyên cũng rất dễ dàng bị phân tán, dẫn đến một điều hiển nhiên là chúng sẽ bị xâm phạm, gây mất mát dữ liệu cũng như các thông tin có giá trị Càng giao thiệp rộng thì càng dễ bị tấn công, đó là một quy luật Từ đó, vấn đềbảo vệ thông tin cũng đồng thời xuất hiện Bảo mật ra đời
Tất nhiên, mục tiêu của bảo mật không chỉ nằm gói gọn trong lĩnh vực bảo
vệ thông tin mà còn nhiều phạm trù khác như kiểm duyệt web, bảo mật internet, bảo mật http, bảo mật trên các hệ thống thanh toán điện tử và giao dịch trực tuyến,…
Mỗi nguy cơ trên mạng đều là mối nguy hiểm tiềm tàng Từ một lổ hổng bảo mật nhỏ của hệ thống, nhưng nếu biết khai thác và lợi dụng với tầng suất cao và kỹ thuật hack điêu luyện thì cũng có thể trở thành tai họa
1.2 Một số khái niệm về bảo mật
Trước hết khi tìm hiểu các vấn đề liên quan đến phương thức phá hoại và các biện pháp bảo vệ cũng như thiết lập các chính sách bảo mât Chúng ta sẽ tìm hiểu 1 số khái niệm liên quan đến bảo mật trên Internet
Độ tin cậy: thể hiện tính che dấu của thông tin hay tài nguyên
Tính xác thực: là sự xác định và bảo đảm nguồn gốc của thông tin
Tính toàn vẹn: tham chiếu đến tính tin cậy của dữ liệu hay tài nguyên theo nghĩa ngăn không cho người không có quyền chỉnh sửa trên nó
Trang 10 Tính sẵn sàng: tham chiếu đến khả năng sử dụng thông tin, tài nguyên mong muốn.
1.2.2 Hành vi xâm nhập là gì?
Hành vi xâm nhập được định nghĩa là sự vi phạm hoặc cố vượt qua các chính sách an ninh của máy tính hoặc mạng Các xâm nhập có thể được thực hiện thông qua sâu mạng, phần mềm gián điệp, hacker đang kiếm quyền truy cập hợp pháp vào máy tính từ Internet, người sử dụng hợp lệ có các hành vi vượt qua các đặc quyền truy cập được định trước hoặc lạm dụng đặc quyền của họ
1.2.3 Các đối tượng tấn công mạng
Là các cá nhân hoặc các tổ chức sử dụng kiến thức về mạng và các công
cụ phá hoại để dò tìm các điểm yếu, lỗ hổng bảo mật trên hệ thống Thực hiện các hoạt động chiếm đoạt và xâm nhập tài nguyên mạng trái phép
Một số đối tượng tấn công mạng là:
Hacker: những kẻ xâm nhập vào mạng trái phép bằng cách sử dụng các công cụ phá mật khẩu hoặc khai phá điểm yếu của các thành phần truy nhập trên hệ thống
Masquerader: là những kẻ giả mạo thông tin trên mạng Một số hình thức giả mạo như giả mạo địa chỉ IP, tên miền, định danh người dùng…
Eavesdropping: là các đối tượng nghe trộm thông tin trên mạng, sử dụng các công cụ sniffer, sau đó dùng các công cụ phân tích và debug để lấy được các thông tin giá trị
Hoặc có thể chia làm 2 loại:
Kẻ xâm nhập từ bên ngoài: thực hiện xâm nhập từ bên ngoài hệ thống của
chúng ta và những kẻ tấn công các tài nguyên bên ngoài (tấn công máy chủweb, gửi thư rác bằng máy chủ mail…) Những kẻ xâm nhập này cũng có thểtìm cách vượt qua tường lửa để tấn công vào mạng bên trong Kẻ xâm nhập từbên ngoài có thể tấn công thông qua Internet, qua đường quay số, tấn công qua môi trường vật lý hoặc thông qua hệ thống mạng của các đối tác (nhà cung cấp các sản phẩm mạng, khách hàng…) có liên kết với hệ thống mạng của bạn
Trang 11Kẻ xâm nhập bên trong: Có thể là các nhân viên trong cơ quan, tổ chức…
sử dụng sai quyền của họ, truy cập các tài nguyên không được phép, lợi dụng các quyền của người khác để truy cập tài nguyên thông tin của hệ thống
Các đối tượng tấn công mạng nhằm nhiều mục đích khác nhau: ăn cắp thông tin có giá trị về kinh tế, phá hoại hệ thống mạng có chủ định hoặc là thửnghiệm, vô tình
Một số thuật ngữ thường dùng:
Hacking: chỉ quá trình phát triển nhanh một phần mềm mới hay phát triển lại (revers engineering) một phần mềm đã có để làm cho nó tốt hơn và hiệu quả hơn
Cracker: chỉ người dùng kỹ năng hacking vào mục đích thực hiện các cuộc tấn công
Ethical hacker: chỉ những chuyên gia bảo mật, những người dùng kiến thức hacking của mình để bảo mật hệ thống
Threat: là một hành động hay sự kiện có thể làm tổn hại đến tính an toàn của hệ thống, nó giống như là một mối đe dọa tiềm tàng
Vulnerability: các điểm yếu tiềm ẩn, các lỗi cài đặt có thể dẫn tới làm mất tính an toàn của hệ thống
Attack: Là hành động cố găng làm mất đi tính an toàn của hệ thống
Exploit: Hành động khám phá hệ thống
1.2.4 Các lỗ hổng bảo mật
Các lỗ hổng bảo mật là những lỗ hổng yếu kém trên hệ thống hoặc ẩn chứa trong một dịch vụ mà dựa vào đó một kẻ tấn công có thể xâm nhập trái phép để thực hiện hành động phá hoại hoặc chiếm đoạt tài nguyên bất hợp pháp
Nguyên nhân gây ra các lỗ hổng bảo mật là khác nhau: có thể là do lỗi bản thân của hệ thống, hoặc phần mềm cung cấp, hoặc do người quản trị yếu kém không hiểu được các dịch vụ cung cấp…Các lỗi bao gồm:
Các lỗi phần mềm : Các lỗi phần mềm có thể bị khai thác trên deamon,
trên các ứng dụng client, trên hệ điều hành và các ngăn xếp mạng Các lỗi phần mềm có thể được chia ra làm các loại sau: tràn bộ đệm, các kết quả bất ngờ khi
Trang 12đưa vào một dữ liệu được nhiều lớp mã lệnh trong cùng một chương tình xử lý, các dữ liệu đầu vào không hợp lệ.
Các sai sót trong cấu hình hệ thống: các sai sót này có thể do người sử
dụng để nguyên cấu hình mặc định, do người quản trị lười biếng, do trong các chương trình trong quá trình hoạt động tạo ra các lỗ hổng
Hoạt động phá mật khẩu: Các mật khẩu yếu dễ dàng bị lộ, ngoài ra kẻ
xâm nhập có thể thực hiện các hành vi phá mật khẩu bằng tấn công từ điển,…
Các hành vi nghe lén các giao thông mạng không được bảo vệ: nghe lén
trên môi trường chia sẻ (Ethernet), nghe lén các hoạt động của máy chủ và nghe lén từ xa
Các thiếu sót trong thiết kế: Các phần mềm có thể hoàn toàn đúng như
yêu cầu thiết kế, tuy nhiên vẫn có thiếu sót ngay từ khi thiết kế, tạo điều kiện cho kẻ tấn công thực hiện hành vi xâm nhập Ví dụ như lỗi trong giao thức TCP/IP, dẫn đến các vấn để như tấn công kiểu smurf, IP spoofing, và SYN floods
Mức độ ảnh hưởng của các lỗ hổng là khác nhau Có những lỗ hổng chỉảnh hưởng đến chất lượng dịch vụ cung cấp, có những lỗ hổng ảnh hưởng nghiêm trọng đến toàn hệ thống,…
1.3 Một số kiểu, hình thức tấn công mạng
1.3.1 Các kiểu tấn công
Interruption: Tấn công trên tính sẵn sàng của thông tin
Interception: Tấn công trên độ tin cậy của thông tin
Modification: Tấn công trên tính toàn vẹn của thông tin
Fabrication: Tấn công trên tính xác thực của thông tin
Trang 13Do đó, những mật khẩu ngắn và đơn giản thường rất dễ bị phát hiện.
Ngoài ra, hacker có thể tấn công trực tiếp thông qua các lỗi của chương trình hay hệ điều hành làm cho hệ thống đó tê liệt hoặc hư hỏng Trong một sốtrường hợp, hacker đoạt được quyền của người quản trị hệ thống
Kỹ thuật đánh lừa : Social Engineering
Đây là thủ thuật được nhiều hacker sử dụng cho các cuộc tấn công và thâm nhập vào hệ thống mạng và máy tính bởi tính đơn giản mà hiệu quả của
nó Thường được sử dụng để lấy cấp mật khẩu, thông tin, tấn công vào và phá hủy hệ thống
Ví dụ : kỹ thuật đánh lừa Fake Email Login
Về nguyên tắc, mỗi khi đăng nhập vào hộp thư thì bạn phải nhập thông tin tài khoản của mình bao gồm username và password rồi gởi thông tin đến Mail Server xử lý Lợi dụng việc này, những người tấn công đã thiết kế một trng web
Trang 14giống hệt như trang đăng nhập mà bạn hay sử dụng Tuy nhiên, đó là một trang web giả và tất cả thông tin mà bạn điền vào đều được gởi đến cho họ
Kỹ thuật tấn công vào vùng ẩn
Những phần bị dấu đi trong các website thường chứa những thông tin vềphiên làm việc của các client Các phiên làm việc này thường được ghi lại ởmáy khách chứ không tổ chức cơ sở dữ liệu trên máy chủ Vì vậy, người tấn công có thể sử dụng chiêu chức View Source của trình duyệt để đọc phần đầu đi này và từ đó có thể tìm ra các sơ hở của trang Web mà họ muốn tấn công Từ
đó, có thể tấn công vào hệ thống máy chủ
Tấn công vào các lỗ hổng bảo mật
Hiện, nay các lỗ hổng bảo mật được phát hiện càng nhiều trong các hệđiều hành, các web server hay các phần mềm khác, Và các hãng sản xuất luôn cập nhật các lỗ hổng và đưa ra các phiên bản mới sau khi đã vá lại các lỗhổng của các phiên bản trước Do đó, người sử dụng phải luôn cập nhật thông tin và nâng cấp phiên bản cũ mà mình đang sử dụng nếu không các hacker sẽlợi dụng điều này để tấn công vào hệ thống
Khai thác tình trạng tràn bộ đệm
Tràn bộ đệm là một tình trạng xảy ra khi dữ liệu được gởi quá nhiều so với khả năng xử lý của hệ thống hay CPU Nếu hacker khai thác tình trạng tràn bộđệm này thì họ có thể làm cho hệ thống bị tê liệt hoặc làm cho hệ thống mất khảnăng kiểm soát
Để khai thác được việc này, hacker cần biết kiến thức về tổ chức bộ nhớ, stack, các lệnh gọi hàm: shellcode
Khi hacker khai thác lỗi tràn bộ đệm trên một hệ thống, họ có thể đoạt quyền root trên hệ thống đó Đối với nhà quản trị, tránh việc tràn bộ đệm không mấy khó khăn, họ chỉ cần tạo các chương trình an toàn ngay từ khi thiết kế
Nghe trộm
Các hệ thống truyền đạt thông tin qua mạng đôi khi không chắc chắn lắm
và lợi dụng điều này, hacker có thể truy cập vào data paths để nghe trộm hoặc đọc trộm luồng dữ liệu truyền qua
Trang 15Hacker nghe trộm sự truyền đạt thông tin, dữ liệu sẽ chuyển đến sniffing hoặc snooping Nó sẽ thu thập những thông tin quý giá về hệ thống như một packet chứa password và username của một ai đó Các chương trình nghe trộm còn được gọi là các sniffing Các sniffing này có nhiệm vụ lắng nghe các cổng của một hệ thống mà hacker muốn nghe trộm Nó sẽ thu thập dữ liệu trên các cổng này và chuyển về cho hacker.
Kỹ thuật giả mạo địa chỉ
Thông thường, các mạng máy tính nối với Internet đều được bảo vệ bằng bức tường lửa(fire wall) Bức tường lửa có thể hiểu là cổng duy nhất mà người
đi vào nhà hay đi ra cũng phải qua đó và sẽ bị “điểm mặt” Bức tường lửa hạn chế rất nhiều khả năng tấn công từ bên ngoài và gia tăng sự tin tưởng lẫn nhau trong việc sử dụng tào nguyên chia sẻ trong mạng nội bộ
Sự giả mạo địa chỉ nghĩa là người bên ngoài sẽ giả mạo địa chỉ máy tính của mình là một trong những máy tính của hệ thống cần tấn công Họ tự đặt địa chỉ IP của máy tính mình trùng với địa chỉ IP của một máy tính trong mạng bịtấn công Nếu như làm được điều này, hacker có thể lấy dữ liệu, phá hủy thông tin hay phá hoại hệ thống
Kỹ thuật chèn mã lệnh
Một kỹ thuật tấn công căn bản và được sử dụng cho một số kỹ thuật tấn công khác là chèn mã lệnh vào trang web từ một máy khách bất kỳ của người tấn công
Kỹ thuật chèn mã lệnh cho phép người tấn công đưa mã lệnh thực thi vào phiên làm việc trên web của một người dùng khác Khi mã lệnh này chạy, nó sẽcho phép người tấn công thực hiện nhiều nhiều chuyện như giám sát phiên làm việc trên trang web hoặc có thể toàn quyền điều khiển máy tính của nạn nhân
Kỹ thuật tấn công này thành công hay thất bại tùy thuộc vào khả năng và sựlinh hoạt của người tấn công
Tấn công vào hệ thống có cấu hình không an toàn
Cấu hình không an toàn cũng là một lỗ hổng bảo mật của hệ thống Các lỗhổng này được tạo ra do các ứng dụng có các thiết lập không an toàn hoặc người quản trị hệ thống định cấu hình không an toàn Chẳng hạn như cấu hình
Trang 16máy chủ web cho phép ai cũng có quyền duyệt qua hệ thống thư mục Việc thiết lập như trên có thể làm lộ các thông tin nhạy cảm như mã nguồn, mật khẩu hay các thông tin của khách hàng.
Tấn công dùng Cookies
Cookie là những phần tử dữ liệu nhỏ có cấu trúc được chia sẻ giữa website
và trình duyệt của người dùng
Cookies được lưu trữ dưới những file dữ liệu nhỏ dạng text (size dưới 4KB) Chúng được các site tạo ra để lưu trữ, truy tìm, nhận biết các thông tin vềngười dùng đã ghé thăm site và những vùng mà họ đi qua trong site Nhữngthông tin này có thể bao gồm tên, định danh người dùng, mật khẩu, sở thích, thói quen,
Can thiệp vào tham số trên URL
Đây là cách tấn công đưa tham số trực tiếp vào URL Việc tấn công có thểdùng các câu lệnh SQL để khai thác cơ sở dữ liệu trên các máy chủ bị lỗi Điển hình cho kỹ thuật tấn công này là tấn công bằng lỗi “SQL INJECTION”
Kiểu tấn công này gọn nhẹ nhưng hiệu quả bởi người tấn công chỉ cần một công cụ tấn công duy nhất là trình duyệt web và backdoor
Vô hiệu hóa dịch vụ
Kiểu tấn công này thông thường làm tê liệt một số dịch vụ, được gọi là DOS (Denial of Service - Tấn công từ chối dịch vụ)
Các tấn công này lợi dụng một số lỗi trong phần mềm hay các lỗ hổng bảo mật trên hệ thống, hacker sẽ ra lệnh cho máy tính của chúng đưa những yêu cầu không đâu vào đâu đến các máy tính, thường là các server trên mạng Các yêu cầu này được gởi đến liên tục làm cho hệ thống nghẽn mạch và một số dịch vụ
sẽ không đáp ứng được cho khách hàng
1.3.3 Các bước hacker thường tấn công
Reconnaissance
Scanning
Gaining access
Maintaining access
Trang 17Hình 2: Các bước hacker thường tấn công
Bước 1 : Reconnaissance
Reconnaissance tham chiếu đến bước chuẩn bị, thời điểm attacker tìm kiếm và thu thập thông tin càng nhiều càng tốt về mục tiêu Nó thực hiện bằng cách quét (bên trong hay bên ngoài) hệ thống mạng mà không được
sự cho phép
Passive reconnaissance: lắng nghe dữ liệu trong mạng một cách thụ động
Active reconnaissance: thăm dò mạng để phát hiện ra
Bước 3: Gaining access
Tham chiếu đến bước tấn công thực sự vào hệ thống mạng, attacker thăm
dò hệ thống
Quá trình thăm dò có thể trong mạng LAN, Internet Offline Ví dụ: based buffer overflows, denial of service, session hijacking, password filtering, etc
Trang 18stack- Rủi ro: hacker có thể chiếm quyền truy cập hệ điều hành, ứng dụng và dịch vụ.
Bước 4: Maintaining access
Maintaining Access tham chiếu đến bước hacker cố gắng duy trì quyền truy cập của mình trên hệ thống
Hacker khám phá ra một điểm yếu và có thể thay đổi và làm tổn thương hệthống
Hacker có thể upload, download hay là thao tác với dữ liệu/ ứng dụng /cấu hình trên hệ thống
Bước 5: Xóa dấu vết
Xóa dấuvết là bước hacker làm cho không thể phát hiện ra hành động của anh ta trên hệ thống
Lý do là để có thể kéo dài sự hiệndiện của anh ta trong hệ thống, tiếp tục
sử dụng tài nguyên
Hacker có thể duy trì tình trạng không bị phát hiện trong 1 khoảng thời gian hay dùng bước này để tìm hiểu thêm về hệ thống đích
1.3.4 Một số dấu hiệu xâm nhập thông thường
Có 3 loại tấn công được coi là các dấu hiệu xâm nhập thông thường:
Các hành vi do thám: bao gồm ping sweeps, DNS zone transfers, do thám thư điện tử, dò quét TCP/UDP, tìm kiếm các lỗ hổng cgi của máy chủ web, scan port…
Khai thác: khai thác các lỗ hổng để truy cập được vào hệ thống
Tấn công từ chối dịch vụ: làm hệ thống/dịch vụ ngừng hoạt động, làm quá tải kết nối mạng, làm CPU quá tải, đầy ổ đĩa…
1.3.5 Các khai thác thông dụng
Một số hành vi khai thác thông dụng:
CGI scripts: Các đoạn mã CGI thông dụng mà kẻ tấn công thường khai thác là TextCounter, GuestBook, EWS, info2www, Count.cgi, handler, webdist.cgi, php.cgi, files.pl, nph-test-cgi, nph-publish, AnyForm, FormMail Nếu chúng ta thấy có người đang cố gắng sử dụng các mã
Trang 19 Tấn công máy chủ web: hacker có thể thực hiện xâm nhập bằng cách tấn công vào các lỗ hổng của các ứng dụng, lỗ hổng của hệ điều hành… của máy chủ web.
Tấn công vào trình duyệt web: kẻ xâm nhập có thể khai thác các lỗ hổng liên quan đến trình duyệt web: URL, HTTP, HTML, JavaScript, Frames, Java, và ActiveX
Tấn công SMTP (SendMail)
Các hành vi truy cập: truy cập khi không có tài khoản, phá mật khẩu, …
IMAP: lấy các e-mail trên máy chủ thông qua giao thức IMAP
IP spoofing: hành vi smurf, TCP sequence number prediction, DNS poisoning
Tấn công tràn bộ đệm
Tấn công DNS: DNS cache poisoning, DNS poisoning , DNS overflow
Một số hành vi do thám :Ping sweeps, TCP scans, UDP scans, OS
identification, Account scans
Một số tấn công từ chối dịch vụ thông dụng:Ping-of-Death, SYN Flood,
Land/Latierra, WinNuke, Smurf…
1.4 Các mức bảo vệ an toàn mạng
Vì không có 1 giải pháp nào là an toàn tuyệt đối nên người ta thường sửdụng nhiều mức bảo vệ khác nhau tạo thành nhiều lớp “ rào chắn” đối với các hoạt động xâm phạm Việc bảo vệ thông tin trên mạng chủ yếu là bảo vệ thông tin cất giữ trong các máy tính, đặc biệt là các server của mạng
Hình 3: Các mức độ bảo vệ của mạng
Trang 20Như hình trên ta thấy, các lớp bảo vệ mạng trên bao gồm:
Lớp bảo vệ trong cùng là quyền truy nhập nhằm kiếm soát các tài nguyên của mạng và quyền hạn đối với tài nguyên đó Hiện nay việc kiểm soát ở mức sâu nhất là tệp
Lớp bảo vệ thứ 2 là hạn chế theo tài khoản truy nhập gồm đăng kí tên và mật khẩu tương ứng Đây là phương pháp bảo vệ phổ biến nhất vì nó đơn giản, hiệu quả và ít tốn kém Người quản trị có trách nhiệm quản lý, kiếm soát mọi hoạt động của mạng và xác định quyền truy nhập của những người sử dụng khác tùy theo không gian, thời gian
Lớp thứ 3 là sử dụng phương pháp mã hóa Dữ liệu được mã hóa và sẽthành dạng dữ liệu “ không đọc được” theo 1 thuật toán nào đó
Lớp thứ 4 là mức bảo vệ vật lý nhằm truy cản các truy nhập vật lý bất hợp pháp truy nhập vào hệ thống Thường dùng các biện pháp truyền thống như ngăn cấm người lạ vào phòng đặt máy, dùng các máy tính khóa, cài đặt hệthống báo động khi truy nhập vào hệ thống…
Lớp thứ 5 là cài đặt các bức tường lửa nhằm ngăn chặn truy cập trái phép
và cho phép lọc các gói tin mà ta không muốn gửi hoặc nhận
1.5 Các quy tắc bảo mật
Tại trung tâm hỏi đáp về an toàn bảo mật thông tin của hãng Microsoft, hàng nghìn các bản báo cáo về an ninh hệ thống đã được nghiên cứu trong mỗi năm Trong một số trường hợp, kết quả về mức độ an toàn của hệ thống xuất phát từ lỗi trong sản phẩm Điều này có nghĩa là sẽ có một bản sửa lỗi phát triển ngay sau đó để khắc phục lỗi vừa tìm được Trong một số trường hợp, các vấn
đề được báo cáo là kết quả đơn giản do lỗi của ai đó tạo ra trong quá trình sửdụng sản phẩm Nhưng lại có rất nhiều trường hợp mà không rơi vào hai trường hợp trên Đó chính là các vấn đề an toàn bảo mật thông tin thực sự, nhưng các vấn đề này lại không do các thiếu sót từ sản phẩm Theo năm tháng, một danh sách về những vấn đề như vậy đã được phát triển gọi là “Mười quy tắc then chốt về an toàn và bảo mật”
Trang 21Dưới đây là Mười quy tắc then chốt trong bảo mật mà bạn nên tham khảo:
Quy tắc 1 : Nếu một người nào đó có thể thuyết phục bạn chạy chương trình của anh ta trên máy tính của bạn, Nó sẽ không còn là máy tính của bạn nữa
Quy tắc 2: Nếu một người nào đó có thể sửa đổi hệ điều hành trên máy tính của bạn, Nó sẽ không còn là máy tính của bạn nữa
Quy tắc 3: Nếu một người nào đó truy cập vật lí không hạn chế tới máy tính của bạn Nó sẽ không còn là máy tính của bạn nữa
Quy tắc 4: Nếu bạn cho phép một người nào đó đẩy các chương trình tới website của bạn Nó sẽ không còn là website của bạn
Quy tắc 5: Các mật khẩu dễ nhận có thể làm hỏng hệ thống bảo mật mạnh
Quy tắc 6: Một hệ thống chỉ có độ an toàn như sự tin tưởng nhà quản trị
Quy tắc 7: Dữ liệu được mã hoá chỉ như chìa khoá giải mã
Quy tắc 8: Một hệ thống quét virus hết hạn thì cũng còn tốt hơn không
có hệ thống diệt virus nào
Quy tắc 9: Tình trạng dấu tên hoàn toàn không thực tế
Quy tắc 10: Công nghệ không phải là tất cả
1.6 Nhiệm vụ của người quản trị
Lĩnh vực bảo mật thông tin đòi hỏi người quản trị mạng phải luôn tìm tòi, nghiên cứu và đào sâu những kiến thức mới để luôn làm chủ trong mọi tình huống sự cố
Đồng thời họ phải thiết lập các chiến lược xây dựng hệ thống bảo mật sao cho hiệu quả và phù hợp với cơ địa của từng hệ thống thông tin của các doanh nghiệp khác nhau
Thường xuyên theo dõi, giám sát những luồng thông tin và lượng truy cập vào tài nguyên mạng Đề xuất những phương án dự phòng khi hệ thống gặp sự
cố hay bị tấn công Lập lịch bảo trì hệ thống thường xuyên để giảm thiểu những rủi ro ngoài ý muốn
Trang 22Luôn cập nhật những công nghệ mới về bảo mật thông tin và áp dụng chúng một cách hài hòa và hợp lý Đó chỉ là điều kiện cần cho những quản trịmạng phải có để đảm bảo hệ thống thông tin luôn an toàn và bảo mật ở mức độcao nhất có thể
Việc bảo đảm cho hệ thống mạng máy tính hoạt động một cách an toàn, không xảy ra sự cố là một công việc cấp thiết hàng đầu Công tác quản trị mạng máy tính phải được thực hiện một cách khoa học đảm bảo toàn bộ hệ thống hoạt động bình thường trong giờ làm việc
Song song đó phải có một hệ thống dự phòng khi có sự cố về phần cứng hay phần mềm xảy ra Lập kế hoạch backup dữ liệu quan trọng và bảo dưỡng mạng theo định kỳ Thiết lập các chính sách bảo mật dữ liệu, phân quyền truy cập và tổ chức nhó làm việc trên mạng Thiết lập hệ thống và quy trình để xác định và ngăn chặn thông tin độc hại hoặc không mong muốn Xây dựng một quá trình phản hồi để theo dõi và thống kê các chi tiết sự cố, đánh giá rủi ro Luôn cập nhật thường xuyên các công nghệ mới và các ứng dụng cho tổ chức Liên tục cải tiến do môi trường kinh doanh thay đổi, cho phép các tổ chức duy trì tình trạng bảo mật thông tin ở mức độ rủi ro có thể chấp nhận Đảm bảo việc bảo mật thông tin luôn ở trạng thái sẵn sàng để đáp ứng nhu cầu của tổchức ngay khi cần thiết
Trang 23CHƯƠNG 2: TỔNG QUAN VỀ IDS/IPS
2.1 Tổng quan về IDS/IPS
2.1.1 Định nghĩa IDS/IPS
Ngày nay, nhu cầu trao đổi dữ liệu qua hệ thống mạng máy tính trở thành
vô cùng quan trọng trong mọi hoạt động của xã hội Vấn đề bảo đảm an toàn cho thông tin trên mạng ngày càng là mối quan tâm hàng đầu của các công ty,
tổ chức, nhà cung cấp dịch vụ Cùng với thời gian, các kỹ thuật tấn công ngày càng tinh vi hơn khiến các hệ thống an ninh mạng trở nên mất hiệu quả Các hệthống an ninh mạng truyền thống thuần túy dựa trên các tường lửa nhằm kiểm soát luồng thông tin ra vào hệ thống mạng một cách cứng nhắc dựa trên các luật bảo vệ cố định Với kiểu phòng thủ này, các hệ thống an ninh sẽ bất lực trước
kỹ thuật tấn công mới, đặc biệt là các cuộc tấn công nhằm vào điểm yếu của hệthống Trước các nguy cơ xâm nhập của những kẻ tấn công nhằm tìm kiếm dữliệu mật của công ty, doanh nghiệp, tổ chức hay một quốc gia nào đó thì hệthống IDS (Intrusion Detection System) ra đời để phát hiện sự xâm nhập trái phép của kẻ tấn công thông qua việc kiểm soát lưu lượng giao thông của hệthống mạng
Hệ thống phát hiện xâm nhập (IDS) là hệ thống có nhiệm vụ theo dõi, phát hiện sự xâm nhập, cũng như các hành vi, dấu hiệu khai thác trái phép tài nguyên của hệ thống được bảo vệ mà có thể dẫn đến việc làm tổn hại đến tính bảo mật, tính toàn vẹn,tính sẵn sàng của hệ thống Các dấu hiệu này xuất phát từ rất nhiều nguyên nhân khác nhau, như lây nhiễm malwares, hackers xâm nhập trái phép, người dùng cuối truy nhập vào các tài nguyên không được phép truy cập Hệ thống IDS sẽ thu thập thông tin từ rất nhiều nguồn trong hệ thống được bảo vệ sau đó tiến hành phân tích những thông tin đó theo các cách khác nhau để phát hiện những xâm nhập trái phép
IDS chỉ kiểm tra và thông báo khi hệ thống có sự bất thường hoặc trái với một định nghĩa mà người dùng đặt ra cho hệ thống, IDS không thể thực hiện việc ngăn chặn ngay khi phát hiện xâm nhập xảy ra để thực hiện an ninh cho hệthống mạng thì IPS ra đời
Trang 24Intrusion Prevention system ( IPS ) là một hệ thống bao gồm cả chức năng phát hiện xâm nhập ( Intrusion Detection ) và khả năng ngăn chặn (Intrusion Prevention) các xâm nhập trái phép dựa trên sự kết hợp với các thành phần khác như Antivirus, Firewall hoặc sử dụng các tính năng ngăn chặn tích hợp
Hình 4: Các vị trí đặt IDS trong mạng
2.1.2 Chức năng của IDS/IPS
Các ứng dụng cơ bản của hệ IDS/IPS :
Nhận diện các nguy cơ có thể xảy ra
Ghi nhận thông tin, log để phục vụ cho việc kiểm soát nguy cơ
Nhận diện các hoạt động thăm dò hệ thống
Nhận diện các yếu khuyết của chính sách bảo mật
Ngăn chặn vi phạm chính sách bảo mật
Các tính năng chính của hệ IDS/IPS:
Lưu giữ thông tin liên quan đến các đối tượng quan sát
Cảnh báo, giám sát những sự kiện quan trọng liên quan đến các đối tượng quan sát
Ngăn chặn các tấn công ( IPS )
Xuất báo cáo
Trang 252.1.3 Sự khác nhau giữa IDS/IPS
Có thể nhận thấy sự khác biệt giữa hai khái niệm ngay ở tên gọi: “phát hiện” và “ngăn chặn” Các hệ thống IDS được thiết kế với mục đích chủ yếu là phát hiện và cảnh báo các nguy cơ xâm nhập đối với mạng máy tính nó đang bảo vệ trong khi đó, một hệ thống IPS ngoài khả năng phát hiện còn có thể tựhành động chống lại các nguy cơ theo các quy định được người quản trị thiết lập sẵn
Hiện nay, công nghệ của IDS đã được thay thế bằng các giải pháp IPS Nếu như hiểu đơn giản, có thể xem như IDS chỉ là một cái chuông để cảnh báo cho người quản trị biết những nguy cơ có thể xảy ra tấn công Dĩ nhiên có thểthấy rằng, nó chỉ là một giải pháp giám sát thụ động, tức là chỉ có thể cảnh báo
mà thôi, việc thực hiện ngăn chặn các cuộc tấn công vào hệ thống lại hoàn toàn phụ thuộc vào người quản trị Vì vậy, yêu cầu rất cao đối với nhà quản trị trong việc xác định các lưu lượng cần và các lưu lượng có nghi vấn là dấu hiệu của một cuộc tấn công Và dĩ nhiên công việc này thì lại hết sức khó khăn Với IPS, người quản trị không những có thể xác định được các lưu lượng khả nghi khi có dấu hiệu tấn công mà còn giảm thiểu được khả năng xác định sai các lưu lượng Với IPS, các cuộc tấn công sẽ bị loại bỏ ngay khi mới có dấu hiệu và nó hoạt động tuân theo một quy luật do nhà quản trị định sẵn IDS hiện nay chỉ sử dụng
từ một đến 2 cơ chế để phát hiện tấn công Vì mỗi cuộc tấn công lại có các cơ chế khác nhau của nó Vì vậy, cần có các cơ chế khác nhau để phân biệt Với IDS, do số lượng cơ chế là ít nên có thể dẫn đến tình trạng không phát hiện ra được các cuộc tấn công với cơ chế không định sẵn, dẫn đến khả năng các cuộc tấn công sẽ thành công, gây ảnh hưởng đến hệ thống Thêm vào đó, do các cơ chế của IDS là tổng quát, dẫn đến tình trạng báo cáo nhầm, cảnh báo nhầm, làm tốn thời gian và công sức của nhà quản trị Với IPS thì được xây dựng trên rất nhiều cơ chế tấn công và hoàn toàn có thể tạo mới các cơ chế phù hợp với các dạng thức tấn công mới nên sẽ giảm thiểu được khả năng tấn công của mạng, thêm đó, độ chính xác của IPS là cao hơn so với IDS Nên biết rằng với IDS, việc đáp ứng lại các cuộc tấn công chỉ có thể xuất hiện sau khi gói tin của cuộc tấn công đã đi tới đích, lúc đó việc chống lại tấn công là việc nó gửi các yêu cầu
Trang 26đến các máy của hệ thống để xoá các kết nối đến máy tấn công và máy chủ, hoặc là gửi thông tin thông báo đến tường lửa ( Firewall) để tường lửa thực hiện chức năng của nó, tuy nhiên, việc làm này đôi khi lại gây tác động phụ đến hệthống Ví dụ như nếu kẻ tấn công (Attacker) giả mạo (sniffer) của một đối tác, ISP, hay là khách hàng, để tạo một cuộc tấn công từ chối dịch vụ thì có thể thấy rằng, mặc dù IDS có thể chặn được cuộc tấn công từ chối dịch vụ nhưng nó cũng sẽ khóa luôn cả IP của khách hàng, của ISP, của đối tác, như vậy thiệt hại vẫn tồn tại và coi như hiệu ứng phụ của DoS thành công mặc dù cuộc tấn công
từ chối dịch vụ thất bại Nhưng với IPS thì khác nó sẽ phát hiện ngay từ đầu dấu hiệu của cuộc tấn công và sau đó là khoá ngay các lưu lượng mạng này thì mới
có khả năng giảm thiểu được các cuộc tấn công
2.2 Các phương pháp nhận diện của hệ thống IDS/IPS
Có 2 cách tiếp cận cơ bản đối với việc phát hiện và phòng chống xâm nhập là :
Phát hiện sự lạm dụng (Misuse Detection Model): Hệ thống sẽ phát hiện các xâm nhập bằng cách tìm kiếm các hành động tương ứng với các kĩ thuật xâm nhập đã được biết đến (dựa trên các dấu hiệu -Signatures) hoặc các điểm dễ bị tấn công của hệ thống
Phát hiện sự bất thường (Anomaly Detection Model): Hệ thống sẽ phát hiện các xâm nhập bằng cách tìm kiếm các hành động khác với hành vi thông thường của người dùng hay hệ thống
Ngoài ra, còn có 1 phương pháp khác là:
Phân tích trạng thái giao thức ( Stateful protocol analysis ): Phân tích trạng thái protocol là quá trình so sánh các profile định trước của hoạt động của mỗi giao thức được coi là bình thường với đối tượng quan sát
từ đó xác định độ lệch Khác với phương pháp Anomaly-base detection, phân tích trạng thái protocol dựa trên tập các profile tổng quát cung cấp bởi nhà sản xuất theo đó quy định 1 protocol nên làm và không nên làm
gì "Stateful" trong phân tích trạng thái protocol có nghĩa là IDS/IPS có khả năng hiểu và theo dõi tình trạng của mạng, vận chuyển, và các giao thức ứng dụng có trạng thái Nhược điểm của phương pháp này là
Trang 27nhiều phiên đồng thời Một vấn đề là phương pháp phân tích trạng thái protocol không thể phát hiện các cuộc tấn công khi chúng không vi phạm các đặc tính của tập các hành vi chấp nhận của giao thức
Ở đây, ta sử dụng thuật ngữ kịch bản xâm nhập (intrusion scenario) Một
hệ thống phát hiện sự lạm dụng điển hình sẽ liên tục so sánh hành động của hệthống hiện tại với một tập các kịch bản xâm nhập để cố gắng dò ra kịch bản đang được tiến hành Hệ thống này có thể xem xét hành động hiện tại của hệthống được bảo vệ trong thời gian thực hoặc có thể là các bản ghi kiểm tra được ghi lại bởi hệ điều hành
Các kỹ thuật để phát hiện sự lạm dụng khác nhau ở cách thức mà chúng
mô hình hoá các hành vi chỉ định một sự xâm nhập Các hệ thống phát hiện sựlạm dụng thế hệ đầu tiên sử dụng các luật (rules) để mô tả những gì mà các nhà quản trị an ninh tìm kiếm trong hệ thống Một lượng lớn tập luật được tích luỹdẫn đến khó có thể hiểu và sửa đổi bởi vì chúng không được tạo thành từng nhóm một cách hợp lý trong một kịch bản xâm nhập
Để giải quyết khó khăn này, các hệ thống thế hệ thứ hai đưa ra các biểu diễn kịch bản xen kẽ, bao gồm các tổ chức luật dựa trên mô hình và các biểu diễn về phép biến đổi trạng thái Điều này sẽ mang tính hiệu quả hơn đối với người dùng hệ thống cần đến sự biểu diễn và hiểu rõ ràng về các kịch bản Hệthống phải thường xuyên duy trì và cập nhật để đương đầu với những kịch bản xâm nhập mới được phát hiện
Do các kịch bản xâm nhập có thể được đặc tả một cách chính xác, các hệthống phát hiện sự lạm dụng sẽ dựa theo đó để theo vết hành động xâm nhập
Trang 28Trong một chuỗi hành động, hệ thống phát hiện có thể đoán trước bước tiếp theo của hành động xâm nhập Bộ dò tìm phân tích thông tin hệ thống để kiểm tra bước tiếp theo, và khi cần sẽ can thiệp để làm giảm bởi tác hại có thể
2.2.2 Phát hiện sự bất thường
Dựa trên việc định nghĩa và mô tả đặc điểm của các hành vi có thểchấp nhận của hệ thống để phân biệt chúng với các hành vi không mong muốn hoặc bất thường, tìm ra các thay đổi, các hành vi bất hợp pháp
Như vậy, bộ phát hiện bất thường phải có khả năng phân biệt giữa những hiện tượng thông thường và hiện tượng bất thường Ranh giới giữa dạng thức chấp nhận được và dạng thức bất thường của đoạn mã và dữ liệu lưu trữ được định nghĩa rõ ràng (chỉ cần một bit khác nhau), còn ranh giới giữa hành vi hợp
ra hoặc một kẻ xâm nhập nào đó đã thay đổi nó Lúc này, bộ phát hiện tĩnh sẽđược thông báo để kiểm tra tính toàn vẹn dữ liệu
Cụ thể là: bộ phát hiện tĩnh đưa ra một hoặc một vài xâu bit cố định đểđịnh nghĩa trạng thái mong muốn của hệ thống Các xâu này giúp ta thu được một biểu diễn về trạng thái đó, có thể ở dạng nén Sau đó, nó so sánh biểu diễn trạng thái thu được với biểu diễn tương tự được tính toán dựa trên trạng thái hiện tại của cùng xâu bit cố định Bất kỳ sự khác nhau nào đều là thể hiện lỗi như hỏng phần cứng hoặc có xâm nhập
Biểu diễn trạng thái tĩnh có thể là các xâu bit thực tế được chọn để định nghĩa cho trạng thái hệ thống, tuy nhiên điều đó khá tốn kém về lưu trữ cũng
Trang 29sai khác để cảnh báo xâm nhập chứ không phải chỉ ra sai khác ở đâu nên ta có thể sử dụng dạng biểu diễn được nén để giảm chi phí Nó là giá trị tóm tắt tính được từ một xâu bit cơ sở Phép tính toán này phải đảm bảo sao cho giá trị tính được từ các xâu bit cơ sở khác nhau là khác nhau Có thể sử dụng các thuật toán checksums, message-digest (phân loại thông điệp), các hàm băm
Một số bộ phát hiện xâm nhập kết hợp chặt chẽ với meta-data (dữ liệu mô
tả các đối tượng dữ liệu) hoặc thông tin về cấu trúc của đối tượng được kiểm tra Ví dụ, meta-data cho một log file bao gồm kích cỡ của nó Nếu kích cỡ của log file tăng thì có thể là một dấu hiệu xâm nhập
2.2.2.2 Phát hiện động
Trước hết, ta đưa ra khái niệm hành vi của hệ thống (behavior) Hành vi của hệ thống được định nghĩa là một chuỗi các sự kiện phân biệt, ví dụ như rất nhiều hệ thống phát hiện xâm nhập sử dụng các bản ghi kiểm tra (audit record), sinh ra bởi hệ điều hành để định nghĩa các sự kiện liên quan, trong trường hợp này chỉ những hành vi mà kết quả của nó là việc tạo ra các bản ghi kiểm tra của
hệ điều hành mới được xem xét
Các sự kiện có thể xảy ra theo trật tự nghiêm ngặt hoặc không và thông tin phải được tích luỹ Các ngưỡng được định nghĩa để phân biệt ranh giới giữa việc sử dụng tài nguyên hợp lý hay bất thường Nếu không chắc chắn hành vi là bất thường hay không, hệ thống có thể dựa vào các tham số được thiết lập trong suốt quá trình khởi tạo liên quan đến hành vi
Ranh giới trong trường hợp này là không rõ ràng do đó có thể dẫn đến những cảnh báo sai Cách thông thường nhất để xác định ranh giới là sử dụng các phân loại thống kê và các độ lệch chuẩn Khi một phân loại được thiết lập, ranh giới có thể được vạch ra nhờ sử dụng một số độ lệch chuẩn Nếu hành vi nằm bên ngoài thì sẽ cảnh báo là có xâm nhập
Cụ thể là: các hệ thống phát hiện động thường tạo ra một profile (dữ liệu)
cơ sở để mô tả đặc điểm các hành vi bình thường, chấp nhận được Một dữ liệu bao gồm tập các đo lường được xem xét về hành vi, mỗi đại lượng đo lường gồm nhiều chiều:
Liên quan đến các lựa chọn: thời gian đăng nhập, vị trí đăng nhập,…
Trang 30 Các tài nguyên được sử dụng trong cả quá trình hay trên 1 đơn vị thời gian: chiều dài phiên giao dịch, số các thông điệp gửi ra mạng trong 1đơn vị thời gian…
Chuỗi biểu diễn các hành động
Sau khi khởi tạo dữ liệu cơ sở, quá trình phát hiện xâm nhập có thểđược bắt đầu Phát hiện động lúc này cũng giống như phát hiện tĩnh ở
đó chúng kiểm soát hành vi bằng cách so sánh mô tả đặc điểm hiện tại
về hành vi với mô tả ban đầu của hành vi được mong đợi (chính là dữliệu cơ sở), để tìm ra sự khác nhau Khi hệ thống phát hiện xâm nhập thực hiện, nó xem xét các sự kiện liên quan đến thực thể hoặc các hành động là thuộc tính của thực thể Và xây dựng thêm một dữ liệu hiện tại Các hệ thống phát hiện xâm nhập thế hệ trước phải phụ thuộc vào các bản ghi kiểm tra (audit record) để bắt giữ các sự kiện hoặc các hành động liên quan Các hệ thống sau này thì ghi lại một cơ sở dữ liệu đặc tả cho phát hiện xâm nhập Một số hệ thống hoạt động với thời gian thực, hoặc gần thời gian thực, quan sát trực tiếp sự kiện trong khi chúng xảy ra hơn là đợi hệ điều hành tạo ra bản ghi mô tả sự kiện
Khó khăn chính đối với các hệ thống phát hiện động là chúng phải xây dựng các dữ liệu cơ sở một cách chính xác, và sau đó nhận dạng hành vi sai trái nhờ các dữ liệu Các dữ liệu cơ sở có thể xây dựng nhờ việc giả chạy hệ thống hoặc quan sát hành vi người dùng thông thường qua một thời gian dài
Trang 31tấn công đã biết, hay các biến thể (thay
đổi nhỏ) của các dạng tấn công đã biết
Không phát hiện được các dạng tấn
công mới
Hiệu quả trong việc phát hiện các dạng tấn công mới mà một hệ thống phát hiện sự lạm dụng bỏ qua
Dễ cấu hình hơn do đòi hỏi ít hơn về
thu thập dữ liệu, phân tích và cập nhật
Khó cấu hình hơn vì đưa ra nhiều dữliệu hơn, phải có được một khái niệm toàn diện về hành vi đã biết hay hành
vi được mong đợi của hệ thống
Đưa ra kết luận dựa vào phép so
khớp mẫu (pattern matching)
Đưa ra kết quả dựa vào tương quan bằng thống kê giữa hành vi hực tế và hành vi được mong đợi của hệ thống (hay chính là dựa vào độ lệch giữa thông tin thực tế và ngưỡng cho phép)
Có thể kích hoạt một thông điệp cảnh
báo nhờ một dấu hiệu chắc chắn, hoặc
cung cấp dữ liệu hỗ trợ cho các dấu
hiệu khác
Có thể hỗ trợ việc tự sinh thông tin hệthống một cách tự động nhưng cần có thời gian và dữ liệu thu thập được phải
Trang 32 Management Server : là 1 thiết bị trung tâm dùng thu nhận các thông tin từSensor/Agent và quản lý chúng Một số Management Server có thể thực hiện việc phân tích các thông tin sự việc được cung cấp bởi Sensor/Agent
và có thể nhận dạng được các sự kiện này dù các Sensor / Agent đơn lẻkhông thể nhận diện
Database server : dùng lưu trữ các thông tin từ Sensor/Agent hay Management Server
Console : là 1 chương trình cung cấp giao diện cho IDS/IPS users/Admins
Có thể cài đăt trên một máy tính bình thường dùng để phục vụ cho tác vụquản trị, hoặc để giám sát, phân tích
2.3.2 Kiến trúc của hệ IDS/IPS
Sensor là yếu tố cốt lõi trong một hệ thống IDS/IPS , nó mà có trách nhiệm phát hiện các xâm nhập nhờ chứa những cơ cấu ra quyết định đối với sựxâm nhập Sensor nhận dữ liệu thô từ ba nguồn thông tin chính : kiến thức cơ bản ( knowledge base ) của IDS, syslog và audit trail Các thông tin này tạo cơ
sở cho quá trình ra quyết định sau này
Sensor được tích hợp với các thành phần chịu trách nhiệm thu thập dữ liệu
- một event generator Dựa vào các chính sách tạo sự kiện nó xác định chế độlọc thông tin thông báo sự kiện Các event generator (hệ điều hành, mạng, ứng dụng) tạo ra một chính sách nhất quán tập các sự kiện có thể là log hoặc audit của các sự kiện của hệ hống, hoặc các gói tin Điều này, thiết lập cùng với các thông tin chính sách có thể được lưu trữ hoặc là trong hệ thống bảo vệ hoặc bên ngoài Trong những trường hợp nhất định, dữ liệu không được lưu trữ mà được chuyển trực tiếp đến các phân tích (thông thường áp dụng với các gói packet) Các hệ thống IDS/IPS có thể được triển khai theo 2 hướng là tập trung và phân tán Một ví dụ cụ thể cho hướng triển khai tập trung là tích hợp IDS/IPS cùng với các thành phần an ninh khác như firewall Triển khai phân tán ( distributed IDS ) bao gồm nhiều hệ IDS/IPS trong 1 hệ thống mạng lớn, được kết nối với nhau nhằm nâng cao khả năng nhận diện chính xác xâm nhập và đưa
ra phản ứng thích hợp
Trang 33Hình 5: Các thành phần chính
2.4 Phân loại IDS/IPS
Cách thông thường nhất để phân loại các hệ thống IDS (cũng như IPS) là dựa vào đặc điểm của nguồn dữ liệu thu thập được Trong trường hợp này, hệthống IDS được chia thành các loại sau:
Host-based IDS (HIDS): Sử dụng dữ liệu kiểm tra từ một máy trạm đơn để
phát hiện xâm nhập
Network-based IDS (NIDS): Sử dụng dữ liệu trên toàn bộ lưu thông mạng,
cùng với dữ liệu kiểm tra từ một hoặc một vài máy trạm để phát hiện xâm nhập
Trang 34
2.4.1 Network based IDS/IPS (NIDS)
Hình 5: Mô hình NIDS
NIDS thường bao gồm có hai thành phần logic :
Bộ cảm biến – Sensor : đặt tại một đoạn mạng, kiểm soát các cuộc lưu thông nghi ngờ trên đoạn mạng đó
Trạm quản lý : nhận các tín hiệu cảnh báo từ bộ cảm biến và thông báo cho một điều hành viên
Một NIDS truyền thống với hai bộ cảm biến trên các đoạn mạng khác nhau cùng giao tiếp với một trạm kiểm soát
Thường dùng để giám sát, phân tích hoạt động hệ thống mạng trong 1 segment, phân tích mạng, các giao thức ứng dụng từ đó nhận diện các hoạt động khả nghi Thường được triển khai ở các biên mạng (network border ) Hệ thống NIDS/IPS thường được triển khai trong 1 đoạn mạng con riêng phục vụ cho mục đích quản trị hệ thống (management network), trong trường hợp không có mạng quản trị riêng thì 1 mạng riêng ảo (VLAN ) là cần thiết để bảo vệ các kết nối giữa các hệ NIDS/IPS
Bên cạnh việc lựa chọn vị trí mạng phù hợp cho các thành phần của hệNIDS/IPS, lựa chọn vị trí phù hợp cho các Sensor cũng là 1 vấn đề quan trọng ảnh hưởng đến khả năng detection của hệ NIDS/IPS Trong hệ NIDS/IPS, các Sensor thường gặp ở 2 dạng là tích hợp phần cứng (appliance-based) và phần
Trang 35Người ta thường sử dụng 2 kiểu triển khai sau:
Thẳng hàng ( Inline ): 1 Sensor thẳng hàng được đặt sao cho các lưu lượng
trên mạng mà nó giám sát đi xuyên qua nó giống như trong trường hợp cùa firewall Thực tế là 1 số Sensor thẳng hàng được sử dụng như 1 loại lai giữa firewall và NIDS/IPS, một số khác là NIDS thuần túy Động cơ chính của việc triển khai Sensor kiểu thẳng hàng là nó có thể dừng các tấn công bằng việc chặn lưu lượng mạng ( blocking network traffic ) Sensor thẳng hàng thường được triển khai tại vị trí tương tự với firewall và các thiết bị bảo mật khác: ranh giới giữa các mạng Sensor thẳng hàng còn có thể được triển khai tại các vùng mạng kém bảo mật hơn hoặc phía trước các thiết bị bảo mật hoặc firewall để bảo vệ và giảm tải cho các thiết bị này
Hình 6: Mô hình IDS inline
Thụ động ( Passive ): Sensor kiểu thụ động được triển khai sao cho nó có
thể giám sát 1 bản sao của các lưu lượng trên mạng Thường được triển khai giám sát các vị trí quan trọng trong mạng như ranh giới giữa các mạng, các đoạn mạng quan trọng ví dụ như Server farm hoặc DMZ Sensor thụ động có thể giám sát lưu lượng mạng qua nhiều cách như Spanning port ( hoặc Mirror port ), Network tap hoặc IDS loadbalancer
Trang 36Hình 7: Mô hình IDS pasive
Hệ thống NIDS/IPS cung cấp các khả năng về bảo mật sau:
Khả năng thu thập thông tin:
Trang 37 Khả năng ngăn chặn
Kiểu thụ động: ngắt phiên TCP hiện tại
Kiểu thẳng hàng: thực hiện tác vụ firewall thẳng hàng, điều tiết băng thông sử dụng, loại bỏ các nội dung gây hại
Ngoài ra chức năng ngăn chặn còn có thể thay đổi cấu hình của 1 số thiết
bị bảo mật cũng như thực thi các ứng dụng thứ 3 hoặc các script
Trong thực tế, NIDS/IPS thường được sử dụng tại biên mạng nhằm phát hiện các dấu hiệu tấn công và hạn chế các tấn công này ở mức network Đối với những máy chủ hoặc máy client quan trọng, việc bổ sung HIDS cho các máy này là cần thiết để tăng cường khả năng bảo mật khi kết hợp với các hệ NIDS trong cùng hệ thống
Các sản phẩm đại diện : Snort, ISS, Juniper IDS, Tipping Point IDS, Trustware ipAgent, Cisco IPS, Reflex Security
Ưu điểm:
Chi phí thấp : Do chỉ cần cài đặt NIDS ở những vị trí trọng yếu là có thểgiám sát lưu lượng toàn mạng nên hệ thống không cần phải nạp các phần mềm và quản lý trên các máy toàn mạng
Phát hiện được các cuộc tấn công mà HIDS bỏ qua: Khác với HIDS, NIDS kiểm tra header của tất cả các gói tin vì thế nó không bỏ sót các dấu hiệu xuất phát từ đây Ví dụ: nhiều cuộc tấn công DoS, TearDrop (phân nhỏ) chỉ bị phát hiện khi xem header của các gói tin lưu chuyển trên mạng
Khó xoá bỏ dấu vết (evidence): Các thông tin lưu trong log file có thể bị
kẻ đột nhập sửa đổi để che dấu các hoạt động xâm nhập, trong tình huống này HIDS khó có đủ thông tin để hoạt động NIDS sử dụng lưu thông hiện hành trên mạng để phát hiện xâm nhập Vì thế, kẻ đột nhập không thể xoá
bỏ được các dấu vết tấn công Các thông tin bắt được không chỉ chứa cách thức tấn công mà cả thông tin hỗ trợ cho việc xác minh và buộc tội kẻ đột nhập
Trang 38 Phát hiện và đối phó kịp thời : NIDS phát hiện các cuộc tấn công ngay khi xảy ra, vì thế việc cảnh báo và đối phó có thể thực hiện được nhanh hơn
VD : Một hacker thực hiện tấn công DoS dựa trên TCP có thể bị NIDS phát hiện và ngăn chặn ngay bằng việc gửi yêu cầu TCP reset nhằm chấm dứt cuộc tấn công trước khi nó xâm nhập và phá vỡ máy bị hại
Có tính độc lập cao: Lỗi hệ thống không có ảnh hưởng đáng kể nào đối với công việc của các máy trên mạng Chúng chạy trên một hệ thống chuyên dụng dễ dàng cài đặt; đơn thuần chỉ mở thiết bị ra, thực hiện một vài sự thay đổi cấu hình và cắm chúng vào trong mạng tại một vị trí cho phép nó kiểm soát các cuộc lưu thông nhạy cảm
Nhược điểm
Bị hạn chế với Switch: Nhiều lợi điểm của NIDS không phát huy được trong các mạng chuyển mạch hiện đại Thiết bị switch chia mạng thành nhiều phần độc lập vì thế NIDS khó thu thập được thông tin trong toàn mạng Do chỉ kiểm tra mạng trên đoạn mà nó trực tiếp kết nối tới, nó không thể phát hiện một cuộc tấn công xảy ra trên các đoạn mạng khác Vấn đề này dẫn tới yêu cầu tổ chức cần phải mua một lượng lớn các bộcảm biến để có thể bao phủ hết toàn mạng gây tốn kém về chi phí cài đặt
Hạn chế về hiệu năng: NIDS sẽ gặp khó khăn khi phải xử lý tất cả các gói tin trên mạng rộng hoặc có mật độ lưu thông cao, dẫn đến không thể phát hiện các cuộc tấn công thực hiện vào lúc "cao điểm" Một số nhà sản xuất
đã khắc phục bằng cách cứng hoá hoàn toàn IDS nhằm tăng cường tốc độcho nó Tuy nhiên, do phải đảm bảo về mặt tốc độ nên một số gói tin được
bỏ qua có thể gây lỗ hổng cho tấn công xâm nhập
Tăng thông lượng mạng: Một hệ thống phát hiện xâm nhập có thể cần truyền một dung lượng dữ liệu lớn trở về hệ thống phân tích trung tâm, có nghĩa là một gói tin được kiểm soát sẽ sinh ra một lượng lớn tải phân tích
Để khắc phục người ta thường sử dụng các tiến trình giảm dữ liệu linh hoạt để giảm bớt số lượng các lưu thông được truyền tải Họ cũng thường thêm các chu trình tự ra các quyết định vào các bộ cảm biến và sử dụng
Trang 39truyền thông hơn là thực hiện các phân tích thực tế Điểm bất lợi là nó sẽcung cấp rất ít thông tin liên quan cho các bộ cảm biến; bất kỳ bộ cảm biến nào sẽ không biết được việc một bộ cảm biến khác dò được một cuộc tấn công Một hệ thống như vậy sẽ không thể dò được các cuộc tấn công hiệp đồng hoặc phức tạp.
Một hệ thống NIDS thường gặp khó khăn trong việc xử lý các cuộc tấn công trong một phiên được mã hoá Lỗi này càng trở nên trầm trọng khi nhiều công ty và tổ chức đang áp dụng mạng riêng ảo VPN
Một số hệ thống NIDS cũng gặp khó khăn khi phát hiện các cuộc tấn công mạng từ các gói tin phân mảnh Các gói tin định dạng sai này có thể làm cho NIDS hoạt động sai và đổ vỡ
2.4.2 Host-based IDS/IPS (HIDS)
Host-based IDS tìm kiếm dấu hiệu của xâm nhập vào một host cục bộ,thường sử dụng các cơ chế kiểm tra và phân tích các thông tin được logging Nó tìm kiếm các hoạt động bất thường như login, truy nhập file không thích hợp, bước leo thang các đặc quyền không được chấp nhận Kiến trúc IDS này
thường dựa trên các luật (rule-based) để phân tích các hoạt động Ví dụ: đặc quyền của người sử dụng cấp cao chỉ có thể đạt được thông qua lệnh su-select user, như vậy những cố gắng liên tục để login vào account root có thể được coi
là một cuộc tấn công
Được triển khai trên từng host,thông thường là 1 software hoặc 1 agent, mục tiêu là giám sát các tính chất cơ bản, các sự kiện liên quan đến các thành phần này nhằm nhận diện các hoạt động khả nghi Host-based IDS/IPS thường được triển khai trên các host có tính chất quan trọng ( public servers, sensitive data servers ), hoặc 1 dịch vụ quan trọng (trường hợp đặc biệt này được gọi là application-based IDS/IPS)
Quá trình triển khai các agent HIDS/IPS thường đơn giản do chúng là một phần mềm được cài đặt trực tiếp lên host Application-based agent thường được triển khai thẳng hàng ngay phía trước host mà chúng bảo vệ
Trang 40Hình 8: Mô hình HIDS
Một trong những lưu ý quan trọng trong việc triển khai hệ thống based IDS/IPS là cân nhắc giữa việc cài đặt agent lên host hay sử dụng agent-based appliances Trên phương diện phát hiện và ngăn chặn xâm nhập, việc cài đặt agent lên host được khuyến khích vì agent tương tác trực tiếp với các đặc tính của host và qua đó có thể phát hiện và ngăn chặn 1 cách hiệu quả hơn Tuy nhiên, do agent thường chỉ tương thích với 1 số hệ điều hành nhất định nên trong trường hợp này người ta sử dụng thiết bị Một lý do khác để sử dụng thiết
Host-bị là việc cài đặt agent lên host có thể ảnh hưởng đến performance của host
Hệ thống HIDS/IPS cung cấp các khả năng bảo mật sau:
Khả năng ghi log
Khả năng phát hiện
Phân tích mã ( phân tích hành vi mã, nhận diện buffer-overflow, giám sát hàm gọi hệ thống, giám sát danh sách ứng dụng và hàm thư viện )
Phân tích và lọc lưu lượng mạng
Giám sát filesystem ( kiểm tra tính toàn vẹn,thuộc tính,truy cập của file )
Phân tích log
Giám sát cấu hình mạng