Tải bản đầy đủ (.pdf) (75 trang)

Hệ thống phát hiện xâm nhập trên mạng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.41 MB, 75 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
  

BÀI TẬP LỚN
AN TOÀN PHẦN MỀM VÀ HỆ THỐNG
Đề tài:

Hệ thống phát hiện xâm nhập trên mạng

Giáo viên hướng dẫn : Ths. Đỗ Văn Uy
Sinh viên thực hiện

Lớp :

:

1. Nguyễn Lan Anh

20080063

2. Trần văn Bích

20080215

3. Nguyễn Chí Công

20080316

4. Nguyễn Văn Chuyên


20080304

5. Nguyễn Khắc Hứng

20081281

Công nghệ phần mềm K53

HÀ NỘI – 2012


MỤC LỤC
LỜI MỞ ĐẦU ...................................................................................................................... 3
PHẦN I: TỔNG QUAN VỀ AN NINH MẠNG ................................................................. 4
I.

Các khái niệm ........................................................................................................ 4

II.

Các mối đe dọa hệ thống ........................................................................................ 9
1.

Mối đe dọa không có cấu trúc ( Untructured threat) ......................................... 9

2.

Mối đe dọa có cấu trúc ( Structured threat) ....................................................... 9

3.


Mối đe dọa từ bên ngoài (External threat) ....................................................... 10

4.

Mối đe dọa từ bên trong ( Internal threat ) ...................................................... 10

III.

Sự cần thiết IDS .................................................................................................. 11

1.

Sự giới hạn của các biện pháp đối phó ............................................................ 11

2.

Những cố gắng trong việc hạn chế xâm nhập trái phép .................................. 13

PHẦN II: TÌM HIỂU VỀ HỆ THỐNG PHÁT HIỆN XÂM NHẬP IDS ......................... 15
1.

2.

Các phương thức xâm nhập mạng. ...................................................................... 15
1.1.

Khái niệm xâm nhập. ............................................................................... 15

1.2.


Kịch bản xâm nhập có thể xảy ra. ............................................................ 15

1.3

Các phương thức xâm nhập. ..................................................................... 16

1.4

Các biện pháp phòng ngừa. ...................................................................... 18

Hệ thống phát hiện xâm nhập IDS. ...................................................................... 22
1.1

Giới thiệu về IDS (Intrusion Detection System) ...................................... 22

1.2

Phân loại IDS ........................................................................................... 25

PHẦN III: KỸ THUẬT PHÁT HIỆN XÂM NHẬP TRÊN MẠNG(NIDS) .................... 32
1.

Network-based IDS (NIDS) ................................................................................. 32

2.

Nhiệm vụ của NIDS ............................................................................................. 33

3.


Mô hình triển khai hệ thống NIDS ...................................................................... 35

4.

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

5.

Các kỹ thuật phát hiện xâm nhập NIDS............................................................... 44

PHẦN IV: TÌM HIỂU VỀ SNORT TOOLS ..................................................................... 53
1.

Giới thiệu ............................................................................................................. 53

2.

Các thành phần của Snort: ................................................................................... 54

TÀI LIỆU THAM KHẢO ................................................................................................. 75

2


LỜI MỞ ĐẦU
Trong thời gian gần đây, cùng với việc phổ cập mạng Internet tại Việt
Nam, việc bảo vệ cho mạng máy tính của các gia đình và doanh nghiệp nhất
là các doanh nghiệp vừa và nhỏ là một vấn đề nóng bỏng. Càng ngày các kỹ
thuật xâm nhập mạng càng đa dạng đòi hỏi các kỹ thuật phát hiện và ngăn

chặn cũng phải phát triển tương ứng.
Để làm được điều này trơước hết phải có một nghiên cứu tổng quan về
các hình thức tấn công, xâm nhập và xây dựng một chiến lươợc cùng các
công cụ tương ứng để chống lại sự xâm nhập .
Các giải pháp, thiết bị bảo mật của các hãng nước ngoài có rất nhiều
nhưng giá thành cao và chỉ bảo vệ mạng trươớc sự tấn công từ bên ngoài
theo một số hơướng chứ không bảo vệ hệ thống trươớc sự tấn công ngày một
đa dạng của các tin tặc, đặc biệt là các hình thức tấn công qua lỗi của trình
duyệt nhơư tấn công từ chối dịch vụ.
Nhóm chúng em xin chọn đề tài: Kỹ thuật phát hiện xâm nhập mạng
dựa trên sự cân bằng các nút mạng. Để làm bài tập lớn môn An toàn phần
mềm và hệ thống. Mặc dù cả nhóm cá cố gắng hết sức nhưng vẫn còn nhiều
sai sót, chúng em mong thầy thông cảm và chỉ dạy để chúng em củng cố
thêm kiến thức của mình.

3


PHẦN I: TỔNG QUAN VỀ AN NINH MẠNG
I.
Các khái niệm
Các thành phần của mạng máy tính:
Mạng máy tính: Nói một cách ngắn gọn thì mạng máy tính là tập hợp
các máy tính độc lập được kết nối với nhau thông qua các đường truyền vật
lý và tuân theo các quy ước truyền thông nào đó.
Khái niệm máy tính độc lập được hiểu là các máy tính không có máy
nào có khả năng khởi động hoặc đình chỉ một máy khác. Các đường truyền
vật lý được hiểu là các môi trường truyền tín hiệu vật lý (cóthể là hữu tuyến
hoặc vô tuyến). Các quy ước truyền thông chính là cơ sở để các máy tính có
thể "nói chuyện" được với nhau và là một yếu tố quan trọng hàng đầu khi

