1. Trang chủ
  2. » Công Nghệ Thông Tin

Các hệ thống phát hiện xâm nhập dựa trên dấu hiệu

21 904 7

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 657,27 KB

Nội dung

I. TỔNG QUAN HỆ THỐNG IDS 1. Khái niệm về hệ thống phát hiện xâm nhập IDS Hệ thống phát hiện xâm nhập – IDS (Intrusion Detection System) là một hệ thống có nhiệm vụ giám sát các luồng dữ liệu (lưu lượng) đang lưu thông trên mạng, có khả năng phát hiện những hành động khả nghi, những xâm nhập trái phép cũng như khai thác bất hợp pháp nguồn tài nguyên của hệ thống mà từ đó có thể dẫn đến xâm hại tính toàn ổn định,tòan vẹn và sẵn sàng của hệ thống. IDS có thể phân biệt được những cuộc tấn công xuất phát từ bên ngoài hay từ chính bên trong hệ thống bằng cách dựa vào một database dấu hiệu đặc biệt về những cuộc tấn công (smurf attack, buffer overflow, packet sniffers….). Khi một hệ thống IDS có khả năng ngăn chặn các cuộc tấn thì nó được gọi là hệ thống ngăn chặn xâm nhập – IPS (Intrusion Prevention System). Có rất nhiều công cụ IDS, trong đó Snort được sử dụng rất nhiều vì khả năng tương thích có thể hỗ trợ cài đặt trên cả hai môi trường Window và Linux. Khi Snort phát hiện những dấu hiệu của một cuộc tấn công, tùy thuộc vào cấu hình và những qui tắc do người quản trị qui định (Snort Rule) mà Snort có thể đưa ra những hành động khác nhau, như gửi cảnh báo đến người quản trị hay ghi log file,loại bỏ các gói tin xâm nhập hệ thống…. 2. Chức năng của IDS Hệ thống phát hiện xâm nhập cho phép các tổ chức bảo vệ hệ thống của họ khỏi những đe dọa với việc gia tăng kết nối mạng và sự tin cậy của hệ thống thông tin. Những đe dọa đối với an ninh mạng ngày càng trở nên cấp thiết đã đặt ra câu hỏi cho các nhà an ninh mạng chuyên nghiệp có nên sử dụng hệ thống phát hiện xâm nhập trừ khi những đặc tính của hệ thống phát hiện xâm nhập là hữu ích cho họ, bổ sung những điểm yếu của hệ thống khác…IDS có được chấp nhận là một thành phần thêm vào cho mọi hệ thống an toàn hay không vẫn là một câu hỏi của nhiều nhà quản trị hệ thống. Có nhiều tài liệu giới thiệu về những chức năng mà IDS đã làm được những có thể đưa ra vài lý do tại sao nên sử dụng hệ thống IDS: • Bảo vệ tính toàn vẹn (integrity) của dữ liệu, bảo đảm sự nhất quán của dữ liệu trong hệ thống. Các biện pháp đưa ra ngăn chặn được việc thay đổi bất hợp pháp hoặc phá hoại dữ liệu. • Bảo vệ tính bí mật, giữ cho thông tin không bị lộ ra ngoài. Bảo vệ tính khả dụng, tức là hệ thống luôn sẵn sàng thực hiện yêu cầu truy nhập thông tin của người dùng hợp pháp. • Bảo vệ tính riêng tư, tức là đảm bảo cho người sử dụng khai thác tài nguyên của hệ thống theo đúng chức năng, nhiệm vụ đã được phân cấp, ngăn chặn được sự truy nhập thông tin bất hợp pháp. • Cung cấp thông tin về sự xâm nhập, đưa ra những chính sách đối phó, khôi phục, sửa chữa… Nói tóm lại ta có thể tóm tắt IDS như sau: Chức năng quan trọng nhất là: giám sát – cảnh báo – bảo vệ Giám sát: lưu lượng mạng và các hoạt động khả nghi. Cảnh báo: báo cáo về tình trạng mạng cho hệ thống và nhà quản trị.

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

