KHÁI NIỆM
Thông tin an ninh mạng ghi lại các hoạt động của hệ thống, giúp quản trị viên phát hiện nguồn gốc các cuộc tấn công an ninh và các vấn đề khác trong mạng.
Thu thập và phân tích thông tin an ninh mạng là quá trình quan trọng nhằm thu thập dữ liệu và sự kiện liên quan đến an ninh mạng Mục tiêu chính của việc này là phát hiện các tấn công, lỗi và lỗ hổng trong hệ thống thông qua việc phân tích các dữ liệu nhật ký đã được lưu trữ.
Việc thu thập và phân tích thông tin an ninh mạng có thể được thực hiện trực tuyến hoặc ngoại tuyến.
Dữ liệu nhật ký là thông tin ghi lại hoạt động trong hệ thống, như việc một máy chủ web lưu lại mọi lần truy cập tài nguyên (hình ảnh, tập tin, vv…) của người dùng Khi người dùng truy cập trang đã được xác thực, nhật ký sẽ ghi lại tên người dùng (username), cho phép xác định ai đang truy cập tài nguyên.
Các sự kiện cần được lưu lại trong một các mục phân loại sau:
- Sự kiện liên quan chính sách truy cập và quản trị
- Sự kiện liên quan đến chính sách bảo mật dữ liệu và toàn vẹn dữ liệu
- Sự kiện liên quan đến độ sẵn sàng
- Sự kiện liên quan đến chính sách mật mã
MỤC ĐÍCH, VAI TRÒ, Ý NGHĨA VÀ YÊU CẦU
Mục đích
Việc thu thập và phân tích thông tin an ninh mạng giúp theo dõi hoạt động của hệ thống mạng, từ hiệu suất đến phát hiện lỗ hổng và xâm nhập trái phép Những dữ liệu này không chỉ cung cấp cái nhìn rõ ràng về tình hình an ninh sau một sự cố mà còn là nguồn chứng cứ quan trọng trong việc điều tra các hoạt động phá hoại của tin tặc.
Dưới đây là một số mục đích chính của việc thu thập và phân tích thông tin an ninh mạng.
Nhật ký không chỉ cho biết trạng thái hoạt động của máy chủ mà còn cung cấp thông tin về các ứng dụng đang chạy Các sự cố và hỏng hóc trên phần cứng và phần mềm được ghi lại trong dữ liệu nhật ký trước khi hệ thống gặp sự cố nghiêm trọng Khi phục hồi sau hỏng hóc, việc kiểm tra nhật ký thường xuyên giúp xác định nguyên nhân gốc rễ Dưới đây là ví dụ điển hình về một hỏng hóc có thể tìm thấy trong các log.
May 21 08:33:00 foo.example.com kernel: pid 1427 (dd), uid 2 inumber
Thông báo trên cho thấy rằng hệ thống tập tin var trên máy chủ đã bị đầy.
Phát hiện xâm nhập trái phép
Thông tin an ninh mạng được lưu lại (như các bản ghi NIDS) rất hữu ích cho phát hiện xâm nhập Ví dụ:
Sep 17 07:00:02 host.example.com: sshd[721038]: Failed password for illegal user erin from 192.168.2.4 port 44670 ssh2
Một đăng nhập không thành công đã được ghi nhận với tên người dùng "erin", cho thấy sự tồn tại của các nỗ lực truy cập trái phép do không có tài khoản tương ứng trên hệ thống Thông báo này phản ánh hành động của kẻ tấn công sử dụng bộ công cụ quét SSH để thử đăng nhập vào máy chủ, thông qua việc sử dụng các tên người dùng và mật khẩu phổ biến Ví dụ này được rút ra từ hàng ngàn lượt quét diễn ra trong khoảng thời gian ngắn.
Chúng ta cùng xem một thông điệp từ Snort, một NIDS mã nguồn mở
Jan 2 16:19:23 host.example.com snort[1260]: RPC Info Query: 10.2.3.4 -> host.example.com:111
Jan 2 16:19:31 host.example.com snort[1260]: spp_portscan: portscan status from 10.2.3.4: 2 connections across 1 hosts: TCP(2), UDP(0)
Kẻ tấn công đã thực hiện quét cổng trên mạng nhằm tìm kiếm máy chủ chạy dịch vụ rcp.statd, vì dịch vụ này chứa nhiều lỗ hổng có thể bị khai thác Quá trình quét cổng đã thành công, kết nối được đến hai máy trong mạng.
Các bản ghi đóng vai trò quan trọng trong việc đánh giá và xử lý sự cố, đặc biệt là sự cố an ninh, bằng cách cung cấp thông tin giúp xác định nguyên nhân và tìm ra biện pháp khắc phục Quá trình điều tra số là việc xây dựng hình ảnh về "những gì đã xảy ra" sau sự kiện, mặc dù thông tin có thể không đầy đủ, nhưng độ tin cậy của nó là rất quan trọng Các log thường là thành phần thiết yếu trong quá trình điều tra này.
Nhật ký là loại hồ sơ "thường trú" không bị thay đổi trong quá trình sử dụng bình thường của hệ thống, do đó chúng cung cấp một bổ sung chính xác cho các dữ liệu khác trên hệ thống, những dữ liệu này có thể dễ bị thay đổi.
Dữ liệu thu thập thường ghi lại thời điểm nhận và lưu trữ trên mỗi bản ghi, giúp xác định trình tự thời gian của các sự kiện Điều này không chỉ cho biết những gì đã xảy ra mà còn chỉ ra sự kiện diễn ra theo thứ tự Các bản ghi được chuyển tiếp đến một máy chủ, thường là nhà sưu tập nhật ký trung tâm, cung cấp bằng chứng về nguồn gốc riêng biệt Nếu tính chính xác của thông tin nguồn gốc bị nghi ngờ, chẳng hạn do kẻ xâm nhập có thể đã thay đổi hoặc xóa bản ghi, thì các nguồn thông tin riêng biệt có thể được coi là bổ sung đáng tin cậy hơn.
Các bản ghi từ nhiều nguồn khác nhau có thể chứng thực và củng cố tính chính xác của thông tin, đồng thời phục vụ để hỗ trợ các chứng cứ khác Việc tái tạo hình ảnh một sự kiện thường dựa vào dữ liệu từ nhiều nguồn như tập tin, lịch sử lệnh người dùng và dữ liệu mạng Đôi khi, các bản ghi có thể bác bỏ những bằng chứng khác, cho thấy rằng các nguồn thông tin có thể đã bị xâm phạm Mặc dù các bản ghi có thể chỉ ra các hoạt động cụ thể, nhưng chúng không luôn cung cấp đầy đủ thông tin về ai đã thực hiện chúng Trong trường hợp máy chủ bị tấn công, các bản ghi có thể trở thành nguồn thông tin duy nhất đáng tin cậy, đặc biệt khi chúng được chuyển tiếp đến một máy chủ trung tâm đăng nhập.
Các bản ghi trước khi máy chủ bị xâm nhập có thể đáng tin cậy, trong khi các bản ghi sau sự cố cần được xem xét cẩn thận Tuy nhiên, những báo cáo thu thập được trước khi xảy ra sự kiện này có thể cung cấp thông tin quý giá để làm rõ tình hình và hướng dẫn bạn trong quá trình điều tra.
Vai trò, ý nghĩa
Quy trình bảo vệ an ninh mạng có thể được tiến hành một chu trình được mô tả như sau:
Hình 1.1 Quy trình đảm bảo an ninhChu trình này bao gồm bốn giai đoạn:
Ngày nay, các cuộc tấn công vào hệ thống mạng ngày càng tinh vi, thường khai thác các điểm yếu từ hệ điều hành, ứng dụng, chương trình hoặc do cấu hình sai Mục tiêu của những cuộc tấn công này là để xâm phạm một trong bốn đặc tính bảo mật: tính bí mật, tính xác thực, tính toàn vẹn và tính sẵn sàng Hình 1.2 mô tả 5 pha tấn công mà kẻ xâm nhập thường sử dụng.
- Pha 1 - Khảo sát thu thập thông tin: nhằm thu thập thông tin về nơi cần tấn công
Pha 2 - Dò tìm: Trong giai đoạn này, chúng ta sử dụng thông tin thu thập từ pha 1 để tìm kiếm thêm các lỗ hổng và điểm yếu trong hệ thống mạng Các công cụ phổ biến thường được áp dụng bao gồm công cụ quét cổng, quét dãy địa chỉ IP và dò tìm lỗ hổng, nhằm nâng cao khả năng bảo mật cho hệ thống.
- Pha 3- Xâm nhập: các lỗ hổng, điểm yếu được dò tìm trong 2 pha ở trên được sử dụng khai thác để xâm nhập vào hệ thống.
Giai đoạn 4 - Duy trì xâm nhập: Sau khi kẻ tấn công đã xâm nhập vào hệ thống, bước tiếp theo là duy trì các xâm nhập này để khai thác và tiếp tục xâm nhập trong tương lai Các kỹ thuật như backdoors và trojans thường được sử dụng Khi kẻ tấn công kiểm soát hệ thống, chúng có thể lợi dụng nó để tấn công các hệ thống khác, và hệ thống bị lợi dụng trong trường hợp này được gọi là hệ thống zombie.
Giai đoạn 5 - Che đậy và xóa dấu vết: Sau khi kẻ tấn công xâm nhập thành công và cố gắng duy trì quyền truy cập, bước tiếp theo là xóa sạch mọi dấu vết để loại bỏ chứng cứ pháp lý Kẻ tấn công cần phải xóa các tập tin log và gỡ bỏ các cảnh báo từ hệ thống phát hiện xâm nhập để đảm bảo không bị phát hiện.
Pha 2 (dò tìm) và pha 3 (xâm nhập) kẻ tấn công thường làm lưu lượng, kết nối mạng thay đổi khác với lúc mạng bình thường rất nhiều Nếu phân tích kỹ các bất thường này để rút trích ra các đặc trưng hữu ích của mạng có thể từ đó phân tích, phát hiện các xâm nhập như: quét cổng, quét dãy địa chỉ IP, tấn công từ chối dịch vụ (DoS), v.v…
Việc nhận biết các cuộc tấn công mạng ngay từ hai pha đầu tiên, bao gồm khảo sát thông tin và dò tìm thông tin, là rất quan trọng để hạn chế các pha tấn công tiếp theo Do đó, thu thập và phân tích thông tin an ninh mạng đóng vai trò then chốt trong quy trình bảo vệ an ninh mạng, giúp người quản trị mạng phát hiện sớm các pha tấn công đang diễn ra trong hệ thống.
Yêu cầu
Trong thu thập và phân tích thông tin an ninh mạng cần đảm bảo một số yêu cầu sau:
Dự phòng: dữ liệu thu thập được cần được lưu trữ dự phòng ở nhiều nơi khác nhau, giảm thiểu nguy cơ mất mát dữ liệu.
Sử dụng và kết hợp nhiều phương pháp đánh giá khác nhau là cần thiết để đảm bảo thu thập và phân tích thông tin một cách chính xác và hiệu quả.
PHÂN LOẠI DỮ LIỆU THU THẬP
Lỗi
Thông báo lỗi đăng nhập giúp chuyển tiếp các lỗi xảy ra trong hệ thống máy tính, chẳng hạn như khi một hệ điều hành không thể đồng bộ hóa bộ đệm vào đĩa Tuy nhiên, nhiều thông báo lỗi chỉ cung cấp thông tin khởi đầu về nguyên nhân, vì vậy cần tiếp tục điều tra để xác định nguyên nhân gốc rễ của lỗi.
Cảnh báo
Cảnh báo là tín hiệu cho biết một sự kiện thú vị đã xảy ra, thường liên quan đến thiết bị an ninh và bảo mật hệ thống Mặc dù không phải là quy tắc cứng, cảnh báo thường xuất hiện trong các lĩnh vực này Một hệ thống ngăn chặn xâm nhập có thể được đặt ở vị trí đầu dòng trên mạng máy tính, kiểm tra tất cả lưu lượng truy cập nội bộ.
IPS sẽ quyết định xem một kết nối mạng cụ thể có được phép hay không dựa trên nội dung của các gói dữ liệu Nếu phát hiện một kết nối có khả năng độc hại, IPS có thể thực hiện nhiều hành động đã được cấu hình sẵn Quá trình xác định và các hành động thực hiện sẽ được ghi lại.
GIỚI THIỆU MỘT SỐ CÔNG CỤ, GIAO THỨC, ĐỊNH DẠNG
Wireshark
Wireshark là một công cụ phân tích gói tin mạnh mẽ, tích hợp chức năng đọc hiểu các giao thức, cho phép tự động thông dịch và hiển thị chi tiết thông tin bên trong các gói tin Công cụ này hỗ trợ sàng lọc dựa trên thông tin của các trường xác định trong giao thức, đồng thời cho phép người dùng tự viết và tích hợp các tính năng mới dưới dạng plugins.
Hình 1.1 Màn hình chặn bắt gói tin trong Wireshark
1.4.1.2 Chức năng chính trong Wireshark a) Chặn bắt gói tin
Sau khi cài đặt Wireshark thành công, khởi động chương trình và chọn thành phần trong danh sách giao diện để bắt đầu Để giám sát lưu lượng mạng qua mạng Wireless, hãy chọn card mạng Wifi tương ứng và nhấn nút "Capture Options" để hiển thị thêm nhiều tùy chọn khác.
Hình 1.2 Lựa chọn giao diện mạng để bắt gói tin trong Wireshark
Ngay sau khi bắt đầu, các gói dữ liệu sẽ xuất hiện, và Wireshark sẽ chặn bắt từng gói tin ra vào hệ thống mạng Khi giám sát thông tin trên mạng không dây trong chế độ Promiscuous, người dùng sẽ có thể nhìn thấy các gói dữ liệu khác trong toàn bộ hệ thống.
Hình 1.3 Thông tin về các gói tin được chặn bắt
Nếu muốn tạm ngừng quá trình này thì các bạn nhấn nút Stop ở phía trên, như hình dưới đây:
Wireshark sử dụng màu sắc để phân biệt các loại traffic khác nhau, với màu xanh lá cây đại diện cho traffic TCP, xanh da trời đậm cho traffic DNS và xanh da trời nhạt cho traffic khác.
UDP và màu đen là gói TCP đang có vấn đề. b) Lọc gói tin
Để áp dụng bộ lọc trong Wireshark, bạn chỉ cần nhập thông tin vào ô Filter và nhấn Apply hoặc Enter Chẳng hạn, khi nhập từ khóa "dns", bạn sẽ chỉ thấy các gói dữ liệu liên quan đến DNS Wireshark sẽ tự động hoàn chỉnh chuỗi thông tin dựa trên gợi ý khi bạn nhập từ khóa.
Hoặc nhấn menu Analyze > Display Filters để tạo filter mới:
Nhấn chuột phải vào từng package và chọn Follow TCP Stream:
We will observe the entire communication timeline between the server and client Closing this window will automatically apply the filter, allowing Wireshark to continue displaying all relevant packets accurately Additionally, we will inspect the packets for further analysis.
Mặc định Wireshark hiển thị các gói tin với ba mục:
Danh sách gói tin hiển thị các gói tin đã bị chặn bắt, mỗi gói tin được trình bày trên một dòng với thông tin tóm tắt bao gồm thời gian bị chặn, địa chỉ IP nguồn và đích, giao thức tầng cao nhất sử dụng trong gói tin, cùng với một số thông tin khác liên quan đến nội dung gói tin.
Gói tin được tô sáng trong danh sách gói tin cung cấp thông tin chi tiết về các giao thức ở tất cả các tầng mà Wireshark có khả năng phân tích và thông dịch.
Hiển thi byte trong gói tin: hiển thị dạng thập lục phân và định dạngACSII biểu diễn nội dung gói tin, bao gồm dữ liệu ở tầng 2.
Hình 1.4 Nội dung chi tiết gói tin trong Wireshark
Trong hình trên, trong khung 24, Wireshark xác định các giao thức
Ethernet II, Internet Protocol và Transmission Control Protocol là ba giao thức quan trọng trong mạng máy tính Mỗi giao thức cung cấp thông tin thiết yếu, chẳng hạn như cổng nguồn và cổng đích cho giao thức TCP, giúp người dùng hiểu rõ hơn về cấu trúc và chức năng của từng giao thức.
tshark
Tshark là công cụ phân tích giao thức mạng dòng lệnh, thuộc phiên bản của Wireshark, sử dụng libpcap để đọc và lưu tệp với định dạng tương tự Ngoài chức năng phân tích, tshark còn cho phép chặn bắt gói tin Ví dụ, để chặn bắt luồng dữ liệu trên giao diện mạng "eth0", loại bỏ toàn bộ luồng dữ liệu trên cổng 22 và lưu kết quả vào tệp "test.pcap".
Trong tshark, thông tin đầu ra mặc định được hiển thị dưới dạng PSML, nhưng khi sử dụng cờ “-V”, thông tin sẽ được hiển thị dưới dạng PDML Dưới đây là một số ví dụ về cách sử dụng tshark để đọc thông tin từ tệp lưu trữ gói tin.
Vô hiệu hóa phân giải tên đối tượng mạng sử dụng cờ -n, chúng ta có thể xem được địa chỉ thực IP và các cổng
Để chọn định dạng đầu ra, sử dụng cờ T với các lựa chọn bao gồm pdml, psml, ps, text và fields, trong đó định dạng mặc định là “text” Trong ví dụ này, chúng ta xuất dữ liệu dưới định dạng PSML, cho phép cung cấp chi tiết gói tin trong giao thức dưới dạng XML.
Sử dụng lệnh `$tshark -r capturefile.pcap -T pdml` để hiển thị thông tin từ một tệp capture Để xem thông tin của một trường cụ thể, bạn có thể sử dụng cờ `-e` kết hợp với tùy chọn `-T fields` Ví dụ, lệnh này có thể được sử dụng để hiển thị thứ tự khung Ethernet, địa chỉ IP và thông tin về giao thức UDP.
$tshark – r capturefile.pcap –T fields –e frame.number –e ip.addr – e upd
CÂU HỎI VÀ BÀI TẬP CHƯƠNG 1
1 Trình bày khái niệm thông tin an ninh mạng và thu thập phân tích thông tin an ninh mạng?
THIẾT LẬP HỆ THỐNG THU THẬP THÔNG TIN AN
Kiến trúc và thành phần hệ thống
Trước đây, các tương tác từ xa với hệ thống chủ yếu sử dụng các giao thức không mã hóa như FTP, HTTP và Telnet, cho phép dễ dàng thu thập thông tin từ gói tin mạng Tuy nhiên, hiện nay, hacker đã chuyển sang sử dụng các giao thức mã hóa như SSH và 3DES, khiến việc bắt các “keystroke” trở nên khó khăn hơn Để thu thập thông tin, các chuyên gia an ninh mạng phải sử dụng honeypot, nơi mà dữ liệu được mã hóa sẽ được giải mã tại các thiết bị đầu cuối Việc thu thập dữ liệu từ các thiết bị này cho phép lấy được thông tin giao tiếp của hacker mà không bị mã hóa.
Các máy chủ đều được cài đặt các hệ điều hành, mỗi hệ điều hành này duy trì các log cung cấp thông tin quan trọng Hệ thống log ghi lại mọi cố gắng đăng nhập vào hệ thống, dù thành công hay thất bại, cùng với các cảnh báo từ hệ điều hành Đây là một nguồn thông tin hữu ích cho việc thu thập dữ liệu an ninh.
Mô hình triển khai
Trong việc triển khai hệ thống thu thập thông tin an ninh mạng, chúng ta cần xác định vị trí thích hợp trong mô hình mạng của mình Thông thường, hệ thống sẽ được đặt tại những khu vực cần giám sát chặt chẽ Có hai mô hình chính để thu thập dữ liệu: mô hình triển khai thụ động (thu thập ngoài luồng) và mô hình triển khai chủ động (mô hình trong luồng).
Mô hình ngoài luồng (mô hình thụ động):
Trong mô hình ngoài luồng, không có sự can thiệp trực tiếp vào luồng dữ liệu Dữ liệu vào và ra từ hệ thống mạng sẽ được sao chép và chuyển đến nơi thu thập dữ liệu.
Theo cách tiếp cận này thì hệ thống không làm ảnh hưởng tới tốc độ lưu thông của mạng
Mô hình trong luồng (mô hình chủ động):
Trong mô hình này, hệ thống thu thập thông tin an ninh mạng được tích hợp trực tiếp vào luồng dữ liệu vào/ra của mạng Tất cả luồng dữ liệu đều phải đi qua hệ thống này trước khi được phép vào mạng, đảm bảo an toàn và bảo mật cho thông tin.
Mô hình này có ưu điểm là hệ thống trực tiếp kiểm soát luồng dữ liệu, giúp quản lý hiệu quả hơn Tuy nhiên, nhược điểm lớn của nó là ảnh hưởng đáng kể đến tốc độ lưu thông mạng.
Triển khai thiết bị thăm dò trong hệ thống mạng giúp thu thập thông tin truyền tải giữa ít nhất hai điểm cuối Mô hình này được minh họa trong hình 2-8, nơi thiết bị thu thập thực hiện việc giám sát tất cả luồng dữ liệu vào ra của máy tính.
Để thu thập thông tin an ninh mạng, việc xác định vị trí đặt “máy nghe” trong hệ thống mạng là rất quan trọng Quá trình này không chỉ đơn giản là kết nối một thiết bị vào mạng mà còn đòi hỏi sự hiểu biết về cấu trúc vật lý của mạng Việc đặt máy nghe có thể khó khăn hơn so với việc phân tích các gói tin, do sự đa dạng của các thiết bị mạng như hub, switch và router, mỗi loại có nguyên lý hoạt động khác nhau Do đó, chúng ta cần nghiên cứu các mạng thực tế để tìm ra phương pháp tối ưu cho việc bắt gói tin trong từng loại môi trường mạng.
Chế độ bắt tất cả các gói tin đi qua (Living Promiscuously)
Trước khi theo dõi các gói tin trên mạng, cần có một card mạng hỗ trợ chế độ Promiscuous Chế độ này cho phép card mạng nhận diện tất cả các gói tin đi qua hệ thống dây mạng Nếu không ở chế độ Promiscuous, card mạng chỉ thấy một phần các gói tin và sẽ loại bỏ những gói không gửi đến nó Khi được kích hoạt chế độ này, card mạng sẽ bắt tất cả các gói tin và chuyển toàn bộ thông tin tới CPU.
“Nghe” trong mạng có Hub
Việc phân tích gói tin trong một mạng có hub là vô cùng thuận lợi, vì hub phát tín hiệu đến tất cả các cổng của nó Để thực hiện việc này, bạn chỉ cần cắm một máy nghe vào cổng trống trên hub Khi đó, bạn có thể theo dõi toàn bộ thông tin truyền và nhận từ tất cả các thiết bị kết nối với hub, giúp mở rộng tầm nhìn phân tích của bạn.
Mạng Switched là một môi trường phổ biến trong việc vận chuyển dữ liệu hiệu quả thông qua các phương thức như broadcast, unicast và multicast Switch hỗ trợ kết nối song công (full-duplex), cho phép máy trạm truyền và nhận dữ liệu đồng thời Khi kết nối một máy nghe vào cổng của switch, bạn chỉ có thể quan sát các traffic broadcast cùng với các gói tin gửi và nhận của máy tính đang sử dụng.
Bắt gói tin trong mạng sử dụng Switch
Có 3 cách chính để bắt được các gói tin từ một thiết bị mục tiêu trên mạng switch: port mirroring, ARP cache poisoning và hubbing out.
Port mirroring, hay còn gọi là port spanning, là phương pháp đơn giản để ghi lại lưu lượng từ thiết bị mục tiêu trên mạng switch Để thực hiện, bạn cần truy cập vào giao diện dòng lệnh của switch mà thiết bị mục tiêu được kết nối Switch phải hỗ trợ tính năng port mirroring và có một cổng trống để kết nối thiết bị ghi lại lưu lượng Khi ánh xạ cổng, toàn bộ lưu lượng đi qua cổng này sẽ được sao chép sang một cổng khác.
Một phương pháp đơn giản để thu thập lưu lượng từ thiết bị mục tiêu trong mạng switch là kỹ thuật hubbing out Kỹ thuật này bao gồm việc kết nối thiết bị mục tiêu và máy nghe vào cùng một phân mạng thông qua việc cắm chúng trực tiếp vào một hub.
Nhiều người cho rằng hubbing out là một hình thức lừa dối, nhưng thực tế đây là một giải pháp hiệu quả trong các trường hợp không thể thực hiện port mirroring, đồng thời vẫn có khả năng truy cập vật lý vào switch mà thiết bị mục tiêu đang kết nối.
Hubbing out thường làm giảm tính năng song công của thiết bị mục tiêu từ toàn phần xuống một nửa Mặc dù đây không phải là phương pháp nghe sạch sẽ nhất, nhưng nó thường được sử dụng khi switch không hỗ trợ tính năng port mirroring.
Khi thực hiện hubbing, hãy đảm bảo rằng bạn đang sử dụng một hub đúng cách, không phải là một switch bị nhầm lẫn Để xác nhận, bạn có thể cắm hai máy tính vào hub và kiểm tra xem liệu một máy có thể nhận diện lưu lượng từ máy còn lại hay không.
ARP Cache Poisoning xảy ra khi địa chỉ MAC tại tầng 2 được sử dụng chung với hệ thống địa chỉ IP Tất cả các thiết bị trong mạng giao tiếp thông qua địa chỉ IP, và switch hoạt động tại tầng 2 cần phải chuyển đổi giữa địa chỉ MAC và địa chỉ IP để chuyển tiếp gói tin Quá trình này diễn ra thông qua giao thức ARP (Address Resolution Protocol) Khi một máy tính muốn gửi dữ liệu, nó sẽ gửi yêu cầu ARP tới switch, và switch sẽ phát gói ARP broadcast đến tất cả các máy kết nối Khi máy đích nhận được gói tin, nó sẽ phản hồi bằng địa chỉ MAC của mình, giúp switch định tuyến gói tin tới đúng thiết bị Thông tin này được lưu trữ trong ARP cache của switch, giúp tiết kiệm thời gian và băng thông cho những lần gửi dữ liệu tiếp theo.
QUY TRÌNH THU THẬP VÀ PHÂN TÍCH
Thu thập và tập hợp dữ liệu
Mục đích chính của việc thu thập dữ liệu là tổng hợp thông tin về các hoạt động an ninh trong hệ thống Qua việc phân tích dữ liệu này, chúng ta có thể nhận diện các kỹ thuật tấn công, công cụ và mục đích của hacker, đồng thời phát hiện các lỗ hổng trên máy trạm mà hacker có thể lợi dụng để xâm nhập vào các hệ thống khác trong mạng Do đó, quy trình thu thập dữ liệu đóng vai trò rất quan trọng trong việc bảo vệ an ninh mạng.
Việc thu thập dữ liệu đóng vai trò quan trọng trong việc giám sát và ghi nhận tất cả các hoạt động cũng như thông tin ra vào hệ thống Dữ liệu này là nền tảng cho quá trình nghiên cứu và phân tích sau này Trong bất kỳ hệ thống thông tin nào, các hoạt động tương tác của người dùng có thể được phân loại thành bốn mức khác nhau.
- Hoạt động mức hệ thống
- Hoạt động mức ứng dụng
- Hoạt động mức người dùng
Việc thu thập dữ liệu được thực hiện trên nhiều tầng khác nhau nhằm đảm bảo mọi hoạt động được ghi nhận đầy đủ và giảm thiểu rủi ro từ một tầng đơn lẻ Chẳng hạn, trong hệ thống Honeynet, cơ chế thu thập dữ liệu được triển khai trên ba tầng, như mô hình minh họa bên dưới.
Thu nhận dữ liệu từ tường lửa
Thu nhận dữ liệu từ luồng dữ liệu mạng
Thu nhận dữ liệu từ hoạt động của các honeypot trong hệ thống.
Hình 3.1.Cơ chế thu nhận dữ liệu trong Honeynet
Sàng lọc, chuẩn hóa và tương quan dữ liệu
Luồng xử lý dữ liệu cho sàng lọc, chuẩn hóa và tương quan dữ liệu
Sàng lọc là quy trình loại bỏ các dữ liệu không cần thiết khỏi tập dữ liệu thu thập được.
Sàng lọc thường được chia thành các hoạt động sau:
Chọn lựa lưu giữ các dữ liệu đáng quan tâm và loại bỏ các dữ liệu không cần thiết từ nguồn dữ liệu thô đưa vào.
Trích xuất dữ liệu thô và chuyển đổi chúng sang định dạng chung giúp dễ dàng hơn trong việc phân tích dữ liệu sau này.
Ví dụ: sử dụng biểu thức chính quy để kiểm tra sự hợp lệ cấu trúc của địa chỉ
IP Address trong dữ liệu thu thập: \d+\.\d+\.\d+\.\d+
Câu lệnh này giúp nhận diện định dạng của địa chỉ IP Để kiểm tra tính hợp lệ của địa chỉ IP, ví dụ như địa chỉ 10.0.3.1 là hợp lệ, trong khi đó địa chỉ khác có thể không.
IP 300.500.600.188 là không hợp lệ, chúng ta sử dụng biểu thức chính quy có cú pháp như sau:
Các hệ thống khác nhau không tự chuẩn hóa và có định dạng dữ liệu thu thập khác nhau, ví dụ như hệ thống log của Cisco khác với hệ thống log của Palo Alto Networks hay Sonicwall Do đó, để kết hợp thông tin từ các hệ thống này, cần chuyển đổi chúng về một định dạng chung.
Chuẩn hóa quy trình ánh xạ các thành phần trong dữ liệu thô, như địa chỉ IP nguồn và địa chỉ IP đích, sang một định dạng thống nhất là rất quan trọng Các bước thực hiện chuẩn hóa này bao gồm việc xác định các thành phần cần ánh xạ, áp dụng quy tắc định dạng chung và kiểm tra tính chính xác của kết quả cuối cùng.
1 Khảo sát các loại dữ liệu thu thập được: miêu tả, các thành phần và nội dung trong dữ liệu, …
2 Sử dụng các phương pháp thích hợp để chuẩn hóa dữ liệu như sử dụng biểu thức chính quy để chuẩn hóa dữ liệu
3 Kiểm tra logic trên các dữ liệu mẫu sau khi chuẩn hóa
4 Triển khai chuẩn hóa trên toàn bộ các dữ liệu thu thập cần phân tích. Những thông tin chung thường được sử dụng cho việc chuẩn hóa dữ liệu thu thập:
Địa chỉ IP nguồn và địa chỉ IP đích
Cổng nguồn và cổng đích
Chúng ta xem xét ví dụ dưới đây, ví dụ này chứa một thông báo từ Sourcefire IPS Syslog như sau:
Thông báo này chứa nhiều thông tin quan trọng, và để chuẩn hóa, chúng ta áp dụng kỹ thuật trích xuất Quá trình chuẩn hóa yêu cầu quét toàn bộ thông báo nhằm thu thập các thông tin cần thiết và đưa vào các trường đã được định nghĩa sẵn Dưới đây là ví dụ về các trường phổ biến thường được sử dụng trong quy trình chuẩn hóa.
Kiểu: Attempted Information Leak (Rò rỉ thông tin)
Giao thức: ICMP Địa chỉ IP nguồn: 210.22.215.77 Địa chỉ IP đích: 67.126.151.137
Raw log: Jul 16 10:54:39 SourceFire SFIMS: [1:469:1] ICMP PING NMAP [Classification: Attempted Information Leak] [Priority: 2] {ICMP}
Tương quan là mối liên hệ giữa các dữ liệu riêng lẻ, tạo ra sự kết nối có ý nghĩa Trong lĩnh vực an ninh mạng, tương quan đóng vai trò quan trọng trong việc thu thập và phân tích thông tin, giúp liên kết các dữ liệu riêng lẻ thành một dữ liệu thống nhất phục vụ cho phân tích Thường thì, phương pháp thống kê và tương quan theo luật được sử dụng để thực hiện quá trình này.
Luồng thông tin trong tương quan dựa trên thông kê và trên luật
Chúng ta sẽ khám phá ví dụ về tương quan trong hệ thống Honeynet để hiểu rõ hơn về khái niệm này Hệ thống Honeynet thu thập dữ liệu từ nhiều nguồn khác nhau, do đó việc chuyển đổi giữa các kiểu dữ liệu và xác định mối quan hệ tương quan giữa chúng là một thách thức Để giải quyết vấn đề này, Edward G Balas đã phát triển một deamon trên Linux có tên là Hflow, giúp xử lý và kết hợp dữ liệu với các định dạng khác nhau từ các nguồn khác nhau.
Hflow đã triển khai một mô hình dữ liệu mới độc lập với các nguồn dữ liệu, thiết lập mối liên hệ giữa bốn đối tượng chính: máy trạm (host) đại diện cho honeypot, tiến trình (process) thể hiện chương trình đang chạy trên máy trạm, tệp (files) lưu trữ dữ liệu trên máy trạm và luồng mạng (network flow) phản ánh giao tiếp giữa các máy trạm Mối quan hệ giữa các đối tượng này được minh họa trong hình dưới đây.
Mô hình quan hệ giữa các đối tượng
Hflowd có chức năng tương quan dữ liệu từ các mô-đun thu nhận như Snort và Sebek, sau đó lưu trữ chúng vào cơ sở dữ liệu quan hệ sử dụng phần mềm quản trị MySQL.
Xác định kiểu hệ điều hành p0f
Dữ liệu mạng Honeynet được chuẩn hóa, sau đó sẽ đưa vào cơ sở dữ liệu quan hệ.
Hình 3.5 Minh họa chức năng của Hflow
Phân tích dữ liệu
Trong phân tích dữ liệu, việc thu thập nhiều loại dữ liệu từ các nguồn khác nhau như dữ liệu mạng (từ tường lửa, Snort) và dữ liệu từ Sebek là rất cần thiết Tuy nhiên, quá trình này thường gặp nhiều khó khăn, bao gồm tiêu tốn thời gian, công sức và phải giải quyết nhiều vấn đề liên quan.
Mỗi loại dữ liệu đi kèm với công cụ phân tích riêng, dẫn đến hiệu quả hạn chế và yêu cầu thực hiện ba bước phân tích tách biệt cho từng loại.
Việc chuyển đổi giữa các kiểu dữ liệu khác nhau gặp nhiều khó khăn, đặc biệt trong việc xác định mối quan hệ tương quan giữa các nguồn dữ liệu Thông thường, quá trình này phải được thực hiện hoàn toàn thủ công bởi người phân tích.
Quá trình xác định một lộ trình để theo dõi chuỗi dữ liệu "đáng quan tâm" giữa các nguồn dữ liệu không thể thực hiện tự động.
Việc phân tích dữ liệu dựa trên các kỹ thuật phân tích cơ bản bao gồm:
• Phân tích luồng dữ liệu
• Phân tích nhật ký sự kiện Ngoài ra chúng ta có thể sử dụng các kỹ thuật phân tích nâng cao như:
• Khai phá dữ liệu nhật ký
Phân tích dữ liệu trên WLAN thường gặp nhiều khó khăn, và để khắc phục vấn đề này, người ta thường sử dụng các công cụ hỗ trợ Một trong những công cụ phổ biến được sử dụng trong môi trường Honeynet là Walleye, giúp nâng cao hiệu quả phân tích dữ liệu Các kỹ thuật phân tích chi tiết sẽ được trình bày trong các chương sau.
Walleye là công cụ phân tích dữ liệu Honeynet trên nền tảng Web, hỗ trợ quản trị hệ thống theo dõi và hiểu rõ các hoạt động trong hệ thống Công cụ này giúp người dùng nắm bắt được bối cảnh tổng thể và các bước tuần tự của một cuộc tấn công vào hệ thống.
Walleye cung cấp cho chúng ta các thông tin hỗ trợ cho quá trình phân tích:
- Các hoạt động bên trong các honeypot thông qua cây tiến trình
- Các hoạt động của mạng thông qua biểu đồ luồng mạng
- Cung cấp mối quan hệ giữ các tiến trình và biểu đồ luồng mạng
- Đối với mỗi kết nối ra bên ngoài, chỉ cho chúng ta các kết nối bên trong gây ra
- Đối với mỗi kết nối vào chỉ cho chúng ta tất cả mối liên hệ với hoạt động mạng
- Đối với luồng dữ liệu này, sẽ cung cấp cho chúng ta các gói tin liên quan
- Đối với tiến trình này, chỉ cho chúng ta keystroke của người dùng
Hình Luồng dữ liệu mạng trong Walleye cho phép quan sát trực quan thông tin thu nhận được thông qua một webserver cài đặt bởi Honeynet, được truy cập qua SSL với kết nối mã hóa Giao diện đồ họa người dùng (GUI) gọi là Walleye giúp dễ dàng cấu hình và bảo trì Honeywall, cho phép sửa đổi hầu hết các phần đã được cấu hình trong quá trình cài đặt.
Walleye tích hợp khả năng phân tích dữ liệu, cho phép theo dõi và phân tích mọi hoạt động của Honeypot Hình 4.7 cung cấp cái nhìn tổng quan về tất cả luồng dữ liệu vào và ra trong 24 giờ Walleye có thể nhanh chóng xác định các cuộc tấn công thông qua biểu đồ luồng dữ liệu, với các luồng dữ liệu ra nghi ngờ được đánh dấu bằng màu vàng, trong khi các cuộc tấn công được ghi nhận bởi IDS được hiển thị bằng màu đỏ.
Hình Cây tiến trình trong Walleye
Dữ liệu sebek có thể được quan sát qua Walleye dưới dạng biểu đồ tiến trình, giúp người phân tích nắm bắt hành vi của kẻ tấn công trong honeypot và các chương trình đang chạy Để thực hiện phân tích sâu hơn, Walleye cho phép trích xuất các kết nối mạng dưới định dạng PCAP, chuẩn phổ biến cho dữ liệu gói Với dữ liệu PCAP này, người dùng có thể sử dụng các công cụ phân tích như Ethereal để kiểm tra nội dung tệp tin một cách chi tiết.
Giao diện đồ họa web Walleye của Honeywall cho phép hiển thị và phân tích dữ liệu thu thập từ Honeynet, đồng thời tạo mối tương quan giữa các dữ liệu này Thông thường, các cuộc tấn công hoặc xâm nhập ban đầu được phát hiện thông qua việc nhận diện các sự kiện mạng đáng ngờ Hình ảnh dưới đây minh họa khả năng của Walleye trong việc hiển thị chi tiết luồng dữ liệu mạng được phát hiện bởi Honeywall.
Hình Luồng dữ liệu mạng hiển thị bởi Walleye
Người phân tích bắt đầu điều tra sự kiện bằng cách xem xét một luồng dữ liệu mạng, trong đó có sự tương tác giữa hệ thống 192.168.100.66 (do hacker kiểm soát) và honeypot tại địa chỉ 192.168.100.150 Luồng dữ liệu này là TCP với cổng nguồn 1135 và cổng đích 45295, trong đó có một số gói tin được trao đổi giữa hai phía Luồng dữ liệu này đã tạo ra hai cảnh báo khác nhau từ Snort IDS và có liên quan đến tiến trình có PID 2340 trên honeypot Hình ảnh minh họa dưới đây cho thấy mức độ chi tiết mà modul phân tích cung cấp, với biểu đồ tiến trình liên quan đến các luồng mạng đã được đề cập.
Hình Minh họa một phần biểu đồ tiến trình
Ví dụ này minh họa một Honeypot trên nền tảng Linux bị tấn công qua phương thức tấn công tràn bộ đệm, liên quan đến lỗ hổng “trans2open” của Samba Lỗ hổng này đã bị khai thác thành công thông qua kết nối gắn với tiến trình PID 2340, dẫn đến việc tiến trình bị tổn hại tạo ra hai tiến trình shell Unix khác nhau, bao gồm “sh” (PID).
2341 và PID 2342) Shell thứ hai được sử dụng bởi kẻ hacker để thực hiện một vài câu lệnh trên honeypot, như là “uname”, “id”, “cat”, “ls” hay
“passwd” Biểu đồ trên cung cấp cho chúng ta một cái nhìn chi tiết về đầy đủ chuỗi các bước của một tấn công.
Sebek cung cấp tất cả thông tin cần thiết để xây dựng biểu đồ tiến trình Giao diện Walleye cho phép phân tích chi tiết các tiến trình được thu nhận, giúp người phân tích xác định các tệp bị truy cập trong quá trình tấn công và các câu lệnh được thực hiện bởi kẻ tấn công.
Hình dưới đây minh họa các hoạt động liên quan đến tiến trình shell “sh” (PID 2342) trong biểu đồ tiến trình Tiến trình này mở nhiều tệp thư viện khác nhau, bao gồm “/etc/ld.so.cache” và “lib/libtermcap.so.2.0.8”, đồng thời thực hiện một số câu lệnh do hacker gửi, được thu thập bởi Sebek thông qua hàm hệ thống “read”, như “uname –a”, “id”, “cat /etc/passwd” và “ls –l /”.
Hình “Keystroke” thu nhận được bởi Sebek trong Walleye
Mô hình dữ liệu trong Honeynet nâng cao khả năng phân tích dữ liệu, giúp người phân tích dễ dàng theo dõi và kiểm tra tất cả các hoạt động diễn ra trong Honeynet.
Tổng hợp và lập báo cáo
Sau khi hoàn tất quá trình thu thập và phân tích dữ liệu, bước cuối cùng là tổng hợp thông tin và lập báo cáo Báo cáo này sẽ trình bày hiện trạng của hệ thống mạng cùng với các khuyến nghị dành cho người quản trị mạng.
Câu hỏi và bài tập
Thực hành Áp dụng quy trình thu thập và phân tích thông tin an ninh mạng từ hệ thống Honeynet/Honeypot
Hướng dẫn cài đặt hệ thống Honeynet
Bước 1: Cài đặt và cấu hình Honeywall a) Cài đặt
Quá trình thực hiện Honeywall khá đơn giản, sau khi đưa đĩa cài đặt Honeywall Roo vào, màn hình sau xuất hiện:
Hình Màn hình cài đặt Honeywall
Sau đó thực hiện theo hướng dẫn, quá trình cài đặt sẽ diễn ra tự động.
Lưu ý: sau khi cài đặt, dữ liệu trên ổ cứng sẽ bị xóa hết, bởi vậy cần phải sao lưu trước khi cài đặt b) Cấu hình
Sau khi cài đặt Honeywall, bước đầu tiên là cấu hình hệ thống, vì đây là gateway cho luồng dữ liệu vào và ra của Honeynet, hoạt động ở chế độ cầu (bridge) với iptable và snort_inline để kiểm soát dữ liệu Honeywall còn sử dụng snort và pcap_api để thu thập dữ liệu mạng Phiên bản Honeywall 1.1-hw-1 (kernel FC3) tích hợp Sebekd 3.0.3 để nhận dữ liệu Sebek từ Sebek client, cùng với công cụ phân tích Walleye và giao diện đồ họa dựa trên web Hệ thống cung cấp một giao diện tương tác để cấu hình tệp /etc/Honeywall.conf.
Hình 5.7 Màn hình cấu hình Honeywall
Dưới đây là các tham số quan trọng chứa trong tệp
# This Honeywall's public IP address(es)
# The name of the externally facing network interface
# The name of the internally facing network interface
# Enable the SEBEK collector which delivers keystroke and files
# to a remote system even if an attacker replaces daemons such as sshd
# Specify the SEBEK destination host IP address
# Specify the SEBEK destination port
# Specy the network interface for remote management If set to br0, it
# will assign MANAGE_IP to the logical bridge interface and allow its use
# as management interface Set to none to disable the management
Toàn bộ nội dung tệp cấu hình Honeywall.conf có thể tham khảo tại phần phụ lục.
Sau khi cấu hình xong trên Honeywall, chúng ta có thể quản lý Honeywall thông qua giao diện Web tại địa chỉ: https://10.0.0.18 (như hình minh họa dưới đây)
Hình Giao diện quản lý Honeywall
Bước 2: Cài đặt và cấu hình Sebek a) Cài đặt
Chúng ta thực hiện cài đặt Sebek client trên các honeypot nhằm thực hiện thu nhận các hành động của hacker trên từng honeypot
Cài đặt Sebek client trên hệ điều hành WINDOWS
- Tải tệp tin Sebek – Win32 – 3.0.4.zip
- Giải nén tệp tin và chạy tệp cài đặt Setup.exe
- Sau khi cài đặt xong, thực hiện cấu hình thông qua chương trình Configuration Winzard.exe (các tham số được đề cập ở phần cấu hình)
Cài đặt Sebek client trên hệ điều hành LINUX RED HAT 9.0
- Tải tệp tin sebek – linux – 3.0.3.tar.gz
- Thực hiện quá trình cài đặt tar –xzf sebek-linux-3.0.3.tar.gz cd sebek-linux-3.0.3
- Quá trình cài đặt tạo ra tệp sebek – linux – 3.0.3 – bin.tar, thực hiện tiếp việc cài đặt
Tar –xf sebek-linux-3.0.3-bin.tar
- Kết thúc quá trình cài đặt, thực hiện shell sbk_install.sh
Trước khi chạy lệnh shell sbk_install.sh, cần sửa đổi nội dung của tệp này để phù hợp với các tham số cài đặt cho Sebek client, như sẽ được trình bày trong phần tiếp theo.
Dưới đây là một số tham số cơ bản sử dụng cấu hình cho Sebek client
# - sets destination IP for sebek packets
# - sets destination MAC addr for sebek packets
# - defines the destination udp port sebek sends to
Hình Cấu hình Sebek Client trên Windows