1
MỤC LỤC
MỞ ĐẦU
Ngày nay, thế giới đang ngày một phát triển, công nghệ thông tin đóng một vai trò
quan trọng trong, không thể thiếu trong mọi lĩnh vực của đời sống. Số lượng máy tính
gia tăng, đòi hỏi hệ thống mạng phải phát triển theo để đáp ứng nhu cầu kết nối toàn
cầu. Hệ thống mạng ngày một phát triển đòi hỏi khả năng quản trị để có thể duy trì
hoạt động của mạng một cách tốt nhất. Vì vậy người quản trị mạng cần một công cụ
hỗ trợ khả năng quản trị.
Đối với một hệ thống mạng, để có thể duy trì mạng hoạt động tốt thì có
rất nhiều thứ phải quản trị như là hiệu năng mạng, lưu lượng mạng, các
ứng dụng chạy trên mạng, người sử dụng mạng, an ninh mạng. Security
Information Event Management (SIEM) là một giải pháp hoàn chỉnh, đầy
đủ cho phép các tổ chức thực hiện việc giám sát các sự kiện an toàn thông
tin cho một hệ thống. Đây là công nghệ được các chuyên gia bảo mật rất
2
quan tâm trong thời gian gần đây. Nó sử dụng các phương pháp phân tích
chuẩn hóa và mối tương quan giữa các sự kiện để đưa ra cảnh báo cho
người quản trị.
Được sự hướng dẫn nhiệt tình của thầy giáo, Tiến sĩ Hoàng Tuấn Hảo,
em đã tìm hiểu, nghiên cứu đề tài: “Xây dựng thiết bị trinh sát mạng”. Đề
tài tập trung tìm hiểu mô hình SIEM, nghiên cứu mô hình thiết bị hệ
thống riêng biệt và tùy chọn trong mã nguồn mở OSSIM, từ đó tích hợp
các công cụ an ninh mạng vào thiết bị và ứng dụng lập trình di truyền
trong bài toán phát hiện xâm nhập trong vào thiết bị.
Do lượng tài liệu chủ yếu bằng tiếng anh và kiến thức còn hạn chế nên
không tránh khỏi những thiếu sót, rất mong nhận được sự đóng góp của
thầy cô và các bạn.
Chương 1
TỔNG QUAN VỀ QUẢN TRỊ HỆ THỐNG AN NINH MẠNG
Ngày nay mạng internet đã lan rộng và phát triển rất mạnh mẽ. Kéo theo nhu cầu
Do các nhà quản lý mạng phải cố gắng triển khai những công nghệ mới nhất vào
hạ tầng cơ sở mạng của mình, an ninh mạng trở thành một chức năng then chốt
trong việc xây dựng và duy trì các mạng hiện đại của mọi tổ chức.
An ninh mạng máy tính là tổng thể các giải pháp về mặt tổ chức và kỹ thuật
nhằm ngăn cản mọi nguy cơ tổn hại đến mạng. Các tổn hại có thể xảy ra do: Lỗi
của người sử dụng, các lỗ hổng trong các hệ điều hành cũng như các chương
trình ứng dụng, các hành động hiểm độc, các lỗi phần cứng…
An ninh mạng máy tính bao gồm vô số các phương pháp được sử dụng để
ngăn cản các nguy cơ tổn hại đến mạng và việc đầu tiên phải tập trung vào việc
quản trị, kiểm soát được toàn bộ hệ thống mạng, nhưng trước hết cần tập trung
vào việc ngăn cản: Lỗi của người sử dụng và các hành động hiểm độc. Và mục
tiêu của an ninh mạng máy tính là cần phải đảm bảo ba nguyên tắc nền tảng đó
là: Đảm bảo tính bí mật, tính toàn vẹn và tính sẵn sàng.
4
Các loại hình tấn công cơ bản:
Tấn công chủ động: Dễ phát hiện nhưng để ngăn chặn hiệu quả thì khó khăn hơn
nhiều. Một thực tế cho thấy bất bỳ một hệ thống nào dù được bảo vệ chắc chắn
đến đâu cũng không thể đảm bảo là an toàn tuyệt đối. Vì vậy chúng ta cần
phải
xây dựng các chiến lượt bảo mật để có thể từng bước bảo vệ hệ thống an toàn
hơn.
Tấn công chủ động gồm: Tấn công chặn bắt thông tin, tấn công sửa đổi thông tin, chèn
thông tin giả mạo, tấn công từ chối dịch vụ…
Tấn công bị động: Biết được thông tin truyền trên mạng. Có hai kiểu tấn công bị
động đó là khai thác nội dung thông điệp và phân tích dòng dữ liệu. Tấn công này chỉ
biết được người gửi, người nhận trong phần IP Header của gói tin và thống kê tần số
trao đổi, số lượng, độ dài của thông tin chứ chúng không thể chỉnh sửa hoặc hủy hoại
thông tin nội dung trao đổi. Kiểu tấn công này khó phát hiện vì nó không làm thay đổi
cho các hệ thống kết nối vào mạng.
- Giám sát quyền truy cập
Nhằm kiểm soát, thống kê được lưu lượng truy cập, sử dụng tài nguyên
của
mạng và quyền hạn trên tài nguyên đó. Hạn chế và phát hiện kịp thời
những
lượng truy cập và sử dụng trái phép tài nguyên mạng.
- Thiết lập tài khoản và mật khẩu
Phương pháp bảo vệ này phổ biến nhất vì nó đơn giản, ít phí tổn và cũng
rất hiệu
quả. Mỗi người sử dụng muốn truy cập vào mạng để sử dụng tài
nguyên đều
phải có một tài khoản và mật khẩu. Trong khi đó, người quản trị
mạng 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 cập của
những người sử dụng khác.
Trong hoàn cảnh thực tế do nhiều nguyên nhân khác nhau như quên mật
khẩu
hay bị đánh cắp mật khẩu. Người quản trị mạng chịu trách nhiệm đặt mật
khẩu
Chương 2
HỆ THỐNG QUẢN LÝ SỰ KIỆN THÔNG TIN AN NINH
Trong nhiều tổ chức, chính sách an ninh hoặc nguyên tắc kinh doanh yêu cầu các
biến cố an ninh phải được lưu trữ để giám sát và xác định các vấn đề an ninh. Thông
tin thu thập được trong các biến cố an ninh thường rất quan trọng để tái tạo chuỗi các
sự kiện trong quá trình điều tra và quản lý an ninh hệ thống. Số lượng thông tin được
tạo ra bởi các thiết bị an ninh và hệ thống có thể rất lớn, trong đó nhiều thông tin
không cần thiết, các kiểu định dạng có thể khác nhau nên tỷ lệ chính xác mà các cảnh
báo được tạo ra thường rất thấp. Hơn thế nữa, các thiết bị khác nhau có thể tạo ra báo
7
cáo về cùng một biến cố an ninh bằng các cách khác nhau mà không có phương pháp
nào để phân biệt được chúng.
Bởi vậy, việc xây dựng hệ thống quản lý sự kiện thông tin an ninh hợp lý sẽ mang
lại lợi ích lớn trong hoạt động quản lý an ninh, làm giảm công sức, tăng hiệu quả làm
việc của những người quản trị hệ thống thông tin trong việc giám sát các thiết bị an
ninh. Việc xây dựng và quản lý hệ thống sự kiện thông tin an ninh hết sức quan trọng,
đòi hỏi kinh nghiệm và công sức của những người quản trị trong thời gian dài.
2.1 Hệ thống mã nguồn mở quản lí sự kiện thông tin an ninh
Sercurity information event management (SIEM) là một giải pháp hoàn chỉnh cho
phép các tổ chức thực hiện việc giám sát các sự kiện an toàn thông tin cho một hệ
thống. SIEM là sự kết hợp một số tính năng của quản lí thông tin an ninh (SEM) và
quản lí sự kiện an ninh (SIM). Trong đó hệ thống mã nguồn mở SIEM có thể được tách
làm hai chức năng:
Sercurity event management (SEM): Thu thập các event log data do các thành phần
(thiết bị, ứng dụng) trong hệ thống tạo ra. Sau đó tập trung hóa việc lưu trữ và xử lí,
phân tích các sự kiện rồi lập báo cáo, đưa ra thông báo, cảnh báo liên quan đến an ninh
của hệ thống.
Sercurity information management (SIM): Thông tin được lưu trữ từ SIM, được sử
dụng để báo cáo dữ liệu đăng nhập cho bất kì thời gian nhất định. SIEM được định
nghĩa như một bộ công nghệ gồm:
liệu, sự kiện vào môi trường phần cứng để truy cập và phân tích event từ ArcSight.
9
Một kết nối Hadpoop hai chiều chung có sẵn. ArcSight Faster được xem xét cho triển
khai SIEM hạng trung. ESM là sản phẩm thích hợp cho các triển khai lớn hơn.
- Thu thập tất cả mọi thứ: đăng nhập dữ liệu từ bất kỳ thiết bị nào được bố trí trên cơ
sở hoặc trong đám mây, trong đó có công ty SaaS như Salesforce, Box.net và Okta.
- Corre kiến trúc: tối ưu hóa để chạy trên nhiều bộ xử lý, nén dữ liệu cao và nhanh hơn
thông qua sự kiện.
- Phân tích sự kiện: tìm kiếm tương tác hiệu suất cao, toàn diện khoan xuống báo cáo,
và cảnh báo thời gian thực
Ưu điểm:
+ Cung cấp một bộ đầy đủ các tính năng có thể sử dụng để hỗ trợ cho hệ thống trung
tâm an ninh.
+ ArcSight Express cung cấp một lựa chọn triển khai đơn giản SIEM hạng trung.
+ Thiết lập module để theo dõi hoạt động người dùng, quản lí thông tin.
Tính năng
o HP ArcSight ESM là một mạnh mẽ và linh hoạt các mối đe dọa và nguy cơ giám sát nền
tảng có thể được sử dụng để xây dựng các quy tắc quản lý phức tạp an ninh cần thiết
để ngăn chặn mối đe dọa phức tạp ngày nay.
o FlexConnector phát triển Kit
o Nắm bắt bất kỳ dữ liệu nào từ bất kỳ thiết bị, Hệ thống hoặc ứng dụng bằng cách sử
dụng một đơn giản "kéo và thả" kết nối phát triển khung.
o Đăng nhập quản lý Framework.Quản lý và lưu trữ mỗi sự kiện xảy ra trong môi
trường của bạn một cách an toàn và hiệu quả.
o Directory hội nhập.Đồng bộ hóa người dùng, vai trò và quyền lợi được thông tin từ
thư mục công ty tìm thấy hoạt động trái phép người dùng, chia sẻ tài khoản sử dụng,
và vi phạm chính sách vai trò.
o Web dịch vụ API: Giao tiếp với nhau nó khuôn khổ quản lý để thu thập dữ liệu hoặc
cung cấp thông minh thông tin cho các nhà phân tích, kiểm toán viên và quản lý.
o Sự kiện Nhật ký được lưu trữ hiệu quả hơn để tìm kiếm và cảnh báo xảy ra nhanh
trung cho toàn bộ hệ thống SIEM (Security Operation Center). Các giao diện được
phân quyền theo vai trò của người quản trị…
2.2.2 Một số các SIEM nguồn mở
11
a. Apache Lois
Apache LOIS là một công cụ mã nguồn mở được thiết kế như SIEM nhằm
phát hiện sự rò rỉ dữ liệu trong các hệ thống, nhiệm vụ chính của lois là thu thập
và phân tích dữ liệu cũng như báo cáo các sự kiện bảo mật liên quan của hệ
thống đến người quản trị mạng. Vì vậy, nó được sử dụng để tích hợp cho tất cả
các dữ liệu thu thập được như 1 plattform.
Apache LOIS là một bộ sưu tập nhật ký, phần mềm tương quan báo cáo và
chức năng báo động. ALOIS được viết tắt “Advanced Log Data Insight
System" được hiểu là một mã nguồn mở thực hiện đầy đủ các thông tin bảo mật
SIEM và hệ thống quản lí sự kiện. Nhằm giám sát sự an toàn của nội dung, chủ
động trong việc phát hiện khả năng mất, trộm cắp nhầm lẫn sửa đổi hoặc truy
cập trái phép.
Hình vẽ 2.4: Tổng quan về dòng chảy dữ liệu thông qua các module khác nhau
Cấu trúc của Apche ALOIS gồm 5 phần:
+ Insink: Tập hợp các thông điệp (message) đăng nhập khác nhau vào Apache
LOIS. Nó là một phần mềm dựa trên phần mềm syslog lắng nghe các thông điệp
UDP, chờ thông điệp TCP và nhận các bộ sưu tập tin như file, email…trước các
bộ lọc để ngăn chặn sự quá tải từ các thông điệp đến hệ thống.
+ Pumpy: là một bộ đệm FIFO thực hiện như một bảng cơ sở dữ liệu quan hệ
có chứa các thông điệp đến ban đầu.
+ Prisma: phân loại các thông điệp đăng nhập vào các lĩnh vực riêng biệt dựa
trên những biểu thức thông thường. Trên thực tế Prisma là một tập hợp các
12
prismi, mỗi một prisma là một dạng thông điệp đăng nhập. Một số prismi có thể
được áp dụng cho cùng một thông điệp.
+ Dobby là cơ sở dữ liệu log trung tâm.
sự bất thường đó.
Prontend: Lối vào là điểm tập trung để triển khai xem sự bất thường và tấn
công hệ thống, và cho biết tình trạng an ninh của hệ thống.
The Predule Library: Bao gồm một số công cụ nhằm hỗ trợ và tăng cường sự
phát hiện tấn công cũng như ngăn chặn nó như: Snort, Nessus, Nagios,
Systrace…
Hình vẽ 2.6: Kiến trúc của Predule
14
Cảm biến sensor có nhiệm vụ phát hiện xâm nhập và báo cáo các dấu hiệu,
cảnh báo tới người quản lí bằng cách sử dụng một kết nối TLS tới “Predule-
Manager” server. Sau đó Predule-Manager có thể xử lí các cảnh báo và và được
lưu vào CSDL của hệ thống như: MySQL, PostgreSQL, tập tin XML…Tất cả sẽ
được hiển thị lên một giao diện để xem những dấu hiệu tấn công, các cảnh báo
của hệ thống.
Khả năng tương thích của Predule:
Predule là một hệ thống có khả năng tương thích SIM với tất cả hệ thống có
sẵn trên thị trường. Được hỗ trợ với nhiều ngôn ngữ khác nhau như C, C+,
Python, Ruby, Lua và Perl để người sử dụng có thể dễ dàng hơn trong việc cấu
hình hệ thống cũng như chuyển đổi các ứng dụng bảo mật khác nhau.
Khả năng tương thích nguồn gốc:
Sự phù hợp giữa Predule và các giải pháp bảo mật làm cải thiện chất lượng
khả năng thu thập và cấu hình dữ liệu:
Khả năng tương thích đăng nhập:
Predule có khả năng phân tích bất kì loại log nào (bản ghi hệ thống,
syslog…).
15
c. OSSIM
Hiện tại vấn đề thu thập và quản lý các sự kiện từ tất cả các thiết bị CNTT như: FW,
IPS/IDS, Servers, Switch, App, Router, đang là vấn đề quan trọng với doanh nghiệp,
nếu không có việc thu thập và quản lý log tập trung và lâu dài sẽ làm ảnh hưởng đến
Ntop và OSSEC…
Các chức năng quan trọng của OSSIM:
Bảo vệ thông tin và tài nguyên quan trọng
Thực hiện theo dõi theo thời gian thực các tài nguyên quan trọng trong hệ thống
như: File server, các hệ thống kiểm soát và các cơ sở dữ liệu giúp nhận ra những trạng
thái bất ổn ngay cả khi các hệ thống đang hoạt động bình thường. OSSIM phân tích
từng mảnh nhỏ các thông tin mà nó thu thập để nhận ra những điểm yếu trong hệ
thống từ đó đưa ra những hành động cảnh bảo sớm cho người quản trị.
Cải thiện khả năng điều tra và khắc phục sự cố
Áp lực trong việc thu thập và lưu trữ dữ liệu có liên quan đến kiểm toán từ nhiều
nguồn khác nhau. Việc quản lý nhật ký không hiệu quả, việc tìm kiếm thông tin từ
hàng Terabytes dữ liệu là gần như không thể. Trong khi các sự kiện này thực sự cần
thiết trong để hỗ trợ cho việc kiểm toán và điều tra. AlientVault có thể giúp hệ thống
lưu trữ và quản lý một lượng lớn dữ liệu nhật ký đồng thời cho phép nhanh chóng xử
lý, phân tích điều tra hoặc tự động báo cáo theo cấu hình của người quản trị hệ thống.
Theo dõi hành động bất thường của người dùng
AlientVault cung cấp khả năng quan sát toàn diện hệ thống, cho biết ai đang kết nối
và làm gì trên hệ thống mạng. AlientVault liên kết các thông tin người dùng như: tên,
vai trò cùng với thông tin chính xác về các ứng dụng và vị trí trong mạng để cung cấp
khả năng xác minh các kết nối giữa người dùng thực tế (không chỉ dựa vào IP
Address) với những hành động có mức độ rủi ro cao.
Cung cấp sự tuân thủ với chi phí thấp
Để vượt qua được các bước trong quá trình kiểm toán, hệ thống mạng của một tổ
chức phải đủ khả năng tự động chống đỡ trước các tấn công và bảo vệ các thông tin bí
mật. AlientVault xây dựng sẵn và cung cấp các gói cho phép đáp ứng các tuân thủ này
theo các yêu cầu cụ thể. Kết quả là các báo cáo tuân thủ sẽ được tự động thực hiện và
kiểm soát tuân thủ được giám sát liên tục, hiệu quả mang lại nhanh chóng trong khi
chi phí thấp.
17
Chương 3
Theo thông số và yêu cầu của phần mềm mã nguồn mở yêu cầu phần cứng của hệ
thống như sau:
Hình vẽ 3.1: Yêu cầu hệ thống phần cứng của thiết bị
• Card mạng
19
Khi xem xét card mạng, bạn nên cố gắng để lựa chọn những hỗ trợ bởi trình điều
khiển e1000.Mô hình phát triển nguồn mở của trình điều khiển này đảm bảo khả năng
tương thích tốt của các card với Debian GNU / Linux
• Network tap:
+ Là một thiết bị phần cứng để truy cập dữ liệu lưu thông qua mạng máy tính, có vai
trò giám sát lưu lượng mạng giao thông giữa hai điểm mạng.
+ Network tap có ít nhất 3 cổng: Cổng A, cổng B và cổng màn hình, một tap sẽ được
chèn vào giữa hai cổng A và B, nó sẽ cho tất cả các lưu lượng mạng truy cập thông qua
không bị cản trở và có một bản sao dữ liệu đến cổng màn hình để nghe thông tin.
+ Network tap thường được sử dụng cho các hệ thống phát hiện xâm nhập, thiết bị
thăm dò mạng và các thiết bị giám sát và thu thập, thường được sử dụng trong các
ứng dụng bảo mật vì nó không làm ảnh hưởng tới mạng và khó bị phát hiện.
Hình vẽ 3.2: Sơ đồ bố trí cài đặt các thiết bị
Chức năng cơ bản của thiết bị: Gồm hai phần chính
• Thiết bị thu thập
Thu thập, tập hợp các sự kiện được tạo ra trên hệ thống mạng, phân loại và định
dạng của mỗi loại sự kiện.
• Thiết bị quản trị
20
Phân tích, phát hiện các dấu hiệu xâm phạm, bất thường, sự tổn thương, các cuộc
tấn công bên trong và bên ngoài hệ thống. Thiết bị còn có thể phát hiện các lỗ hổng và
xác định các mối đe dọa tiềm ẩn đề có thể sửa chữa ngay trước khi cuộc tấn công có
thể xảy ra, đưa ra cảnh báo, báo cáo đến người quản trị.
3.1 Xây dựng hạt nhân nguồn mở đặc thù cài đặt trên thiết bị thu thập thông tin an
ninh mạng
Quản lý tài nguyên: Như là bộ đĩa cứng…
22
Quản lý hệ thống file.
Quản lý các tiến trình.
Quản lý các bộ điều khiển thiết bị.
Quản lý lưu lượng mạng.
Quản lý việc khởi động và dừng máy .
Quản lý bộ nhớ ảo: Để thực thi nhiều tiến trình đồng thời trong khi bộ nhớ có hạn,
Linux tổ chức bộ nhớ trên đĩa như một vùng bộ nhớ. Kernel phải “swap” các tiến trình
giữa bộ nhớ và bộ nhớ ảo.
3.1.2Cấu trúc bộ cài OSSIM
OSSIM (Open Source Security Information Management) là một mã nguồn mở
quản lý sự kiện, thông tin an ninh bao gồm một tập hợp các công cụ được thiết kế để
trợ giúp các nhân viên quản trị mạng phát hiện và phòng chống xâm nhập.
Cấu trúc bộ cài của OSSIM:
Trong bài em sử dụng Ossim phiên bản:
alienvault_open_source_siem_3.1_32bits.iso
Bộ cài Ossim được viết theo nhiều ngôn như khác nhau như: C, python, PHP, shell
script…Có thể hiểu Ossim như là một hệ điều hành Debian(Linux) và tích hợp các
công cụ an ninh mạng trong hệ thống.
Các file cấu hình chính của bộ cài tích hợp các công cụ an ninh mạng theo đường
dẫn: \pool\main\ \
Là file tập hợp tất cả các công cụ an ninh mạng được tích hợp vào OSSIM như
Arpwatch, P0f, Pads, Fprobe, Snort, Nessus, Ntop…
23
Và các file cấu hình như:
Khả năng hoạt động của OSSIM:
• Sự trích suất: Mục đích OSSIM không chỉ để thu thập thông tin chi tiết dựa trên IDS
hoặc giám sát thụ động, mà còn thực hiện một quá trình trích suất trong đó hàng triệu
sự kiện kỹ thuật nhỏ trở thành hàng chục báo động mà con người có thể hiểu được.
+ Module kết xuất thông tin.
• Nessus: quét lỗ hổng.
Là một công cụ quét lỗ hổng bảo mật dùng để kiểm tra tính an toàn cho một hệ
thống, tính bảo mật của một trang web từ xa, máy tính cục bộ hay những thiết bị bảo
vệ thông tin…
Các thành phần chính của Nessus gồm:
+ Nessus Engine: nhận, thực thi và trả lời lại các yêu cầu quét của người dùng. Việc
quét các lỗ hổng được thực hiện theo các chỉ dẫn của các plugin (một tập các câu lệnh
script của ngôn ngữ kịch bản NASL).
+ Nessus Plugin: hệ thống file của ngôn ngữ kịch bản NASL, gồm các file định
nghĩa .inc và file kịch bản .nasl.
+ Nessus Server (nessusd): thực hiện nhận các yêu cầu quét của người dùng, sau đó
phân tích, tổng hợp, trả lại kết quả cho Nessus client.
25
+ Nessus Client: hiển thị kết quả quét lại cho người dùng thông qua trình duyệt
web.
+ Nessus Knowledge Base: “Cơ sở dữ liệu đã biết” của Nessus cho phép các plugin
sau tận dụng dữ liệu kết quả của Plugin trước đó. Điều này giúp Nessus dễ dàng mở
rộng và tăng tốc độ thực thi.
• Ntop: giám sát mạng.
Là công cụ được dùng để giám sát và đo lường lưu lượng mạng. Ntop cung cấp các
biểu đồ và các số liệu thống kê từ việc phân tích các lưu lượng mạng được giám sát.
Ntop đồng thời cũng chứa rất nhiều thông tin về các loại dữ liệu chạy trong mạng, tạo
một hồ sơ cho phép theo dõi từng người dùng trong mạng.
Công việc chính của Ntop:
+ Đo lường lưu lượng.
+ Giám sát lưu lượng.
+ Lập kế hoạch và tối ưu hóa mạng.
+ Phát hiện các vi phạm an ninh mạng.
• Nagios: giám sát hiệu năng.