Viện Công nghệ thông tin và truyền thông

An Ninh Mạng

ĐỀ TÀI : Các hệ thống phát hiện xâm nhập dựa

trên dấu hiệu

Nhóm sinh viên thực hiện :

Trang 2

I TỔNG QUAN HỆ THỐNG IDS

1 Khái niệm về hệ thống phát hiện xâm nhập IDS

Hệ thống phát hiện xâm nhập – IDS (Intrusion Detection System) là một hệthống có nhiệm vụ giám sát các luồng dữ liệu (lưu lượng) đang lưu thông trên mạng, có khả năng phát hiện những hành động khả nghi, những xâm nhập trái phép cũng như khaithác bất hợp pháp nguồn tài nguyên của hệ thống mà từ đó có thể dẫn đến xâm hạitính toàn ổn định,tòan vẹn và sẵn sàng của hệ thống

IDS có thể phân biệt được những cuộc tấn công xuất phát từ bên ngoài hay từchính bên trong hệ thống bằng cách dựa vào một database dấu hiệu đặc biệt về những

Trang 3

cuộc tấn công (smurf attack, buffer overflow, packet sniffers….) Khi một hệ thống

IDS có khả năng ngăn chặn các cuộc tấn thì nó được gọi là hệ thống ngăn chặn xâmnhập – IPS (Intrusion Prevention System)

Có rất nhiều công cụ IDS, trong đó Snort được sử dụng rất nhiều vì khả năngtương thích có thể hỗ trợ cài đặt trên cả hai môi trường Window và Linux Khi Snortphát hiện những dấu hiệu của một cuộc tấn công, tùy thuộc vào cấu hình và những quitắc do người quản trị qui định (Snort Rule) mà Snort có thể đưa ra những hành độngkhác nhau, như gửi cảnh báo đến người quản trị hay ghi log file,loại bỏ các gói tin

xâm nhập hệ thống…

2 Chức năng của IDS

Hệ thống phát hiện xâm nhập cho phép các tổ chức bảo vệ hệ thống của họ khỏi những đedọa với việc gia tăng kết nối mạng và sự tin cậy của hệ thống thông tin Những đe dọa đốivới an ninh mạng ngày càng trở nên cấp thiết đã đặt ra câu hỏi cho các nhà an ninh mạng chuyên nghiệp có nên sử dụng hệ thống phát hiện xâm nhập trừ khi những đặc tính của hệthống phát hiện xâm nhập là hữu ích cho họ, bổ sung những điểm yếu của hệ thống khác…IDS có được chấp nhận là một thành phần thêm vào cho mọi hệ thống an toàn hay không vẫn là một câu hỏi của nhiều nhà quản trị hệ thống Có nhiều tài liệu giới thiệu về những chức năng mà IDS đã làm được những có thể đưa ra vài lý do tại sao nên sử dụng

hệ thống IDS:

• Bảo vệ tính toàn vẹn (integrity) của dữ liệu, bảo đảm sự nhất quán của dữ liệu trong hệ thống Các biện pháp đưa ra ngăn chặn được việc thay đổi bất hợp pháp hoặc phá hoại dữ liệu

• Bảo vệ tính bí mật, giữ cho thông tin không bị lộ ra ngoài Bảo vệ tính khả dụng, tức là

hệ thống luôn sẵn sàng thực hiện yêu cầu truy nhập thông tin của người dùng hợp pháp

• Bảo vệ tính riêng tư, tức là đảm bảo cho người sử dụng khai thác tài nguyên của hệ thống theo đúng chức năng, nhiệm vụ đã được phân cấp, ngăn chặn được sự truy nhập thông tin bất hợp pháp

• Cung cấp thông tin về sự xâm nhập, đưa ra những chính sách đối phó, khôi phục, sửa chữa…

Nói tóm lại ta có thể tóm tắt IDS như sau:

- Chức năng quan trọng nhất là: giám sát – cảnh báo – bảo vệ

Giám sát: lưu lượng mạng và các hoạt động khả nghi

Cảnh báo: báo cáo về tình trạng mạng cho hệ thống và nhà quản trị

