Tải bản đầy đủ
CHƯƠNG I: NGHIÊN CỨU VỀ CÁC HỆ THỐNG GIÁM SÁT, PHÁT HIỆN XÂM NHẬP MẠNG MÁY TÍNH

CHƯƠNG I: NGHIÊN CỨU VỀ CÁC HỆ THỐNG GIÁM SÁT, PHÁT HIỆN XÂM NHẬP MẠNG MÁY TÍNH

Tải bản đầy đủ

4

- Các máy có mặt trên mạng
- Hệ điều hành đang sử dụng trên từng máy đang chạy
- Phần mền máy chủ dịch vụ trên các máy đang chạy
- Số hiệu phiên bản phần mềm….
Ngoài ra kẻ tấn công có thể biết thêm nhiều thông tin khác nếu máy
đang chạy có nhiều sơ hở hoặc lỗ hổng bảo mật. Các dạng thông tin nhạy cảm
như tên account, account default, mật khẩu yếu, nguồn thông tin chia sẻ…
những thông tin này có lợi cho việc khai thác, tấn công mạng của kẻ xâm
nhập. Về mặt pháp lý thì hành động quét, thăm dò mạng là một hành động
hợp pháp. Trên mạng Internet có nhiều người quét, thăm dò chỉ vì mục đích
khai thác tài nguyên miễn phí từ Internet. Ngoài ra quét, thăm dò cũng còn có
mục đích có lợi là cho phép người quản trị an ninh mạng phân tích các điểm
yếu về bảo mật để khắc phục.
Mặt trái của hoạt động này đó là kẻ tấn công lợi dụng những kết quả
phân tích thu được để thực hiện xâm nhập thực sự vào hệ thống.[4]
1.1.1.2 Tấn công từ chối dịch vụ
Tấn công từ chối dịch vụ chia làm hai loại chính: khai thác lỗ hổng và
tấn công ngập lụt (flooding). Tấn công từ chối dịch vụ là cuộc tấn công khai
thác lỗ hổng phần mềm hệ thống để gây ra lỗi xử lý hoặc làm cạn kiệt tài
nguyên trên hệ thống đích. Một thí dụ điển hình của kiểu tấn công này là “
ping of death”. Kẻ tấn công gửi gói tin lớn bằng lệnh “ping” đến máy đích
windows. Hệ thống windows không thể xử lý kịp gói tin bất thường này và
kết quả là máy đích bị treo hoặc bị tê liệt trước kiểu tấn công này. Với các
kiểu tấn công làm cạn kiệt tài nguyên, bao gồm: Thời gian tính toán của CPU,
bộ nhớ trong, dung lượng đĩa còn trống, dung lượng bộ đệm còn trống, băng
thông mạng.

5

Tấn công DoS flooding: Đây là cuộc tấn công mà kẻ tấn công gửi đến
hệ thống đích liên tiếp nhiều gói tin làm cho hệ thống đích không kịp xử lý
chúng. Hệ quả là kẻ tấn công có thể độc chiếm kết nối mạng tới mục tiêu và
từ chối bất cứ người dùng nào sử dụng các tài nguyên này.
Tấn công từ chối dịch vụ kiểu phân tán là loại tấn công mà kẻ tấn công
dùng nhiều máy tính đồng thời trong cùng một thời điểm gửi gói tin liên tiếp
đến máy đích. Một kẻ tấn công không thể làm ngưng dịch vụ một trang web
thương mại điện tử cỡ lớn bằng tấn công ngập lụt nó bởi các gói tin gửi đi từ
một máy tính. Tuy nhiên, nếu chiếm quyền điều khiển được 20 ngàn máy
cùng đồng thời tấn công thì chắc chắn sẽ thành công.
1.1.1.3 Các cuộc tấn công xâm nhập hệ thống
Các cuộc tấn công xâm nhập là các tấn công nhằm đạt được quyền thay
đổi dữ liệu, tài nguyên và các đặc quyền hệ thống khác mà đáng ra không
được phép. Thông thường kiểu tấn công này được thực hiện bằng cách khai
thác các lỗ hổng phần mềm hoặc các lỗ hổng trong dịch vụ hệ thống. Nếu
người quản trị hệ thống chưa kịp vá lỗi phần mềm hoặc dịch vụ thì hệ thống
đó rất dễ bị tấn công.
Một cách phân loại khác, đó là phân loại các cuộc tấn công theo hướng:
Tấn công từ bên ngoài vào và tấn công từ trong nội bộ. Kẻ tấn công từ ngoài
mạng là người tấn công từ phía bên ngoài, ví dụ sử dụng spam để gửi thư điện
tử. Họ có thể vượt qua bức tường lửa để tấn công vào các máy tính của mạng
bên trong. Những kẻ tấn công từ bên ngoài thông thường là từ mạng Internet,
trực tiếp thâm nhập bằng đường vật lý hoặc thông qua các bạn hàng trên
mạng có liên hệ đến mạng nội bộ. Kẻ xâm nhập bên trong mạng là những
người sử dụng mạng chính thức bên trong. Những người này có thể là những
user tạo cho người khác mất quyền truy nhập mạng hoặc chiếm quyền truy
nhập hoặc chiếm quyền sử dụng mạng của người khác. Theo số liệu của cơ