nói về công nghệ mạng máy tính.
Đường truyền: Là phương tiện dùng để truyền các tín hiệu điện tử
giữa các máy tính. Các tín hiệu điệu tử đó chính là các thông tin, dữ liệu
được biểu thị dưới dạng các xung nhị phân (ON_OFF), mọi tín hiệu truyền
giữa các máy tính với nhau đều thuộc sóng điện từ, tuỳ theo tần số mà ta có
thể dùng các đường truyền vật lý khác nhau. Đặc trưng cơ bản của đường
truyền là giải thông nó biểu thị khả năng truyền tải tín hiệu của đường
truyền. Thông thuờng người ta hay phân loại đường truyền theo hai loại:
- Đường truyền hữu tuyến (các máy tính được nối với nhau bằng các
dây dẫn
tín hiệu).
- Đường truyền vô tuyến: các máy tính truyền tín hiệu với nhau thông
qua các sóng vô tuyền với các thiết bị điều chế/giải điều chế ớ các đầu mút.
Kiến trúc mạng máy tính (network architecture) thể hiện cách nối
các máy tính với nhau và tập hợp các quy tắc, quy ước mà tất cả các thực thể

4


tham gia truyền thông trên mạng phải tuân theo để đảm bảo cho mạng hoạt
động tốt.
Khi nói đến kiến trúc của mạng người ta muốn nói tới hai vấn đề là
hình trạng mạng (Network topology) và giao thức mạng (Network protocol)
- Network Topology: Cách kết nối các máy tính với nhau về mặt hình
học mà ta gọi là tô pô của mạng. Các hình trạng mạng cơ bản đó là: hình sao,
hình bus, hình vòng
- Network Protocol: Tập hợp các quy ước truyền thông giữa các thực
thể truyền thông mà ta gọi là giao thức (hay nghi thức) của mạng
Các giao thức thường gặp nhất là : TCP/IP, NETBIOS, IPX/SPX, . . .
Phân loại mạng máy tính


Có nhiều cách phân loại mạng khác nhau tuỳ thuộc vào yếu tố chính
được chọn dùng để làm chỉ tiêu phân loại, thông thường người ta phân
loại
mạng theo các tiêu chí như sau
- Khoảng cách địa lý của mạng
- Kỹ thuật chuyển mạch mà mạng áp dụng
- Kiến trúc mạng
- Hệ điều hành mạng sử dụng ...
Tuy nhiên trong thực tế nguời ta thường chỉ phân loại theo hai tiêu chí
đầu tiên
1.1

Phân loại mạng theo khoảng cách địa lý

Nếu lấy khoảng cách địa lý làm yếu tố phân loại mạng thì ta có mạng
cục bộ (LAN), mạng đô thị (MAN), mạng diện rộng (WAN), mạng
toàn cầu.

5


1.2

Phân loại theo kỹ thuật chuyển mạch

Nếu lấy kỹ thuật chuyển mạch làm yếu tố chính để phân loại sẽ có:
mạng chuyển mạch kênh, mạng chuyển mạch thông báo và mạng
chuyển mạch gói.
Mạch chuyển mạch kênh (circuit switched network) : hai thực thể thiết

lập một kênh cố định và duy trì kết nối đó cho tới khi hai bên ngắt liên lạc.
Mạng chuyển mạch thông báo (message switched network) : Thông báo là
một đơn vị dữ liệu qui ước được gửi qua mạng đến điểm đích mà không thiết
lập kênh truyền cố định. Căn cứ vào thông tin tiêu đề mà các nút mạng có
thể xử lý được việc gửi thông báo đến đích.
Mạng chuyển mạch gói (packet switched network) : ở đây mỗi thông
báo được chia ra thành nhiều gói nhỏ hơn được gọi là các gói tin (packet) có
khuôn dạng qui định trước. Mỗi gói tin cũng chứa các thông tin điều khiển,
trong đó có địa chỉ nguồn (người gửi) và địa chỉ đích (người nhận) của gói
tin. Các gói tin của cùng một thông báo có thể được gởi đi qua mạng tới đích
theo nhiều con đường khác nhau.
1.3

Phân loại theo kiến trúc mạng sử dụng

Kiến trúc của mạng bao gồm hai vấn đề: hình trạng mạng (Network
topology) và giao thức mạng (Network protocol) Hình trạng mạng: Cách kết
nối các máy tính với nhau về mặt hình học mà ta gọi là tô pô của mạng. Giao
thức mạng: Tập hợp các quy ước truyền thông giữa các thực thể truyền
thông mà ta gọi là giao thức (hay nghi thức) của mạng Khi phân loại theo
topo mạng người ta thường có phân loại thành: mạng hình sao, tròn, tuyến
tính.
Phân loại theo giao thức mà mạng sử dụng người ta phân loại thành
mạng : TCP/IP, mạng NETBIOS . .. Tuy nhiên các cách phân loại trên
không phổ biến và chỉ áp dụng cho các mạng cục bộ.

6


1.4


Phân loại theo hệ điều hàng mạng

Nếu phân loại theo hệ điều hành mạng người ta chia ra theo mô hình
mạng ngang hàng, mạng khách/chủ hoặc phân loại theo tên hệ điều hành mà
mạng sử dụng: Windows NT, Unix, Novell . . .
1.5

Các mạng thông dụng
1.5.1

Mạng cục bộ

Một mạng cục bộ là sự kết nối một nhóm máy tính và các thiết bị kết
nối mạng được lắp đặt trên một phạm vị địa lý giới hạn, thường trong một
toà nhà hoặc một khu công sở nào đó. Mạng có tốc độ cao.
1.5.2

Mạng diện rộng với kết nối LAN to LAN

Mạng diện rộng bao giờ cũng là sự kết nối của các mạng LAN, mạng
diện rộng có thể trải trên phạm vi một vùng, quốc gia hoặc cả một lục địa
thậm chí trên phạm vi toàn cầu. Mạng có tốc độ truyền dữ liệu không cao,
phạm vi địa lý không giới hạn.
1.5.3

Liên mạng INTERNET

Với sự phát triển nhanh chóng của công nghệ là sự ra đời của liên
mạng INTERNET. Mạng Internet là sở hữu của nhân loại, là sự kết hợp của