Bảo vệ: Dùng những thiết lập mặc định và sự cấu hình từ nhà quản trị mà có những hành động thiết thực chống lại kẻ xâm nhập và phá hoại

3 Kiến trúc của hệ thống phát hiện xâm nhập

Kiến trúc của một hệ thống IDS bao gồm các thành phần chính sau: Thành

phần thu thập gói tin (information collection), thành phần phân tích gói tin (detection) và thành phần phản hồi (respotion) Trong ba thành phần này, thành phần phân tích gói tin là quan trọng nhất và bộ cảm biến (sensor) đóng vai trò quan quyết định nên cần được phân tích để hiểu rõ hơn về kiến trúc của một hệ thống phát hiện xâm nhập

Trang 4

Bộ cảm biến được tích hợp với thành phần sưu tập dữ liệu Bộ tạo sự kiện Cáchsưu tập này được xác định bởi chính sách tạo sự kiện để định nghĩa chế độ lọc thông tin

sự kiện Bộ tạo sự kiện (hệ điều hành, mạng, ứng dụng) cung cấp một số chính sáchthích hợp cho các sự kiện, có thể là một bản ghi các sự kiện của hệ thống hoặc các góimạng Số chính sách này cùng với thông tin chính sách có thể được lưu trong hệ thốngđược bảo vệ hoặc bên ngoài

Vai trò của bộ cảm biến là dùng để lọc thông tin và loại bỏ dữ liệu không tươngthích đạt được từ các sự kiện liên quan với hệ thống bảo vệ, vì vậy có thể phát hiện được các hành động nghi ngờ Bộ phân tích sử dụng cơ sở dữ liệu chính sách phát hiện cho mục này Ngoài ra còn có các thành phần: dấu hiệu tấn công, profile hành vi thông thường, các tham số cần thiết (ví dụ: các ngưỡng) Thêm vào đó, cơ sở dữ liệu giữ các tham số cấu hình, gồm có các chế độ truyền thông với module đáp trả Bộ cảm biến cũng có cơ sở dữ liệu của riêng nó, gồm dữ liệu lưu về các xâm phạm phức tạptiềm ẩn (tạo ra từ nhiều hành động khác nhau)

IDS có thể được sắp đặt tập trung (ví dụ như được tích hợp vào trong tường lửa) hoặc phân tán Một IDS phân tán gồm nhiều IDS khác nhau trên một mạng lớn, tất cả chúng truyền thông với nhau Nhiều hệ thống tinh vi đi theo nguyên lý cấu trúc một tác nhân, nơi các module nhỏ được tổ chức trên một host trong mạng được bảo vệ

4 Phân loại hệ thống phát hiện xâm nhập

Có hai loại cơ bản là: Network-based IDS và Host-based IDS

4.1 Network-based IDS (NIDS)

NIDS là một hệ thống phát hiện xâm nhập bằng cách thu thập dữ liệu của các gói tin lưu thông trên các phương tiện truyền dẫn như (cables, wireless) bằng cách sử dụng các card giao tiếp.Khi một gói dữ liệu phù hợp với qui tắc của hệ thống, một cảnh báo được tạo ra để thông báo đến nhà quản trị và các file log được lưu vào cơ sở dữ liệu

a Lợi thế của NIDS

Trang 5

- Quản lý được một phân đoạn mạng (network segment)

- Trong suốt với người sử dụng và kẻ tấn công

- Cài đặt và bảo trì đơn giản, không làm ảnh hưởng đến mạng

- Tránh được việc bị tấn công dịch vụ đến một host cụ thể

- Có khả năng xác định được lỗi ở tầng network

- Độc lập với hệ điều hành

b Hạn chế của NIDS

- Có thể xảy ra trường hợp báo động giả, tức là không có dấu hiệu bất thường mà IDS vẫn báo

- Không thể phân tích được các lưu lượng đã được mã hóa như SSH, IPSec, SSL…

- NIDS đòi hỏi phải luôn được cập nhật các dấu hiệu tấn công mới nhất để thực sự hoạt động hiệu quả

