1. Dữ liệu NSM
1.1. • Dữ liệu bắt gói tin đầy đủ (FPC): Cung cấp dữ liệu về tất cả dữ liệu được truyền giữa 2 điểm đầu cuối.
1.1.1. Nó là một hình thức phong phú của bằng chứng cung cấp chi tiết và cơ hội hiếm khi được tìm thấy ở nơi khác. Sau khi có được dữ liệu nội dung đầy đủ, các nhà phân tích có thể lấy được dữ liệu phiên, cảnh báo và thống kê nếu cần thiết.
1.1.2. Làm thế nào để có thể thu thập được dữ liệu có nội dung đầy đủ:
1.1.2.1. • Thu thập nơi bạn có thể xem địa chỉ IP đích đích Internet cho lưu lượng truy cập quan tâm và nơi bạn có thể thấy địa chỉ IP nguồn nội bộ thực sự cho lưu lượng quan tâm.
1.1.2.2. • Thu thập nơi bạn có thể thấy lưu lượng truy cập đến và từ phân khúc VPN của mình. Ghi nhớ các yêu cầu địa chỉ IP trước đó.
1.1.2.3. • Thu thập nơi bạn có thể thấy lưu lượng truy cập đến và từ các đối tác kinh doanh hoặc thông qua "cổng bên thứ ba". Bạn cần có được IP nguồn thực sự, nhưng bạn không thể có được IP đích thực nếu đối tác kinh doanh ngăn chặn việc thu thập đằng sau bất kỳ thiết bị NAT hoặc bảo mật nào che khuất IP đích thực.
1.1.2.4. • Thu thập nơi các đơn vị kinh doanh của bạn trao đổi lưu lượng truy cập.
1.1.2.5. • Xem xét các nhà cung cấp đám mây hoặc được lưu trữ cho phép thu thập gần các nền tảng Dịch vụ cơ sở hạ tầng được sử dụng bởi công ty của bạn.
1.2. • Dữ liệu phiên: Tóm tắt thông tin của 2 thiết bị mạng
1.2.1. • Là bản tóm tắt các thông tin liên lạc giữa 2 thiết bị. • Giống như một cuộc hội thoại hoặc một luồng lưu lượng. • Cung cấp giá trị đáng kể cho chuyên gia NSM.
1.2.2. Làm thế nào để có thể thu thập được dữ liệu phiên
1.2.2.1. • Cần 2 thành phần là một bộ sinh luồng và một bộ thu thập dữ liệu
1.2.2.1.1. • Bộ sinh luồng là thành phần phần cứng hoặc phần mềm, có trách nhiệm tạo ra các luồng dữ liệu. -> Phân tích các dữ liệu khác, hoặc là thu thập dữ liệu mạng trực tiếp từ giao diện mạng
1.2.2.1.2. • Bộ thu thập luồng là phần mềm có nhiệm vụ nhận luồng dữ liệu từ bộ sinh luồng và lưu chúng lại theo định dạng có thể phục hồi lại được
1.3. • Dữ liệu kiểu chuỗi trong gói tin(PSTR): Là dữ liệu trung gian giữa FPC và dữ liệu phiên
1.3.1. Log dữ liệu kiểu PSTR chỉ ra một HTTP URL được yêu cầu:
1.3.1.1. Dữ liệu PSTR chỉ chứa các yêu cầu HTTP URL theo thời gian thực, có thể ứng dụng trọng cơ chế phát hiện danh tiếng tự động
1.3.1.2. Tập trung vào tải của gói tin sau tiêu đề của giao thức ứng dụng:
1.3.2. Thu thập dữ liệu PSTR
1.3.2.1. Đầu tiên, cần xem xét mức độ của các dữ liệu PSTR muốn thu thập
1.3.2.2. Cần chú ý vào nhu cầu lưu trữ dữ liệu PSTR
1.3.2.3. Thu thập dữ liệu PSTR từ mạng và thu thập từ dữ liệu FPC
1.3.2.4. Tự động tạo ra dữ liệu PSTR hoặc thủ công
1.3.2.5. Thu thập dữ liệu với URLSnarf
1.3.2.6. Thu thập dữ liệu yêu cầu HTTP một cách thụ động và lưu chúng dưới định dạng log chung CLF
1.3.2.6.1. Ví dụ: bắt lưu lượng truy cập bằng tcpdump và sau đó truyền qua URLsnarf với tùy chọn –p
1.3.2.7. Thu thập dữ liệu với Httpry
1.4. • Dữ liệu thống kê: Dữ liệu tổ chức, phân tích thống kê dữ liệu khác
1.4.1. Thu thập dữ liệu thống kê
1.4.1.1. Sử dụng Cảm biến chỉ thu thập dữ liệu (collection-only sensor). Đơn giản là ghi nhật ký những dữ liệu đã thu thập như FPC và dữ liệu phiên vào đĩa, và đôi khi tạo ra dữ liệu khác (dữ liệu thống kê và PSTR) dựa trên những gì đã thu thập được.
1.4.1.2. Ví dụ công cụ Rwstats
1.4.1.2.1. • Rwcount đếm gói tin và byte dữ liệu. • Rwcut chọn lựa các trường dữ liệu còn rwuniq có thể giúp phân loại. • Rwidsquery có thể nhận đầu vào là file luật của Snort hay file cảnh báo, và giúp chỉ ra luồng nào từ dữ liệu đầu vào tương ứng với luật hoặc cảnh báo, từ đó tạo ra lời gọi rwfilter để tạo ra luồng phù hợp.
1.5. • Dữ liệu cảnh bảo: Mô tả cảnh báo khi có dữ liệu bất thường.
1.5.1. Khi công cụ phát hiện ra bất kỳ một bất thường nào trong dữ liệu mà nó kiểm tra, thì nó sẽ tạo ra một loại dữ liệu gọi là dữ liệu cảnh báo.
1.5.2. Dữ liệu này thường chứa mô tả của các cảnh báo, và một con trỏ chỉ đến dữ liệu bất thường.
1.5.3. Việc phân tích NSM thường dựa trên các thế hệ của dữ liệu cảnh báo.
1.5.4. Thu thập dữ liệu cảnh báo
1.5.4.1. Phát hiện xâm nhập là một chức năng của phần mềm thực hiện phân tích các dữ liệu thu thập được để tạo ra dữ liệu cảnh báo.
1.5.4.2. Dữ liệu cảnh báo được tạo ra bởi các cơ chế phát hiện được chuyển tới chuyên gia phân tích, và đó là khi việc phân tích bắt đầu.
1.5.4.3. Để phát hiện thành công, cần chú ý đến việc lựa chọn cơ chế phát hiện và đầu vào thích hợp.
1.6. • Dữ liệu nhật ký: các tệp tin nhật ký thô
1.7. Một vài công cụ: SiLK, snort, suricata,..
2. Tổng quan Giám sát An toàn mạng
2.1. Các khái niệm
2.1.1. NSM
2.1.1.1. Ưu nhược điểm của hệ thống NSM
2.1.1.2. Thách thức khi triển khai hệ thống NSM
2.1.1.2.1. Người thực hiện phải có một mức độ về kiến thức cơ bản trước khi bước vào thực tế. Kiến thức ở đây bao gồm lý thuyết chung, thực hành và các yêu cầu cụ thể.
2.1.1.2.2. • Vấn đề về kỹ năng thực hành
2.1.1.2.3. • Chi phí cần thiết để thiết lập và duy trì một chương trình NSM
2.1.1.3. Giám sát an toàn mạng là việc thu thập các thông tin trên các thành phần của hệ thống, phân tích các thông tin, dấu hiệu nhằm đánh giá và đưa ra các cảnh báo cho người quản trị hệ thống .
2.1.1.4. Tại sao chúng ta cần hệ thống giám sát an toàn mạng
2.1.1.4.1. Internet là một kho dữ liệu khổng lồ -> Tồn tại rất nhiều các mối nguy cơ, đe dọa, tội phạm internet
2.1.1.4.2. Đưa ra các luật (hay các quy tắc) và ép buộc tất cả mọi người thực thi các luật này -> bảo vệ máy tính và dữ liệu của họ khỏi những kẻ tội phạm mạng bằng nhiều cách khác nhau.
2.1.1.4.3. Chém gió đi
2.1.2. IOC
2.1.2.1. Khái niệm
2.1.2.1.1. Indicators of Compromise – IOC: là những thông tin được sử dụng để mô tả khách quan một xâm nhập mạng, độc lập về nền tảng. Ví dụ: địa chỉ IP của máy chủ C&C, hay tập các hành vi cho thấy email server là SMTP relay độc hại
2.1.2.2. Phân loại
2.1.2.2.1. IOC cho mạng
2.1.2.2.2. IOC cho máy tính
2.1.2.2.3. IOC tĩnh
2.1.2.2.4. IOC đơn vị
2.1.2.2.5. IOC hành vi
2.2. Chu trình giám sát mạng
2.2.1. Thu thập dữ liệu
2.2.1.1. là phần quan trọng nhất của chu trình NSM -> Định hình khả năng của một tổ chức trong việc phát hiện xâm nhập và phân tích dữ liệu hiệu quả.
2.2.1.2. Nhiệm vụ
2.2.2. Phát hiện xâm nhập
2.2.2.1. • Kiểm tra và cảnh báo sẽ được tạo ra dựa trên các sự kiện quan sát
2.2.2.2. • Được thực hiện thông qua một số hình thức: chữ ký, sự bất thường, hoặc phát hiện dựa trên thống kê.
2.2.2.3. • Kết quả là tạo ra các dữ liệu cảnh báo.
2.2.2.4. - Thường là một chức năng của phần mềm:
2.2.2.4.1. • Snort IDS và Bro IDS của một hệ thống phát hiện xâm nhập mạng (NIDS).
2.2.2.4.2. • OSSEC, AIDE hoặc McAfee HIPS của một hệ thống phát hiện xâm nhập máy chủ (HIDS )
2.2.3. Phân tích dữ liệu
2.2.3.1. Phần tốn thời gian nhất
2.2.3.2. Nhiệm vụ:
2.2.3.2.1. • Phân tích gói tin
2.2.3.2.2. • Phân tích mạng
2.2.3.2.3. • Phân tích máy chủ
2.2.3.2.4. • Phân tích phần mềm độc hại
2.3. Phòng thủ trong giám sát ATM
2.3.1. Phòng thủ theo lỗ hổng VS theo nguy cơ
3. So sánh NSM vs IDS
4. Phần Thu thập dữ liệu
4.1. Hoạt động thu thập thông tin
4.1.1. Phương pháp thu thập thông tin
4.1.2. Mô tả một số phương pháp
4.1.2.1. Thu thập thông tin
4.1.2.2. Thu thập dữ liệu
4.1.2.2.1. • Thu thập dữ liệu mạng có thể giúp phát hiện tấn công mạng và hỗ trợ quản trị mạng. Thông qua giám sát, kiểm tra, định cấu hình, kiểm soát và đánh giá thời gian thực dựa trên dữ liệu mạng, quản trị viên mạng có thể có được hiệu suất hệ thống mạng, đánh giá Chất lượng dịch vụ (QoS) và tìm ra các điểm lỗi mạng. • Đối với Nhà cung cấp dịch vụ Internet (ISP), dữ liệu mạng đóng vai trò cơ bản của kế toán lưu lượng. Thông tin khối lượng thống kê của lưu lượng truy cập tác động đến chính sách của ISP.
4.1.2.2.2. Thu thập dữ liệu dựa trên gói
4.1.2.2.3. Thu thập dữ liệu dựa trên lưu lượng
4.1.3. Mô tả hoạt động
4.1.3.1. Thu thập thông tin là quá trình tập hợp thông tin theo những tiêu chí cụ thể nhằm làm rõ những vấn đề, nội dung liên quan đến lĩnh vực nhất định.
4.1.3.2. Thu thập thông tin là quá trình xác định nhu cầu thông tin, tìm nguồn thông tin, thực hiện tập hợp thông tin theo yêu cầu nhằm đáp ứng mục tiêu đã được định trước
4.1.3.3. Đặc điểm
4.1.3.3.1. Thu thập thông tin là hoạt động có tính mục đích.
4.1.3.3.2. Thu thập thông tin có tính đa dạng về phương pháp, cách thức.
4.1.3.3.3. Thu thập thông tin có thể tìm kiếm từ các nguồn, kênh thông tin khác nhau.
4.1.3.3.4. Thu thập thông tin là một quá trình liên tục, nhằm bổ sung, hoàn chỉnh thông tin cần thiết
4.1.3.3.5. Thu thập thông tin chịu tác động của nhiều nhân tố về kỹ năng thu thập thông tin, kỹ năng sử dụng các phương pháp, cách thức thu thập thông tin
4.1.3.3.6. Thu thập thông tin là một khâu trong quá trình thông tin của một tổ chức
4.1.3.4. Quy trình
4.1.3.4.1. Xác định nhu cầu bảo đảm thông tin
4.1.3.4.2. Xác định các kênh và nguồn thông tin
4.1.3.4.3. Thiết lập hình thức và chế độ thu thập thông tin
4.1.3.4.4. Yêu cầu với thông tin thu thập
4.2. Vị trí đặt cảm biến
4.2.1. cần được xác định trước khi chúng được cài đặt, bao gồm cả vị trí vật lý và vị trí logic
4.2.2. Mục đích
4.2.2.1. đảm bảo hiển thị thích hợp trong cung cấp dữ liệu đã được thiết lập như là tiến trình quan trọng trong NSM
4.2.3. Cách xác địch vị trí đặt cảm biến (5 bước)
4.2.3.1. Sử dụng các tài nguyên thích hợp
4.2.3.1.1. • Tích cực tham gia vào quá trình sắp đặt mạng ngay trong giai đoạn đầu, nhằm hiểu rõ nhất về cấu trúc và thiết kế sơ đồ mạng của tổ chức.
4.2.3.2. Cảm biến đi vào/ ra mạng
4.2.3.2.1. Nên đặt ngay tại điểm vào/ ra mạng. Như: Cổng Getway của Internet, magnj VPN, các liên kết đối tác
4.2.3.3. Tầm nhìn của địa chỉ Internet cục bộ
4.2.3.3.1. • Khả năng xác định thiết bị nội bộ nào là đối tượng chính của một cảnh báo.
4.2.3.4. Đánh giá quan trọng
4.2.3.4.1. • Cần phải có quy định tài sản nào là quan trọng nhất cần được bảo vệ.
4.2.3.4.2. • Khi chỉ có nguồn lực hạn chế vẫn có thể đặt các cảm biến một cách hợp lý
4.2.3.5. Tạo các sơ đồ hiển thị cảm biến
4.2.3.5.1. Cho các chuyên gia phân tích nhanh chóng biết được những tài sản nào mà một cảm biến bảo vệ và những tài sản nào đã ra ngoài vùng bảo vệ đó.
4.2.3.5.2. • Các thành phần cần thiết nhất của một sơ đồ mạng bao gồm
5. Phần Phát hiện xâm nhập (IDS)
5.1. IDS có nhiều loại và tiếp cận các traffic đáng ngờ theo nhiều cách khác nhau. Có IDS dựa trên mạng (NIDS) và dựa trên máy chủ (HIDS). Có IDS phát hiện dựa trên việc tìm kiếm các chữ ký cụ thể của những mối đe dọa đã biết và IDS phát hiện bằng cách so sánh các mẫu traffic với baseline rồi xem có sự bất thường nào không.
5.2. Signature-based và Anomaly-based
5.2.1. Signature-Based
5.2.1.1. Là các IDS hoạt động dựa trên chữ ký, giám sát các gói tin trên mạng và so sánh chúng với cơ sở dữ liệu chữ ký, thuộc tính từ những mối đe dọa đã biết, tương tự như cách phần mềm diệt virus hoạt động.
5.2.1.2. Vấn đề đối với hệ thống IDS này là có thể không phát hiện ra mối đe dọa mới, khi chữ ký để nhận biết nó chưa được IDS kịp cập nhật.
5.2.2. Anomaly-Based
5.2.2.1. IDS này sẽ phát hiện mối đe dọa dựa trên sự bất thường. Nó giám sát traffic mạng và so sánh với baseline đã được thiết lập.
5.2.2.2. Baseline sẽ xác định đâu là mức bình thường của mạng: loại băng thông thường được dùng, giao thức thường dùng, cổng và thiết bị thường kết nối với nhau, cảnh báo cho quản trị viên mạng hoặc người dùng khi phát hiện traffic truy cập bất thường hoặc những khác biệt đáng kể so với baseline.
5.3. So sánh IDS và IPS
5.3.1. IPS
5.3.1.1. IPS (Intrusion Prevention Systems – Hệ thống ngăn ngừa xâm nhập) là hệ thống theo dõi, ngăn ngừa kịp thời các hoạt động xâm nhập không mong muốn.
5.3.1.2. Hệ thống IPS được xem là trường hợp mở rộng của hệ thống IDS
5.4. Phát hiện xâm nhập mạng (IDS)
5.4.1. Là quá trình mà qua đó dữ liệu thu thập được kiểm tra và cảnh báo sẽ được tạo ra dựa trên các sự kiện quan sát được và dữ liệu thu thập không được như mong đợi.
5.4.2. Phát hiện xâm nhập là một thành phần của NSM hiện đại.
5.4.3. Sơ đồ kiến trúc
5.5. IDS khác biệt so với NSM bỏi:
5.5.1. • Bảo vệ phòng thủ lỗ hổng bảo mật:
5.5.1.1. với mục tiêu phát hiện việc khai thác các lỗ hổng.
5.5.2. • Phát hiện trong tập dữ liệu quan trọng
5.5.2.1. không tập trung vào mối liên hệ giữa chiến lược thu thập và mục tiêu phát hiện
5.5.2.2. Coi thu thập "quá nhiều dữ liệu luôn luôn tốt hơn là không đủ" và sẽ "bắt giữ tất cả mọi thứ và sắp xếp lại sau".
5.5.3. • Phần lớn dựa trên chữ ký
5.5.3.1. Dựa vào những hiểu biết về tất cả các lỗ hổng được biết đến và phát triển chữ ký cho các phát hiện của họ
5.5.4. • Cố gắng phân tích tự động hoàn toàn
5.5.4.1. tin rằng hầu hết các cảnh báo IDS tạo ra là đáng tin cậy
5.5.4.2. ít dựa vào việc phân tích của con người
5.5.4.3. tự động phân tích càng nhiều càng tốt
5.5.4.4. Khi một lỗ hổng đã được tập trung bảo vệ kẻ tấn công sẽ tìm các lỗ hổng khác để khai thác
5.5.5. Phần lớn các hệ thống NSM được dành riêng để phát hiện trong một nỗ lực nhằm ứng phó tốt hơn. NSM được coi là mô hình mới cho lĩnh vực phát hiện và đã xây dựng được một tập các đặc tính khác biệt hoàn toàn so với phát hiện xâm nhập truyền thống.
5.6. Phát hiện xâm nhập dựa trên danh tiếng
5.6.1. Danh tiếng: Được sử dụng để phát hiện và ngăn chặn các liên lạc với các địa chỉ IP nhất định dựa trên danh tiếng.
5.6.2. Để thực hiện phát hiện dựa trên danh tiếng cần có hai thành phần. Đầu tiên, cần ít nhất một danh sách các IP hoặc tên miền với danh tiếng xấu. Sau khi có ít nhất một danh sách, cần đưa nội dung của danh sách vào một số loại hình cơ chế phát hiện xâm nhập dựa trên các mục trong danh sách.
5.6.3. Phát hiện danh tiếng IP với Snort Trong quá khứ
5.6.3.1. Phát hiện dựa trên danh tiếng cho các địa chỉ IP với Snort được thực hiện với các luật chuẩn. Để giải quyết được vấn đề này, tiền xử lý danh tiếng đã được phát triển. Tiền xử lý này chạy trước tất cả các tiền xử lý khác một cách có hiệu quả.
5.6.4. Phát hiện danh tiếng IP với Suricata
5.6.4.1. Suricata nhanh chóng phổ biến như một thay thế cho Snort trong việc phát hiện xâm nhập dựa trên chữ ký. Điều này chủ yếu là do khả năng kiểm tra lưu lượng truy cập đa luồng, làm cho nó thích hợp hơn khi giám sát kết nối thông lượng cao.
5.6.4.2. Suricata cũng sử dụng cú pháp luật tương tự như Snort, nên các luật có thể được sử dụng bởi cả hai công cụ này.
6. Phần Phân tích dữ liệu
6.1. Chuyên gia phân tích hệ thống NSM:
6.1.1. Kỹ năng cần thiết:
6.1.1.1. • Phòng thủ theo nguy cơ, NSM, và chu trình NSM • Chồng giao thức TCP/IP • Các giao thức tầng ứng dụng • Phân tích gói tin • Kiến trúc Windows • Kiến trúc Linux • Phân tích dữ liệu cơ bản (BASH, Grep, SED, AWK,...) • Cách sử dụng IDS (Snort, Suricata,...) • Chỉ dẫn tấn công và hiệu chỉnh chữ ký IDS • Mã nguồn mở • Phương pháp chẩn đoán phân tích cơ bản • Phân tích phần mềm mã độc cơ bản
6.2. Các phần mềm
6.2.1. Snort
6.2.1.1. Là một hệ thống phát hiện xâm nhập mạng
6.2.1.2. Snort là một mã nguồn mở miễn phí với nhiều tính năng tuyệt vời trong việc bảo vệ hệ thống bên trong, phát hiện và ngăn chặn sự tấn công từ bên ngoài vào hệ thống.
6.2.1.3. Snort bao gồm 5 phần với 5 chức năng khác nhau:
6.2.1.3.1. • Mô đun giải mã gói tin (Packet Decoder) • Mô đun tiền xử lý (Preprocessors) • Mô đun phát hiện (Detection Engine) • Mô đun log và cảnh báo (Logging and Alerting System) • Mô đun kết xuất thông tin (Output Module)
6.2.2. So sánh Snort vs Suricata
6.2.3. Viết luật trong Snort để phát hiện ra có gói tin ping đến hệ thống mạng.
6.2.3.1. alert ICMP any any -> any any (msg: "ALERT PING"; sid:1000005)
6.2.3.2. Giải thích:
6.2.3.2.1. • alert: là hành động • ICMP là giao thức tương ứng với ping • Any1: là địa chỉ ip nguồn( để any là bao gồm tất cả) • Any2: là địa chỉ cổng nguồn • -> là hướng • Any3: địa chỉ đích • Any 4 : là cổng đích • (msg: "ALERT PING"; sid:1000005) là tham số tùy chọn trong đó • Msg là thông điệp cảnh báo • Sid là id phiên
6.2.4. Viết luật trong Snort để phát hiện người dùng đang truy cập trang web vietnamnet.vn .
6.2.4.1. Sử dụng CMD dùng lệnh nslookup tìm ip trang vietnamnet.vn
6.2.4.2. Cmd > nslookup vietnamnet.vn
6.2.4.3. Tìm được ip vietnamnet.vn là 123.30.184.9
6.2.4.4. alert tcp any any -> 123.30.184.9 any (msg: "GOING Vietnamnet.vn"; sid:1000005)
6.2.5. Viết luật trong Snort để phát hiện tấn công quét mạng kiểu SYN SCAN
6.2.5.1. alert tcp any any -> any any (flags: S; msg: " Possible SYN scan "; sid:1000005)
6.2.5.1.1. flags: S sử dụng để quét mạng SYN trong TCP
6.2.6. Viết luật trong Snort để phát hiện tấn công DOS, DDOS, Tấn công vét cạn.
6.2.6.1. alert tcp any any -> any 80 (flags: S; msg:"Possible DoS Attack Type : SYN flood"; flow:stateless; sid:3)