rất nhiều mạng dữ liệu khác chạy trên nền tảng giao thức TCP/IP Mạng
INTRANET.
Thực sự là một mạng INTERNET thu nhỏ vào trong một cơ
quan/công ty/tổ chức hay một bộ/nghành . . ., giới hạn phạm vi người sử
dụng, có sử dụng các công nghệ kiểm soát truy cập và bảo mật thông tin .
Được phát triển từ các mạng LAN, WAN dùng công nghệ
INTERNET
Giao thức TCP/IP

Sự ra đời của họ giao thức TCP/IP gắn liền với sự ra đời của Internet
mà tiền thân là mạng ARPAnet (Advanced Research Projects Agency) do

7


Bộ Quốc phòng Mỹ tạo ra. Đây là bộ giao thức được dùng rộng rãi nhất vì
tính mở của nó. Hai giao thức được dùng chủ yếu ở đây là TCP
(Transmission Control Protocol) và IP (Internet Protocol). Chúng đã nhanh
chóng được đón nhận và phát triển bởi nhiều nhà nghiên cứu và các hãng
công nghiệp máy tính với mục đích xây dựng và phát triển một mạng truyền
thông mở rộng khắp thế giới mà ngày nay chúng ta gọi là Internet.
Đến năm 1981, TCP/IP phiên bản 4 mới hoàn tất và được phổ biến
rộng rãi cho toàn bộ những máy tính sử dụng hệ điều hành UNIX. Sau này
Microsoft cũng đã đưa TCP/IP trở thành một trong những giao thức căn bản
của hệ điều hành Windows 9x mà hiện nay đang sử dụng.
Đến năm 1994, một bản thảo của phiên bản IPv6 được hình thành với
sự cộng tác của nhiều nhà khoa học thuộc các tổ chức Internet trên thế giới
để cải tiến những hạn chế của IPv4.
Khác với mô hình ISO/OSI tầng liên mạng sử dụng giao thức kết nối
mạng "không liên kết" (connectionless) IP, tạo thành hạt nhân hoạt động của

Internet. Cùng với các thuật toán định tuyến RIP, OSPF, BGP, tầng liên
mạng IP cho phép kết nối một cách mềm dẻo và linh hoạt các loại mạng "vật
lý" khác nhau như: Ethernet, Token Ring , X.25...
Giao thức trao đổi dữ liệu "có liên kết" (connection - oriented) TCP
được sử dụng ở tầng vận chuyển để đảm bảo tính chính xác và tin cậy việc
trao đổi dữ liệu dựa trên kiến trúc kết nối "không liên kết" ở tầng liên mạng
IP.
Các giao thức hỗ trợ ứng dụng phổ biến như truy nhập từ xa (telnet),
chuyển tệp (FTP), dịch vụ World Wide Web (HTTP), thư điện tử (SMTP),
dịch vụ tên miền (DNS) ngày càng được cài đặt phổ biến như những bộ phận
cấu thành của các hệ điều hành thông dụng như UNIX (và các hệ điều hành
chuyên dụng cùng họ của các nhà cung cấp thiết bị tính toán như AIX của
IBM, SINIX của Siemens, Digital UNIX của DEC), Windows9x/NT, Novell
Netware,...

8


II.

Các mối đe dọa hệ thống

1. Mối đe dọa không có cấu trúc ( Untructured threat)
Công cụ hack và script có rất nhiều trên Internet, vì thế bất cứ ai tò mò có
thể tải chúng về và sử dụng thử trên mạng nội bộ và các mạng ở xa. Cũng có
những người thích thú với việc xâm nhập vào máy tính và các hành động vượt
khỏi tầm bảo vệ. Hầu hết tấn công không có cấu trúc đều được gây ra bởi Script
Kiddies (những kẻ tấn công chỉ sử dụng các công cụ được cung cấp, không có
hoặc có ít khả năng lập trình) hay những người có trình độ vừa phải. Hầu hết các
cuộc tấn công đó vì sở thích cá nhân, nhưng cũng có nhiều cuộc tấn công có ý đồ

xấu. Những trường hợp đó có ảnh hưởng xấu đến hệ thống và hình ảnh của công
ty.
Mặc dù tính chuyên môn của các cuộc tấn công dạng này không cao nhưng
nó vẫn có thể phá hoại hoạt động của công ty và là một mối nguy hại lớn. Đôi khi
chỉ cần chạy một đoạn mã là có thể phá hủy chức năng mạng của công ty. Một
Script Kiddies có thể không nhận ra và sử dụng đoạn mã tấn công vào tất cả các
host của hệ thống với mục đích truy nhập vào mạng, nhưng kẻ tấn công đã tình cờ
gây hỏng hóc cho vùng rộng của hệ thống. Hay trường hợp khác, chỉ vì ai đó có ý
định thử nghiệm khả năng, cho dù không có mục đích xấu nhưng đã gây hại
nghiêm trọng cho hệ thống.

2. Mối đe dọa có cấu trúc ( Structured threat)
Structured threat là các hành động cố ý, có động cơ và kỹ thuật cao. Không
như Script Kiddes, những kẻ tấn công này có đủ kỹ năng để hiểu các công cụ, có
thể chỉnh sửa các công cụ hiện tại cũng như tạo ra các công cụ mới. Những kẻ tấn
công này hoạt động độc lập hoặc theo nhóm, họ hiểu, phát triển và sử dụng các kỹ
thuật hack phức tạp nhằm xâm nhập vào mục tiêu.
Động cơ của các cuộc tấn công này thì có rất nhiều. Một số yếu tố thường
thấy có thể vì tiền, hoạt động chính trị, tức giận hay báo thù. Các tổ chức tội phạm,

9