- Không thể cho biết việc mạng bị tấn công có thành công hay không, để người quản trị tiến hành bảo trì hệ thống

- Một trong những hạn chế là giới hạn băng thông Những bộ thu thập dữ liệu phải thu thập tất cả lưu lượng mạng, sắp xếp lại và phân tích chúng Khi tốc độ mạng tăng lên thìkhả năng của bộ thu thập thông tin cũng vậy Một giải pháp là phải đảm bảo cho mạng được thiết kế chính xác

Một cách mà hacker cố gắng che đậy cho hoạt động của họ khi gặp các hệ thống IDS là phân mảnh dữ liệu gói tin Mỗi giao thức có một kích cỡ gói dữ liệu có hạn, nếu

dữ liệu truyền qua mạng truyền qua mạng lớn hơn kích cỡ này thì dữ liệu bị phân mảnh.Phân mảnh đơn giản là quá trình chia nhỏ dữ liệu Thứ tự sắp xếp không thành vấn đề miễn là không bị chồng chéo dữ liệu, bộ cảm biến phải tái hợp lại chúng

Hacker cố gắng ngăn chặn phát hiện bằng cách gởi nhiều gói dữ liệu phân mảnh chồng chéo Một bộ cảm biến không phát hiện được các hoạt động xâm nhập nếu không sắp xếp gói tin lại một cách chính xác

Trang 6

4.2Host-based IDS (HIDS)

HIDS là hệ thống phát hiện xâm nhập được cài đặt trên các máy tính (host) HIDS cài đặt trên nhiều kiểu máy chủ khác nhau, trên máy trạm làm việc hoặc máy notebook HIDS cho phép thực hiện một cách linh hoạt trên các phân đoạn mạng

mà NIDS không thực hiện được Lưu lượng đã gửi đến host được phân tích và chuyển qua host nếu chúng không tiềm ẩn các mã nguy hiểm HIDS cụ thể hơn với các nền ứng dụng và phục vụ mạnh mẽ cho hệ điều hành Nhiệm vụ chính của HIDS là giám sát sự thay đổi trên hệ thống HIDS bao gồm các thàng phần chính

a Ưu điểm của HIDS

- Có khả năng xác định các user trong hệ thống liên quan đến sự kiện

- HIDS có khả năng phát hiện các cuộc tấn công diễn ra trên một máy, NIDSkhông có khả năng này

- Có khả năng phân tích các dữ liệu đã được mã hóa

- Cung cấp các thông tin về host trong lúc cuộc tấn công đang diễn ra trên host

b Hạn chế của HIDS

- Thông tin từ HIDS sẽ không còn đáng tin cậy ngay sau khi cuộc tấn công vào host này thành công

- Khi hệ điều hành bị thỏa hiệp tức là HIDS cũng mất tác dụng

- HIDS phải được thiết lập trên từng host cần giám sát

- HIDS không có khả năng phát hiện việc thăm dò mạng (Nmap, Netcat…) ·HIDS cần tài nguyên trên host để hoạt động

- HIDS có thể không phát huy được hiệu quả khi bị tấn công từ chối dịch vụ DoS

- Đa số được phát triển trên hệ điều hành Window Tuy nhiên cũng có một số chạy trên Linux hoặc Unix

Vì HIDS cần được cài đặt trên các máy chủ nên sẽ gây khó khăn cho nhà quản trị khi phải nâng cấp phiên bản, bảo trì phần mềm và cấu hình Gây mất nhiều

Trang 7

thời gian và phứt tạp Thường hệ thống chỉ phân tích được những lưu lượng trên máy chủ nhận được, còn các lưu lượng chống lại một nhóm máy chủ, hoặc các hành động thăm dò như quét cổng thì chúng không phát huy được tác dụng Nếu máy chủ

bị thỏa hiệp hacker có thể tắt được HIDS trên máy đó Khi đó HIDS sẽ bị vô hiệu hóa