6

quan an ninh mạng EU thì 80% các vụ vi phạm về an ninh mạng là từ những
kẻ xâm nhập từ bên trong mạng.[2]
1.1.2 Các biện pháp hoạt động xâm nhập máy tính
Xâm nhập vật lý: là những kẻ xâm nhập bằng phương pháp sử dụng bàn
phím máy tính của nạn nhân để đăng nhập mạng, thay hoặc lấy cắp các thiết
bị đĩa từ lưu dữ liệu trên máy tính.
Xâm nhập thông qua lỗ hổng của phần mềm: Lỗ hổng phần mềm
được phân loại như sau:
Lỗ hổng do tràn bộ đệm:
Phần lớn các lỗ hổng về an ninh là do tràn bộ đệm. Lỗi này đều do hầu
hết các hệ điều hành, các phần mềm quản trị cơ sở dữ liệu, thậm chí có trong
một vài phiên bản của hệ điều hành UNIX được đánh giá là hệ điều hành
công nghiệp an toàn nhất hiện nay. Một trong những thí dụ tràn bộ đệm được
coi là điển hình nhất mà không ai nghĩ đến đó là lỗi tràn bộ đệm sinh ra do tên
user. Thông thường tên user trên mạng cũng chỉ được thiết lập tối đa 256 ký
tự hoặc số là cùng. Ít ai nghĩ ra được điều gì sẽ xẩy ra nếu tên đó dài hơn 256
ký tự có kèm theo mã code để thực hiện trên máy chủ. Thông qua thủ đoạn
này hacker có thể xâm nhập hệ thống.[3]
Lợi dụng chỗ yếu để tấn công tệp mật khẩu:
Từ Service Pack 3 trở đi, NT sử dụng chương trình syskey cho phép bảo
vệ tệp SAM và tệp sao lưu của SAM là sam_. Bằng kỹ thuật mã hóa thêm một
lần nữa với khóa 128 bit. Khóa này có thể ko cần lưu trên máy chủ mà có thể
lưu trên đĩa mềm. Việc bảo vệ theo cách này có thể được thực thi trên máy
chủ và trên các máy trạm. Tuy vậy nếu để mất đĩa khóa thì không thể nào
đăng nhập vào hệ thống được nữa.

7

Một yếu tố khác đã tạo điều kiện để cho kẻ tấn công xem được toàn bộ
danh sách của người sử dụng, nhóm người sử dụng, log hệ thống cũng như
một số công cụ quản trị hệ thống từ xa dựa trên giao thức SMB (Server
Message Block) đó là người sử dụng vô danh (anonymous). Mục đích tồn tại
của user này trên hệ thống nhằm phục vụ cho các dịch vụ Null Session không
cần đòi hỏi xác thực. NT cho phép người sử dụng vô danh truy cập vào nguồn
đặc biệt gọi là IPC$ (inte-proscess communication).
1.1.3 Thủ đoạn của hacker lấy mật khẩu đăng nhập
Chúng ta biết rằng phần lớn các máy sử dụng trong mạng diện rộng cũng
như trong mạng LAN đều sử dụng hệ điều hành Windows XP/VISTA.
Hacker chỉ cần đột nhập bất kỳ một máy trạm nào đó trong mạng lấy tệp mật
khẩu dạng tên_user.pwl nằm trong thư mục c:\windows hoặc tệp SAM trong
thư mục \winnt\repair và sử dụng một loạt các chương trình mở mật khẩu
khác nhau để lấy mật khẩu user và sử dụng mật khẩu đó để đăng nhập lại
mạng máy tính.[3]
1.2 Nghiên cứu khái niệm về phần mềm IDS giám sát, phát hiện
xâm nhập
1.2.1 Tổng quan về phần mềm IDS
Các hệ thống phát hiện xâm nhập (IDS) là những hệ thống phần mềm
hoặc phần cứng thực hiện tự động hóa quá trình giám sát các sự kiện xảy ra
trong hệ thống mạng máy tính; phân tích các sự kiện đó để nhận biết những
vấn đề liên quan đến an ninh mạng. Trong những năm gần đây, khi các vụ tấn
công ngày càng tăng lên về số lượng và mức độ nghiêm trọng thì các hệ thống
phát hiện xâm nhập là sự bổ sung cần thiết và kịp thời cho hệ thống thiết bị an
ninh mạng đã có.
Phát hiện xâm nhập là một quá trình giám sát các sự kiện diễn ra ở một
hệ thống máy tính hoặc một mạng máy tính và phân tích chúng để tìm ra các