các đối thủ cạnh tranh hay các tổ chức sắc tộc có thể thuê các chuyên gia để thực
hiện các cuộc tấn công dạng structured threat. Các cuộc tấn công này thường có
mục đích từ trước, như để lấy được mã nguồn của đối thủ cạnh tranh. Cho dù động
cơ là gì, thì các cuộc tấn công như vậy có thể gây hậu quả nghiêm trọng cho hệ
thống. Một cuộc tấn công structured thành công có thể gây nên sự phá hủy cho
toàn hệ thống.


3. Mối đe dọa từ bên ngoài (External threat)
External threat là các cuộc tấn công được tạo ra khi không có một quyền
nào trong hệ thống. Người dùng trên toàn thế giới thông qua Internet đều có thể
thực hiện các cuộc tấn công như vậy.
Các hệ thống bảo vệ vành đai là tuyến bảo vệ đầu tiên chống lại external
threat. Bằng cách gia tăng hệ thống bảo vệ vành đai, ta có thể giảm tác động của
kiểu tấn công này xuống tối thiểu. Mối đe dọa từ bên ngoài là mối đe dọa mà các
công ty thường phải bỏ nhiều tiền và thời gian để ngăn ngừa.

4. Mối đe dọa từ bên trong ( Internal threat )
Thuật ngữ “Mối đe dọa từ bên trong” được sử dụng để mô tả một kiểu tấn
công được thực hiện từ một người hoặc một tổ chức có một vài quyền truy cập
mạng của bạn. Các cách tấn công từ bên trong được thực hiện từ một khu vực
được tin cậy trong mạng. Mối đe dọa này có thể khó phòng chống hơn vì các nhân
viên có thể truy cập mạng và dữ liệu bí mật của công ty. Hầu hết các công ty chỉ
có các tường lửa ở đường biên của mạng, và họ tin tưởng hoàn toàn vào các ACL
(Access Control Lists) và quyền truy cập server để quy định cho sự bảo mật bên
trong. Quyền truy cập server thường bảo vệ tài nguyên trên server nhưng không
cung cấp bất kì sự bảo vệ nào cho mạng. Mối đe dọa ở bên trong thường được thực
hiện bởi các nhân viên bất bình, muốn “quay mặt” lại với công ty. Nhiều phương
pháp bảo mật liên quan đến vành đai của mạng, bảo vệ mạng bên trong khỏi các
kết nối bên ngoài, như là Internet. Khi vành đai của mạng được bảo mật, các phần

10


tin cậy bên trong có khuynh hướng bị bớt nghiêm ngặt hơn. Khi một kẻ xâm nhập
vượt qua vỏ bọc bảo mật cứng cáp đó của mạng, mọi chuyện còn lại thường là rất
đơn giản.
Đôi khi các cuộc tấn công dạng structured vào hệ thống được thực hiện với

sự giúp đỡ của người bên trong hệ thống. Trong trường hợp đó, kẻ tấn công trở
thành structured internal threat, kẻ tấn công có thể gây hại nghiên trọng cho hệ
thống và ăn trộm tài nguyên quan trọng của công ty. Structured internel threat là
kiểu tấn công nguy hiểm nhất cho mọi hệ thống.

III.

Sự cần thiết IDS

1. Sự giới hạn của các biện pháp đối phó
Hiện nay có nhiều công cụ nhằm gia tăng tính bảo mật cho hệ thống. Các
công cụ đó vẫn đang hoạt động có hiệu quả, tuy nhiên chúng đều có những hạn
chế riêng làm hệ thống vẫn có nguy cơ bị tấn công cao.

Firewall bảo vệ hệ thống
Firewall là một công cụ hoạt động ở ranh giới giữa bên trong hệ thống và
Internet bên ngoài (không đáng tin cậy) và cung cấp cơ chế phòng thủ từ vành đai.
Nó hạn chế việc truyền thông của hệ thống với những kẻ xâm nhập tiềm tàng và
làm giảm rủi ro cho hệ thống. Đây là một công cụ không thể thiếu trong một giải
pháp bảo mật tổng thể. Tuy nhiên Firewall cũng có những điểm yếu sau:
 Firewall không quản lý các hoạt động của người dùng khi đã vào
được hệ thống, và không thể chống lại sự đe dọa từ trong hệ thống.
 Firewall cần phải đảm bảo một mức độ truy cập nào đó tới hệ thống,
việc này có thể cho phép việc thăm dò điểm yếu.

11


 Chính sách của Firewall có thể chậm trễ so với sự thay đổi của môi
trường, điều này cũng có thể tạo nên cơ hội cho việc xâm nhập và tấn công.

 Hacker có thể sử dụng phương thức tác động đến yếu tố con người
để được truy nhập một cách tin cậy và loại bỏ được cơ chế firewall.
 Firewall không ngăn được việc sử dụng các modem không được xác
thực hoặc không an toàn gia nhập hoặc rời khỏi hệ thống.
 Firewall không hoạt động ở tốc độ có lợi cho việc triển khai Intranet.
Việc sử dụng cơ chế mã hóa và VPN cung cấp khả năng bảo mật cho việc
truyền thông đầu cuối các dữ liệu quan trọng. Nhóm mã hóa với việc xác thực
khóa công khai và khóa mật cung cấp cho người dùng, người gửi và người nhận sự
từ chối, sự tin cậy và toàn vẹn dữ liệu.

Mô hình sử dụng chứng chỉ để đảm bảo tính tin cậy
Tuy nhiên, các dữ liệu có mã hóa chỉ an toàn với những người không được
xác thực. Việc truyền thông sẽ trở nên mở, không được bảo vệ và quản lý, kể cả
những hành động của người dùng. PKI có vai trò như khung làm việc chung cho
việc quản lý và xử lý các dấu hiệu số với mã hóa công khai để bảo đảm an toàn
cho dữ liệu. Nó cũng tự động xử lý để xác nhận và chứng thực người dùng hay
ứng dụng. PKI cho phép ứng dụng ngăn cản các hành động có hại, tuy nhiên hiện

12


tại việc triển khai sử dụng chỉ mới bắt đầu (chỉ có các dự án thí điểm và một số dự
án có quy mô lớn áp dụng) vì những lý do sau:


Chuẩn PKI vẫn đang phát triển với việc hoạt động chung của

các hệ thống chứng chỉ không đồng nhất.



Có quá ít ứng dụng có sử dụng chứng chỉ.

Các phương thức trên cung cấp khả năng bảo vệ cho các thông tin, tuy
nhiên chúng không phát hiện được cuộc tấn công đang tiến hành. Phát hiện xâm
nhập trái phép được định nghĩa là “một ứng dụng hay tiến trình dùng để quản lý
môi trường cho mục đích xác định hành động có dấu hiệu lạm dụng, dùng sai hay
có ý đồ xấu”.

2. Những cố gắng trong việc hạn chế xâm nhập trái phép
Trong những năm 80, khi nền thương nghiệp và truyền thông dựa trên mạng
quy mô lớn vẫn còn trong thời kỳ đầu, một câu hỏi đã được đặt ra: “Làm sao có
thể biết chúng ta an toàn với sự dùng sai, và làm sao để theo dõi được khi ta bị tấn
công?” Ta nhận thấy cách tốt nhất để phát hiện xâm nhập trái phép là tạo ra log
hay biên bản kiểm tra (audit trail) với mọi hành động có liên quan đến bảo mật.
Ngày nay, hầu hết các hệ điều hành, ứng dụng và thiết bị mạng đều tạo ra một số
dạng biên bản kiểm tra. Tư tưởng cơ bản là nhà quản trị có thể xem lại chúng để
tìm những sự kiện đáng nghi. Trong khi đó trong thực tế, quá trình xử lý thủ công
đó không thể ứng dụng được với quy mô lớn, sức người có hạn không thể kiểm tra
lại được tất cả các log để tìm điểm nghi vấn. Ví dụ như vào năm 1984, hệ thống
Clyde Digital phát triển một sản phẩm là AUDIT, có nhiệm vụ tự động tìm trong
audit trai OpenVMS để tìm sự kiện nghi vấn. Vào năm 1987, một dự án được tài
trợ bởi chính phủ Mỹ tên là IDES tại Stanford Research Institute thực hiện đọc
audit trail và tạo ra khuôn mẫu những hành động thông thường, sau đó gửi thông
báo về những hành động lệch so với khuôn mẫu đó. Trong suốt những năm đầu
của thập kỷ 90, cố gắng phát hiện xâm nhập trái phép tập trung vào việc phân tích
các sự kiện có trong audit trail.

13



Tuy nhiên, hầu hết các công ty không thể sử dụng được phương pháp phân
tích log này vì hai lý do chính. Thứ nhất là công cụ đó khá nặng, phụ thuộc vào
khả năng hiểu loại tấn công và điểm yếu của người dùng. Với sự tăng trưởng của
số người dùng, hệ điều hành, ứng dụng, cơ sở dữ liệu cũng tăng theo với kích cỡ
của file audit trail làm chúng tốn bộ nhớ và dẫn đến lỗi từ chối dịch vụ. Do đó, các
tổ chức nhận ra rằng thao tác viên của họ thường xóa hay vô hiệu hóa audit trail
nhằm làm giảm giá thành hệ thống và duy trì đủ hiệu suất. Nửa cuối những năm 90
chứng kiến sự mở rộng của các ứng dụng tạo audit trail mới để quản lý, như router,
network traffic monitor, và firewall. Tuy hệ phương pháp IDS đã phát triển trong
suốt 20 năm, câu hỏi vẫn được đặt ra: “Làm sao có thể biết chúng ta an toàn với
sự dùng sai, và làm sao để theo dõi và phản ứng khi ta bị tấn công?”
Scanner, các công cụ thăm dò và đánh giá chính sách rất hiệu quả trong
việc tìm lỗ hổng bảo mật trước khi bị tấn công. Chúng có thể làm được điều đó
dựa trên việc tìm khiếm khuyết, cấu hình sai có thể can thiệp được của hệ điều
hành và ứng dụng, những hệ thống, cấu hình ứng dụng, thao tác trái ngược với
chính sách chung. Các công cụ này có thể trả lời được câu hỏi “độ an toàn của môi
trường trước sự dùng sai”, chúng cung cấp phương thức tốt nhất để đánh giá độ an
toàn của hệ điều hành và ứng dụng. Chúng có thể cung cấp sự đánh giá chính sách
một cách tự động dựa trên yêu cầu bảo mật của công ty như phiên bản của phần
mềm, độ dài mật mã,… Tuy nhiên, hầu hết các scanner chỉ báo cáo lại về lỗ hổng
bảo mật và yêu cầu chỉnh sửa tình trạng đó một cách thủ công. Hơn nữa, nó yêu
cầu một thủ tục định kỳ mỗi khi cài đặt một hệ điều hành, server hay ứng dụng
mới vào mạng. Cũng như các công cụ kiểm tra biên bản, scanner và các công cụ
thăm dò, đánh giá chính sách không thể mở rộng quy mô do dựa trên hoạt động
của con người và các ràng buộc bảo mật có tính chuyên môn cho một tổ chức. Ta
có một chân lý là “nếu ta không thể đo được nó thì ta không thể quản lý được nó”.
Một lợi ích quan trọng khác của công cụ đánh giá bảo mật là cho phép quản lý cả
với độ lệch trong bảo mật và biểu đồ thông tin. Nó có thể được sử dụng để xác
định hiệu quả thực tế của bảo mật và dự đoán hiện tại cũng như tương lai.


14