Do đó HIDS phải cung cấp đầy đủ khả năng cảnh báo Trong môi trường hỗn tạpđiều này có thể trở thành vấn đề nếu HIDS phải tương thích với nhiều hệ điều hành

Do đó, lựa chọn HIDS cũng là vấn đề quan trọng

Trang 9

II.Tổng quan về Snort

1 Giới thiệu về snort

Snort là một NIDS được Martin Roesh phát triển dưới mô hình mã nguồn mở TuySnort miễn phí nhưng nó lại có rất nhiều tính năng tuyệt vời mà không phải sản phẩmthương mại nào cũng có thể có được Với kiến trúc thiết kế theo kiểu module, người dùng

có thể tự tăng cường tính năng cho hệ thống Snort của mình bằng việc cài đặt hay viếtthêm mới các module Cơ sở dữ liệu luật của Snort đã lên tới 2930 luật và được cập nhậtthường xuyên bởi một cộng đồng người sử dụng Snort có thể chạy trên nhiều hệ thốngnền như Windows, Linux, OpenBSD, FreeBSD, NetBSD, Solaris, HP-UX, AIX, IRIX,MacOS

Bên cạnh việc có thể hoạt động như một ứng dụng thu bắt gói tin thông thường,Snort còn có thể được cấu hình để chạy như một NIDS Snort hỗ trợ khả năng hoạt độngtrên các giao thức sau: Ethernet, 802.11,Token Ring, FDDI, Cisco HDLC, SLIP, PPP, và

PF của OpenBSD

2 Kiến trúc của Snort

Snort có 5 thành phần chính như sau:

- Bộ giải mã gói tin - Packet Decoder

- Các bộ tiền xử lý - PreProcessers

- Máy phát hiện - Detection Engine

- Hệ thống cảnh báo và ghi dấu - Logging and Alerting System

- Môđun xuất - Output Modules

Sơ đồ sau biểu diễn quan hệ giữa các thành phần của Snort Tại đó các gói dữ liệugiao tiếp từ mạng Internet vào trong hệ thống được đi qua Packet decoder Tại mỗi thànhphần các gói tin được xử lý rồi truyền kết quả cho thành phần kế tiếp trong hệ thống.Output modul sẽ loại bỏ các gói tin, ghi log hay sinh ra cảnh báo

Trang 10

Snort có 4 chế độ hoạt động như sau:

- Sniffer mode: ở chế độ này snort sẽ lắng nghe và đọc các gói tin trên mạng sau đó

sẽ trình bày kết quả trên giao diện hiển thị

- Packet Logger mode: lưu trữ các gói tin trong các tập tin log.

- Network instruction detect system (NIDS) : đây là chế dộ họat động mạnh mẽ và

được áp dụng nhiều nhất, khi họat động ở NIDS mode Snort sẽ phân tích các góitin luân chuyển trên mạng và so sánh với các thông tin được định nghĩa của ngườidùng để từ đó có những hành động tương ứng như thông báo cho quản trị mạngkhi xảy ra tình huống quét lỗi do các hacker /attacker tiến hành hay cảnh báovirus

- Inline mode: khi triển khai snort trên linux thì chúng ta có thể cấu hình snort để

phân tích các gói tin từ iptables thay vì libpcap do đó iptable có thể drop hoặc passcác gói tin theo snort rule

Trang 11

2.1 Module giải mã gói tin

Snort chỉ sử dụng thư viện pcap để bắt mọi gói tin trên mạng lưu thông qua hệ thống

Một gói tin sau khi được giải mã sẽ đưa tiếp vào module tiền xử lý

Trang 12

có gói tin ban đầu Module tiền xử lý giúp Snort có thể hiểu được các phiên làm việc khác nhau.

 Giải mã và chuẩn hóa giao thức (decode/normalize): công việc phát hiện xâm nhậpdựa trên dấu hiệu nhận dạng nhiều khi thất bại khi kiểm tra các giao thức có dữ liệu có thể được biểu diễn dưới nhiều dạng khác nhau Ví dụ: một Web server có thể nhận nhiều dạng URL: URL viết dưới dạng hexa/unicode hay URL chấp nhận dấu / hay Nếu Snort chỉ thực hiện đơn thuần việc so sánh dữ liệu với dấu hiệu nhận dạng sẽ xảy ra tình trạng bỏ sót hành vi xâm nhập Do vậy, 1 số Module tiền