8

xâm nhập làm tổn hại đến độ tin cậy, tính toàn vẹn và khả năng hoạt động của
hệ thống hoặc để vượt qua cơ chế kiểm soát an ninh của hệ thống máy tính.
Những kẻ tấn công thường xâm nhập mạng từ bên ngoài Internet hoặc mạng
công cộng hoặc chính là những người sử dụng trong chính mạng đó đã sử
dụng trái phép quyền sử dụng được cấp cho họ. Các hệ thống phát hiện xâm
nhập là các phần mềm hoặc các sản phẩm phần cứng thực hiện việc tự động
giám sát và phân tích quá trình này.
Việc phát hiện xâm nhập cho phép các cơ quan bảo vệ hệ thống mạng
máy tính khỏi các mối đe dọa thường xuyên khi mạng máy tính đang vận
hành nhằm bảo vệ an toàn cho các hệ thống thông tin và dữ liệu. Với ý nghĩa
đó, vấn đề đặt ra cho công tác đảm bảo an ninh mạng máy tính không phải là
có nên hay không nên sử dụng IDS mà là sử dụng đặc điểm và tính năng nào
của IDS cho phù hợp với yêu cầu của công tác bảo vệ an ninh mạng. Sau đây
là những tính năng cơ bản nhất của một hệ thống phát hiện xâm nhập.
Hình sau đây giới thiệu một mô hình tổng quát của hệ thống giám sát an
ninh mạng:

9

Hình 1.1: Mô hình tổng quan một hệ thống giám sát an ninh mạng IDS [7]

1.2.2 Thành phần của một IDS chuẩn bao gồm:
- Giải mã gói tin (Packet Decoder)
- Xử lý bộ (Preprocessors)
- Phát hiện phạm vi (Detection Engine)
- Ghi nhật ký và cảnh báo (Logging and Alerting System)
- Các modul xử lý đầu ra (Output Modules)

10

Hình 1.2: Các thành phần cơ bản của một hệ IDS [9]

Giải mã gói tin
Gói tin được tiếp nhận từ card mạng và được bộ chương trình thư viện
libcap tiếp nhận để giải mã. Hệ IDS giải mã gói tin trên tầng Data-link. Hệ
thống IDS có khả năng nhận biết các giao thức truyền thống như IP, TCP,
UDP. Ngoài ra nó còn có khả năng nhận biết các giao thức khác như Ethernet,
802.11, Token Ring.
Hàm PocessPacket() trong bộ chương trình decode có nhiệm vụ giải mã
khung dữ liệu Ethernet. Hàm DecodeIP thực hiện chức năng giải mã gói IP.
Trong quá trình giải mã, nếu các gói tin bị phân mảnh thì khi xử lý phải thêm
chức năng hợp gói tin (defragmentation). Chức năng này được thực hiện bởi
hàm frag2preprocessor.
Một số hệ thống IDS chuyên nghiệp còn có tính năng statefull – tính
năng kiểm soát toàn diện trạng thái. Với tính năng này, IDS có khă năng xử lý
đến 2000 dòng và 64.000 kết nối cùng một lúc. Hệ IDS Snort sử dụng hàm
stream4Preprocessor đảm bảo tính năng statefull cho hệ thống. Ngoài ra, tính
năng statefull còn cho phép hệ thống IDS khả năng xác định được hệ điều
hành của máy xâm nhập và các gói tin vượt ra khỏi phạm vi kiểm soát thông

11