PHẦN II: TÌM HIỂU VỀ HỆ THỐNG PHÁT HIỆN XÂM NHẬP IDS
1. Các phương thức xâm nhập mạng.
1.1. Khái niệm xâm nhập.
Hành vi xâm nhập là sự vi phạm hoặc cố tình vượt qua các chính sách
an ninh. Các xâm nhập có thể được thực hiện thông qua mạng, phần
mềm gián điệp, truy cập bất hợp pháp vào máy tính thông qua
internet hoặc là trường hợp người dùng hợp lệ nhưng có các hành vi
vượt qua 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. Kịch bản xâm nhập có thể xảy ra.
Bước 1: Do thám từ bên ngoài. Kẻ tấn công sẽ tìm kiếm càng
nhiều thông tin càng tốt: tìm kiếm các thông tin được công bố rộng
rãi như tên miền, bảng DNS, tên website và FTP. Kẻ tấn công có thể
thu thập được các tài liệu và các chủ đề về chúng ta. Tại bước này,
chúng ta không có cách nào để phát hiện được họ.
Bước 2: Do thám từ bên trong. Kẻ tấn công sử dụng các kỹ thuật
để dò quét các thông tin nhưng không gây bất cứ tổn hại nào đến hệ
thống. Họ có thể xâm nhập vào trang web và xem các đoạn mã CGI,
thực hiện ping sweep để kiểm tra các máy có đnag hoạt động hay
không, thực hienẹ dò quét TCP/UDP để phát hiện các dịch vụ đang
hoạt động…Tới lúc này, họ vẫn thực hiện được các hoạt động trên
mạng mà không bị coi là xâm nhập. Hệ thống phát hiện xâm nhập
cũng có thể cảnh báo cho chúng ta là có người đang thăm dò hệ
thống.
Bước 3: Khai thác. Kẻ tấn công bắt đầu khai thác các lỗ hổng có
trong hệ thống: tấn công CGI, khai thác các lỗi tràn bộ đệm, kiểm tra
các tài khoản đăng nhập bằng các mật khẩu thông thường, dễ đoán

hoặc mật khẩu trắng.. Nếu kẻ tấn công có được tài khoản user, họ sẽ
tiếp tục để đạt được quyền root/admin.
Bước 4: Kẻ tấn công đã đặt chân được vào hệ thống của chúng ta.
Mục tiêu của kẻ xâm nhập bây giờ là xóa dấu vết tấn công và đảm
bảo có thể xâm nhập lại vào hệ thống. Kẻ tấn công có thể cài đặt các
công cụ, phần mềm giúp họ truy cập trở lại, thay thế các dịch vụ
hiện tại bằng các dịch vụ có Trojan, hoặc tạo một tài khoản riêng…
Sau này kẻ tấn công có thể mở rộng việc tấn công vào các máy khác
trong hệ thống mạng của chúng ta.

15


Bước 5: Kẻ tấn công lúc này có thể lấy các thông tin bí mật, sử
dụng các tài nguyên mạng hoặc làm sập trang web…
1.3 Các phương thức xâm nhập.
a. Phương thức ăn cắp thống tin bằng Packet Sniffers
Đây là một chương trình ứng dụng bắt giữ được tất cả các các gói lưu
chuyển trên mạng (trên một collision domain). Sniffer thường được
dùng cho troubleshooting network hoặc để phân tích traffic. Tuy
nhiên, do một số ứng dụng gởi dữ liệu qua mạng dưới dạng clear text
(telnet, FTP, SMTP, POP3,...) nên sniffer cũng là một công cụ cho
hacker để bắt các thông tin nhạy cảm như là username, password, và từ
đó có thể truy xuất vào các thành phần khác của mạng.
b. Phương thức tấn công mật khẩu Password attack
Các hacker tấn công password bằng một số phương pháp như:
brute-force attack, chương trình Trojan Horse, IP spoofing, và
packet sniffer. Mặc dù dùng packet sniffer và IP spoofing có thể
lấy được user account và password, như hacker lại thường sử
dụng brute-force để lấy user account hơn.

Tấn công brute-force được thực hiện bằng cách dùng một chương
trình chạy trên mạng, cố gắng login vào các phần share trên server
băng phương pháp “thử và sai” passwork.
c. Phương thức tấn công bằng Mail Relay
Đây là phương pháp phổ biến hiện nay. Email server nếu cấu hình
không chuẩn hoặc Username/ password của user sử dụng mail bị
lộ. Hacker có thể lợi dụng email server để gửi mail gây ngập mạng
, phá hoại hệ thống email khác. Ngoài ra với hình thức gắn thêm các
đoạn script trong mail , hacker có thể gây ra các cuộc tấn công
Spam cùng lúc với khả năng tấn công gián tiếp đến các máy chủ

16


Database nội bộ hoặc các cuộc tấn công DOS vào một mục tiêu nào
đó.
d. Phương thức tấn công hệ thống DNS
DNS Server là điểm yếu nhất trong toàn bộ các loại máy chủ ứng
dụng và cũng là hệ thống quan trọng nhất trong hệ thống máy chủ.
Việc tấn công và chiếm quyền điều khiển máy chủ phục vụ DNS là
một sự phá hoại nguy hiểm liên quan đến toàn bộ hoạt động của hệ
thống truyền thông trên mạng.
e. Phương thức tấn công Man-in-the-middle attack
Dạng tấn công này đòi hỏi hacker phải truy nhập được các gói mạng
của mạng. Một ví dụ về tấn công này là một người làm việc tại ISP,
có thể bắt được tấc cả các gói mạng của công ty khách hàng cũng
như tất cả các gói mạng của các công ty khác thuê Leased line đến
ISP đó để ăn cắp thông tin hoặc tiếp tục session truy nhập vào mạng
riên của công ty khách hàng. Tấn công dạng này được thực hiện nhờ
một packet sniffer.

f. Phương thức tấn công để thăm dò mạng
Thăm dò mạng là tất cả các hoạt động nhằm mục đích lấy các thông
tin về mạng. khi một hacker cố gắng chọc thủng một mạng, thường
thì họ phải thu thập được thông tin về mạng càng nhiều càng tốt
trước khi tấn công. Điều này có thể thực hiện bởi các công cụ như
DNS queries, ping sweep, hay port scan.
g. Phương thức tấn công Trust exploitation
Loại tấn công kiểu này được thực hiện bằng cách tận dụng mối quan
hệ tin cậy đối với mạng. Một ví dụ cho tấn công kiểu này là bên
ngoài firewall có một quan hệ tin cậy với hệ thống bên trong
firewall. Khi bên ngoài hệ thống bị xâm hại, các hacker có thể lần
theo quan hệ đó để tấn công vào bên trong firewall.
h. Phương thức tấn công Port redirection