xử lý của Snort phải có nhiệm vụ giải mã và chỉnh sửa, sắp xếp lại các thông tin đầu vào

 Phát hiện các xâm nhập bất thường (nonrule/anormal): các plugin dạng này

thường để xử lý với các xâm nhập không thể hoặc rất khó phát hiện bằng các luật thông thường Phiển bản hiện tại của Snort có đi kèm 2 plugin giúp phát hiện xâm nhập bất thường đó là portscan và bo (backoffice) Portscan dùng để đưa ra cảnh báo khi kẻ tấn công thực hiện quét cổng để tìm lỗ hổng Bo dùng để đưa ra cảnh báo khi hệ thống nhiễm trojan backoffice

2.3 Module phát hiện

Đây là module quan trọng nhất của Snort Nó chịu trách nhiệm phát hiện các dấu hiệuxâm nhập Module phát hiện sử dụng các luật được định nghĩa trước để so sánh với dữliệu thu thập được, từ đó xác định xem có xâm nhập xảy ra hay không

Một vấn đề quan trọng đối với module phát hiện và vấn đề thời gian xử lý gói tin: mộtIDS thường nhận rất nhiều gói tin và bản thân nó cũng có rất nhiều luật xử lý Khi lưulượng mạng quá lớn có thể xảy ra việc bỏ sót hoặc không phản hồi đúng lúc Khả năng

xử lý của module phát hiện phụ thuộc vào nhiều yếu tố: số lượng các luật, tốc độ hệthống, băng thông mạng.Một module phát hiện có khả năng tách các phần của gói tin ra

và áp dụng luật lên từng phần của gói tin:

 IP header

 Header ở tầng transport: TCP, UDP

Trang 13

 Header ở tầng application: DNS, HTTP, FTP …

 Phần tải của gói tin

Do các luật trong Snort được đánh số thứ tự ưu tiên nên 1 gói tin khi bị phát hiện bởinhiều luật khác nhau, cảnh báo được đưa ra theo luật có mức ưu tiên cao nhất

2.4 Môđun log và cảnh báo

Tùy thuộc vào việc môđun Phát hiện có nhận dạng đuợc xâm nhập hay không mà góitin có thể bị ghi log hoặc đưa ra cảnh báo Các file log là các file text dữ liệu trong đó cóthể được ghi dưới nhiều định dạng khác nhau chẳng hạn tcpdump

2.5 Môđun kết xuất thông tin

Môđun này có thể thực hiện các thao tác khác nhau tùy theo việc bạn muốn lưu kếtquả xuất ra như thế nào Tùy theo việc cấu hình hệ thống mà nó có thể thực hiện các côngviệc như là:

• Ghi log file

Trang 14

• Ghi syslog: syslog và một chuẩn lưu trữ các file log được sử dụng rất nhiều trêncác hệ thống Unix, Linux.

• Ghi cảnh báo vào cơ sở dữ liệu

• Tạo file log dạng xml: việc ghi log file dạng xml rất thuận tiện cho việc trao đổi vàchia sẻ dữ liệu

• Cấu hình lại Router, firewall

• Gửi các cảnh báo được gói trong gói tin sử dụng giao thức SNMP Các gói tindạng SNMP này sẽ được gửi tới một SNMP server từ đó giúp cho việc quản lý cáccảnh báo và hệ thống IDS một cách tập trung và thuận tiện hơn

• Gửi các thông điệp SMB (Server Message Block) tới các máy tính Windows.Nếu không hài lòng với các cách xuất thông tin như trên, ta có thể viết các môđun kết xuất thông tin riêng tuỳ theo mục đích sử dụng

3.Bộ luật của Snort

3.1 Cấu trúc luật của Snort

Tìm hiểu một ví dụ:

Ngày đăng: 12/01/2016, 19:36

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w