thường (out of state). Chương trình quét thăm dò cổng mạng NMAP cũng có
khả năng tương tự.
Giống như các phần mềm bắt các gói tin khác, hệ thống IDS có khả năng
thu thập mọi thông tin trong quá trình “bắt tay ba lần” của một kết nối TCP và
lưu chúng vào bảng trạng thái kết nối của máy chủ và máy tấn công. Những
thông tin đó là: địa chỉ IP, địa chỉ MAC, các cờ trạng thái kết nối như SYN,
ACK và FIN. Hệ thống IDS còn thông báo kịp thời những tín hiệu sai lệch
trong quá trình bắt tay. Ví dụ hệ IDS Snort có khả năng phát hiên kỹ thuật “
Stealth FIN scan” của chương trình quét cổng NMAP. Kỹ thuật này được áp
dụng để phát hiện những cổng đóng của máy chủ (closed port).
Luật giám sát an ninh và bộ phần mềm phát hiện xâm nhập
Luật giám sát an ninh thông thường được tạo dưới dạng text để tiện cho
việc sửa đổi, cập nhập bổ sung và được lưu trong một thư mục riêng, các tệp
luật được phân theo nhóm. Ví dụ tệp ftp. rules chuyên lưu các dấu hiệu xâm
nhập dịch vụ FTP, http.rules chuyên lưu các dấu hiệu tấn công đối với dịnh vụ
web. Hệ thống giám sát an ninh sẽ so sánh nội dung các gói tin với các dấu
hiệu đã biết trong các dòng của tệp luật và làm kết xuất các phản ứng của hệ
thống một khi có dấu hiệu trùng khớp.
Hệ giám sát an ninh mạng IDS sử dụng danh sách kết nối 3 chiều (3D)
và thuật toán so sánh nội dung Boyer-Moore.
Luật giám sát an ninh mạng được phân chia thành 4 loại tương ứng với 4
loại giao thức:
- TCP: giao thức TCP cho các dịch vụ SMTP, HTTP, FTP
- UDP: giao thức UDP cho các dịch vụ DNS lookups
- ICMP: giao thức ICMP cho các dịch vụ ping, traceroute
- IP: giao thức IP cho các dịch vụ IPSEC, IGMP….

12

Phát hiện vi phạm: Là cấu thành quan trọng nhất của một hệ IDS. Nếu
có sự xuất hiện của hành động xâm nhập trong gói tin thì bộ phát hiện sẽ được
khởi sinh để so sánh với bảng các luật đã cho sẵn. Nếu có gói tin phù hợp với
luật trong khi so sánh thì sẽ có phản ứng từ hệ thống, kể cả chặn gói tin đó lại.
Thông thường sự phản ứng là ghi lại nhật ký hoặc tạo ra cảnh báo.
Bộ phát hiện chiếm khá nhiều thời gian của một hệ IDS, do vậy hiệu quả
của sự phát hiện phụ thuộc nhiều đến năng lực phần cứng của máy tính và số
lượng luật nhiều hay ít. Ngoài ra nếu IDS hoạt động trên môi trường mạng có
băng thông lớn thì có thể xảy ra những trường hợp bỏ qua không bắt kịp gói
tin, do vậy đã không thể ngăn chặn kịp thời gói tin có dấu hiệu xâm nhập hoặc
không thể có những phản ứng kịp thời khác khi có hiện tượng xâm nhập. Dựa
vào những phân tích trên, ta thấy bộ phát hiện xâm nhập phụ thuộc vào những
yếu tố cơ bản sau:
- Số lượng các luật cần phát hiện
- Năng lực của máy tính chạy IDS
- Tốc độ của máy tính chạy IDS
- Khả năng tải trên mạng
Chính vì vậy khi thiết kế một hệ thống IDS chạy trên thực tế phải đảm
bảo bốn yếu tố cơ bản trên để hệ thống hoạt động phù hợp với năng lực của
mạng. [9]
1.2.3 Những tính năng cơ bản nhất của hệ thống phát hiện xâm nhập
Một hệ thống giám sát, phát hiện xâm nhập trái phép phải có đầy đủ các
tính năng cơ bản sau:
- Phòng ngừa các hoạt động bất thường bằng việc gia tăng khả năng phát
hiện các nguy cơ và xử phạt kẻ tấn công hoặc lạm dụng quyền sử dụng hệ
thống vượt qua phạm vi cho phép.

13