17


Tấn công này là một loại của tấn công trust exploitation, lợi dụng
một host đã đã bị đột nhập đi qua firewall. Ví dụ, một firewall có 3
inerface, một host ở outside có thể truy nhập được một host trên
DMZ, nhưng không thể vào được host ở inside. Host ở DMZ có thể
vào được host ở inside, cũng như outside. Nếu hacker chọc thủng
được host trên DMZ, họ có thể cài phần mềm trên host của DMZ để
bẻ hướng traffic từ host outside đến host inside.
i. Phương thức tấn công lớp ứng dụng
Tấn công lớp ứng dụng được thực hiện bằng nhiều cách khác nhau.
Một trong những cách thông dụng nhất là tấn công vào các điểm
yếu của phân mềm như sendmail, HTTP, hay FTP.
Nguyên nhân chủ yếu của các tấn công lớp ứng dụng này là chúng
sử dụng những port cho qua bởi firewall. Ví dụ các hacker tấn

công Web server bằng cách sử dụng TCP port 80, mail server bằng
TCP port 25.
j. Phương thức tấn Virus và Trojan Horse
Các nguy hiểm chính cho các workstation và end user là các tấn
công virus và Trojan (Trojan horse). Virus là một phần mềm có hại,
được đính kèm vào một chương trình thực thi khác để thực hiện một
chức năng phá hại nào đó. Trojan horse thì hoạt động khác hơn. Một
ví dụ về Trojan horse là một phần mềm ứng dụng để chạy một game
đơn giản ở máy workstation. Trong khi người dùng đang mãi mê
chơi game, Trojan horse sẽ gởi một bản copy đến tất cả các user
trong address book. Khi user khác nhận và chơi trò chơi, thì nó lại
tiếp tục làm như vậy, gởi đến tất cả các địa chỉ mail có trong address
book của user đó.
1.4 Các biện pháp phòng ngừa.
a. Phương thức ăn cắp thống tin bằng Packet Sniffers

18


Khả năng thực hiện Packet Sniffers có thể xảy ra từ trong các
Segment của mạng nội bộ, các kết nối RAS hoặc phát sinh trong
WAN.
Ta có thể ngăn packet sniffer bằng một số cách như sau:
 Authentication
Kỹ thuật xác thực này được thực hiện phổ biến như one-type
password (OTPs). Kỹ thuật này được thực hiện bao gôm hai
yếu tố: personal identification number ( PIN ) và token card để
xác thực một thiết bị hoặc một phần mềm ứng dụng.
Token card là thiết bị phần cứng hoặc phần mềm sản sinh ra
thông tin một cách ngẫu nhiên ( password ) tại một thời điểm,

thường là 60 giây. Khách hàng sẽ kết nối password đó với
một PIN để tạo ra một password duy nhất. Giả sử một hacker
đọc được password đó bằng kỹ thuật packet sniffers, thông tin
đó cũng không có giá trị vì nó đã hết hạn.
 Dùng switch thay vì Bridge hay hub: hạn chế được các
gói broadcast trong mạng.
Kỹ thuật này có thể dùng để ngăn chặn packet sniffers trong
môi trường mạng. Vd: nếu toàn bộ hệ thống sử dụng switch
ethernet, hacker chỉ có thể xâm nhập vào luồng traffic đang lưu
thông tại 1 host mà hacker kết nối đến. Kỹ thuật này không làm
ngăn chặn hoàn toàn packet sniffer nhưng nó có thể giảm được
tầm ảnh hưởng của nó.
 Các công cụ Anti-sniffer: công cụ này phát hiện sự có mặt
của packet siffer trên mạng.
 Mã hóa: Tất cả các thông tin lưu chuyển trên mạng đều
được mã hóa. Khi đó, nếu hacker dùng packet sniffer thì
chỉ bắt được các gói dữ liệu đã được mã hóa. Cisco dùng
giao thức IPSec để mã hoá dữ liệu.

19


b. Phương thức tấn công mật khẩu Password attack
Phương pháp giảm thiểu tấn công password:
 Giới han số lần login sai
 Đặt password dài
 Cấm truy cập vào các thiết bị, serever từ xa thông qua các
giao thức không an toàn như FTP, Telnet, rlogin, rtelnet…
ứng dụng SSL,SSH vào quản lý từ xa
c. Phương thức tấn công bằng Mail Relay

Phương pháp giảm thiểu :
 Giới hạn dung lương Mail box
 Sử dụng các phương thức chống Relay Spam bằng các công
cụ bảo mật cho SMTP server, đặt password cho SMTP.
 Sử dụng gateway SMTP riêng
d. Phương thức tấn công hệ thống DNS
Phương pháp hạn chế:
 Hạn chế tối đa các dịch vụ khác trên hệ thống máy chủ DNS
 Cài đặt hệ thống IDS Host cho hệ thống DNS
 Luôn cập nhật phiên bản mới có sửa lỗi của hệ thống phần
mềm DNS.
e. Phương thức tấn công Man-in-the-middle attack
Tấn công dạng này có thể hạn chế bằng cách mã hoá dữ liệu
được gởi ra. Nếu các hacker có bắt được các gói dữ liệu thì là các
dữ liệu đã được mã hóa.
f. Phương thức tấn công để thăm dò mạng
Ta không thể ngăn chặn được hoàn toàn các hoạt độ thăm dò kiểu
như vậy. Ví dụ ta có thể tắt đi ICMP echo và echo-reply, khi đó có
thể chăn được ping sweep, nhưng lại khó cho ta khi mạng có sự cố,
cần phải chẩn đoan lỗi do đâu. (NIDS và HIDS giúp nhắc nhở
(notify) khi có các hoạt động thăm dò xảy ra trong mạng.)

20


g. Phương thức tấn công Trust exploitation
Có thể giới hạn các tấn công kiểu này bằng cách tạo ra các mức truy
xuất khác nhau vào mạng và quy định chặt chẽ mức truy xuất nào sẽ
được truy xuất vào các tài nguyên nào của mạng.
h. Phương thức tấn công Port redirection

Ta ngăn chặn tấn công loại này bằng cách sử dụng HIDS cài trên
mỗi server. HIDS có thể giúp phát hiện được các chường trình lạ
hoạt động trên server đó.
i. Phương thức tấn công lớp ứng dụng
Một số phương cách để hạn chế tấn
công lớp ứng dụng:
 Lưu lại log file, và thường xuên phân tích log file
 Luôn cập nhật các patch cho OS và các ứng dụng
 Dùng IDS:
o HIDS: cài đặt trên mỗi server một agent của HIDS để
phát hiện các tấn công lên server đó.
o NISD: xem xét tất cả các packet trên mạng (collision
domain). Khi nó thấy có một packet hay một chuỗi
packet giống như bị tấn công, nó có thể phát cảnh báo,
hay cắt session đó.
Các IDS phát hiện các tấn công bằng cách dùng các signature.
Signature của một tấn công là một profile về loại tấn công đó. Khi
IDS phát hiện thấy traffic giống như một signature nào đó, nó sẽ
phát cảnh báo.
j. Phương thức tấn Virus và Trojan Horse
Có thể dùng các phần mềm chống virus để diệt các virus và Trojan
horse và luôn luôn cập nhật chương trình chống virus mới.

21


2. Hệ thống phát hiện xâm nhập IDS.
1.1 Giới thiệu về IDS (Intrusion Detection System)
là một hệ thống giám sát lưu thông mạng, các hoạt động khả nghi và
cảnh báo cho hệ thống, nhà quản trị.Ngoài ra,IDS cũng đảm nhận

việc phản ứng lại các lưu thông bất thường hay có hại bằng các
hành động đã được thiết lập từ trước như khóa người dùng hay hay
địa chỉ IP nguồn đó truy cập hệ thống mạng.
- IDS cũng có thể phân biệt giữa những tấn công bên trong từ bên
trong (từ những người trong công ty) hay tấn công từ bên ngoài (từ
các hacker). IDS phát hiện dựa trên các dấu hiệu đặc biệt về các
nguy cơ đã biết (giống như cách các phần mềm diệt virus dựa vào
các dấu hiệu đặc biệt để phát hiện và diệt virus) hay dựa trên so
sánh lưu thông mạng hiện tại với baseline (thông số đo đạc chuẩn
của hệ thống) để tìm ra các dấu hiệu khác thường.
Hệ thống phát hiện xâm nhập trái phép là những ứng dụng phần
mềm chuyên dụng để phát hiện xâm nhập vào hệ thống mạng cần
bảo vệ. IDS được thiết kế không phải với mục đích thay thế các
phương pháp bảo mật truyền thống, mà để hoàn thiện nó. Một hệ
thống phát hiện xâm nhập trái phép cần phải thỏa mãn những yêu
cầu sau:
 Tính chính xác (Accuracy): IDS không được coi những
hành động thông thường trong môi trường hệ thống là
những hành động bất thường hay lạm dụng (hành động
thông thường bị coi là bất thường được gọi là false positive).

22


 Hiệu năng (Performance): Hiệu năng của IDS phải đủ để
phát hiện xâm nhập trái phép trong thời gian thực (thời gian
thực nghĩa là hành động xâm nhập trái phép phải được phát
hiện trước khi xảy ra tổn thương nghiêm trọng tới hệ - theo
[Ranum, 2000] là dưới 1 phút).
 Tính trọn vẹn (Completeness): IDS không được bỏ qua một

xâm nhập trái phép nào (xâm nhập không bị phát hiện được
gọi là false negative). Đây là một điều kiện khó có thể thỏa
mãn được vì gần như không thể có tất cả thông tin về các
tấn công từ quá khứ, hiện tại và tương lai.
 Chịu lỗi (Fault Tolerance): bản thân IDS phải có khả năng
chống lại tấn công.
 Khả năng mở rộng (Scalability): IDS phải có khả năng xử lý
trong trạng thái xấu nhất là không bỏ sót thông tin. Yêu cầu
này có liên quan đến hệ thống mà các sự kiện tương quan
đến từ nhiều nguồn tài nguyên với số lượng host nhỏ. Với
sự phát triển nhanh và mạnh của mạng máy tính, hệ thống
có thể bị quá tải bởi sự tăng trưởng của số lượng sự kiện.
2.1. 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

23


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.

24


 Chức năng mở rộng:
Phân biệt: "thù trong giặc ngoài" tấn công bên trong và tấn công
bên ngoài.
Phát hiện: những dấu hiệu bất thường dựa trên những gì đã
biết hoặc nhờ vào sự so sánh thông lượng mạng hiện tại với
baseline.
Ngoài ra hệ thống phát hiện xâm nhập IDS còn có chức năng:
 Ngăn chặn sự gia tăng của những tấn công

 Bổ sung những điểm yếu mà các hệ thống khác chưa làm được
 Đánh giá chất lượng của việc thiết kế hệ thống
Khi IDS chạy một thời gian sẽ đưa ra được những điểm yếu đó là điều
hiển nhiên. Việc đưa ra những điểm yếu đó nhằm đánh giá chất lượng
việc thiết kế mạng cũng như cách bố trí bảo vệ phòng thủ của các nhà
quản trị mạng.

1.2 Phân loại IDS
Có 3 loại là : NIDS, HIDS và DIDS
2.1.1. Network Base IDS (NIDS)

25


×