- Phát hiện các cuộc tấn công hoặc những vi phạm chế độ an ninh do các
biện pháp khác không ngăn chặn được. Kẻ tấn công thường sử dụng những kỹ
thuật được phổ biến rộng rãi trên mạng Internet để xâm nhập mạng, đặc biệt
là đối với các mạng nối trực tuyến với mạng công cộng. Điều này thường hay
xảy ra khi trong mạng máy tính có các thiết bị mạng, thiết bị máy tính chưa
khắc phục các lỗ hổng an toàn, chưa kịp cài đặt các bản vá phần mềm cần
thiết (service pack) hoặc trong môi trường mạng có quá nhiều chủng loại phần
mềm và phần cứng mà bản thân người quản trị an ninh không kiểm soát nổi.
Một trong những lý do quan trọng khác tạo điều kiện cho kẻ tấn công là lỗi
cấu hình và sử dụng hệ thống của cả người quản trị mạng cũng như người sử
dụng mạng.
- Phát hiện và xử lý các khởi đầu của các cuộc tấn công, thông thường là
các hoạt động thăm dò mạng (doorknob ratting). Khi đối phương tấn công
một hệ thống mạng, chúng thường sử dụng bước thăm dò cấu trúc mạng, các
dịch vụ cho phép sử dụng trên mạng và các lỗ hổng an ninh nếu có. Trên cơ
sở phân tích những kết quả thu nhận được qua bước thăm dò, kẻ tấn công có
thể tìm kiếm khe hở xâm nhập mạng một cách tối ưu nhất. Nếu không áp
dụng IDS thì khả năng phát hiện các cuộc thăm dò là rất ít và kẻ tấn công tự
do phân tích toàn bộ hệ thống mạng nhằm phát hiện chỗ yếu để làm cơ sở cho
các bước tiếp theo của cuộc tấn công.
Khi được bổ sung thêm IDS để giám sát toàn bộ hoạt động, IDS sẽ quan
sát việc quét thăm dò mạng, xác định những dấu hiệu đáng nghi vấn và cảnh
báo cho người quản trị an ninh mạng biết để có những hành động đối phó
thích hợp. Chỉ riêng việc đối phó kịp thời đối với những hoạt động quét,
thăm dò mạng cũng đã góp phần làm giảm nguy cơ khá lớn đối với
những hoạt động xâm nhập mạng.

14

- Ghi nhận những nguy cơ đe dọa an ninh mạng. Hệ thống giám sát an
ninh mạng thẩm tra, ghi nhận và mô hình hóa các nguy cơ từ bên trong và
nguy cơ từ bên ngoài mạng máy tính, hỗ trợ cho các cơ quan ra quyết định về
chính sách và trang thiết bị đảm bảo an ninh an toàn mạng máy tính. Những
thông tin về nguồn gốc và tính chất của cuộc tấn công sẽ giúp chúng ta đưa ra
những quyết định đúng trong định hướng về chiến lược đảm bảo an ninh.
- Thông qua những thông tin phát hiện được để đánh giá công tác quản
trị an ninh mạng và tính hiệu quả của thiết kế các hệ thống đảm bảo an ninh
đang được thực thi. Trên cơ sở đó, giúp bộ phận an ninh mạng khắc phục
được những yếu tố trong hệ thống mạng đang vận hành.
- Cung cấp kịp thời các thông tin hữu ích về các vụ xâm nhập đang xảy
ra nhằm nâng cao nhận thức về công tác đảm bảo an ninh mạng cũng như
tăng cường áp dụng các biện pháp nhằm khắc phục những tác nhân dẫn đến
các cuộc tấn công.[6]
1.2.4 Thành phần chức năng cơ bản của một hệ thống giám sát an
ninh mạng
Trên thị trường hiện nay có khá nhiều IDS khác nhau. Mỗi một IDS đặc
trưng bởi phương pháp phân tích và giám sát khác nhau. Mỗi một phương
pháp có những ưu điểm và nhược điểm riêng. Tuy nhiên tất cả các IDS đều
phải đảm bảo ba thành phần chức năng cơ bản sau:
Thu lượm tài nguyên thông tin ( Information Sources ): Thu lượm tài
nguyên thông tin các sự kiện xảy ra trên mạng để xem việc xâm nhập đã xảy
ra chưa. Các nguồn thông tin này có thể đưa ra từ các cấp độ khác nhau của
hệ thống: mức mạng, mức host, mức ứng dụng.
Phân tích (Analysis): Đó là việc tổ chức, nắm chắc các sự kiện rút ra từ
nguồn thông tin, trên cơ sở đó có thể xác định được các vụ xâm nhập đã và
đang xảy ra. Hai phương pháp phân tích thường gặp nhất là: phương pháp