1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu các chức năng của tường lửa thế hệ mới suricata và ứng dụng trong mạng nội bộ doanh nghiệp

74 1,4K 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 74
Dung lượng 2,09 MB

Nội dung

DANH MỤC BẢNG, HÌNH ẢNHBảng 1.1: Bảng so sánh giữa tường lửa truyền thống và tường lửa thế hệ mới 25 Bảng 3.1: Các thành phần của hệ thống mạng 57 Hình 1.1: Vị trí của firewall trong hệ

Trang 1

Em xin chân thành cảm ơn cô giáo đã tận tình hướng dẫn, giảng dạy và giúp

đỡ trong suốt quá trình em học tập và làm đồ án tốt nghiệp

Em xin cảm ơn toàn thể các thầy cô giáo – Trường Đại học Công nghệ thông tin và Truyền thông đã truyền dạy cho em những kiến thức quý báu trong suốt quá trình học tập tại trường để em có thể hoàn thành tốt đồ án tốt nghiệp

Mặc dù đã có rất nhiều cố gắng, nhưng do thời gian và kiến thức có hạn nên không thể tránh khỏi những sai lầm và thiếu sót Em rất mong được sự đóng góp của quý thầy cô và các bạn để đồ án được hoàn thiện hơn

Em xin chân thành cảm ơn!

Thái Nguyên, ngày tháng năm 2016

Sinh viên thực hiện

Nguyễn Thị Thu Trang

1

Trang 2

LỜI CAM ĐOAN

Em xin cam đoan đây là đề tài nghiên cứu do em tự thực hiện với sự hướng

dẫn và chỉ dạy trực tiếp của cô giáo Th.S Ngô Thị Lan Phương Các nội dung và

kết quả trong đồ án chưa từng được công bố ở các nghiên cứu khác

Em xin chịu trách nhiệm về đồ án tốt nghiệp của mình

Thái Nguyên, ngày tháng năm 2016

Sinh viên

Nguyễn Thị Thu Trang

Trang 3

MỤC LỤC DANH MỤC CÁC TỪ VIẾT TẮT

ICMP Internet Control Message Protocol

3

Trang 4

DANH MỤC BẢNG, HÌNH ẢNH

Bảng 1.1: Bảng so sánh giữa tường lửa truyền thống và tường lửa thế hệ mới

25

Bảng 3.1: Các thành phần của hệ thống mạng 57

Hình 1.1: Vị trí của firewall trong hệ thống mạng 16

Hình 1.2: Ứng dụng trung tâm phân loại lưu lượng dữ liệu xác định các ứng dụng

cụ thể chảy qua mạng, không phân biệt các cổng và giao thức sử dụng 19Hình 1.3: Các kỹ thuật NGFWs sử dụng để xác định ứng dụng không phân biệt cổng, giao thức, chiến thuật lần tránh hoặc mã hoá SSL21

Hình 1.4: Nhận dạng người dùng tích hợp các thư mục doanh nghiệp dựa vào chính sách người dùng, báo cáo và pháp lý 22

Hình 1.5: Xác định nội dung dựa vào hợp nhất quét các mối đe doạ, dữ liệu bí mật

và lọc URL 24

Hình 2.1: Kiến trúc của Suricata 29

Hình 2.2: Các gói tin đi vào Sniffer 30

Hình 2.3: Quá trình xử lí ở Preprocessors 31

Hình 2.4: Gói tin được xử lý ở Detection Engine bằng các luật32

Hình 2.5: Thành phần cảnh báo và logging 33

Hình 2.6: Cấu trúc luật trong Suricata 37

Hình 2.7: Bảng các tuỳ chọn của Reference 40

Hình 2.7: Thông tin phân loại lớp quy tắc41

Hình 2.8: Một số tuỳ chọn của Ipopts 44

Hình 2.9: Bảng Type của ICMP Header 48

Hình 3.1: Hệ thống kết nối hoàn toàn với Internet 51

Hình 3.2: Hệ thống mạng ngắt kết nối hoàn toàn với Internet 52

Hình 3.3: Hệ thống bán kết nối Internet 53

Trang 5

Hình 3.4: Hệ thống chia thành hai mạng 54

Hình 3.5: Hệ thống mạng công ty hiện nay 55

Hình 3.5: Sơ đồ hệ thống mạng sử dụng Suricata 56

Hình 3.6: Thông báo áp file cấu hình lên giao diện eth0 thành công 63

Hình 3.7: Ping từ máy mạng External đến máy chủ 64

Hình 3.8: Kết quả phát hiện Ping trên Suricata 64

Hình 3.9: Kết quả thông báo chặn Ping trên Suricata 65

Hình 3.10: Phát hiện giao thức TCP trên Suricata 65

Hình 3.11: Phát hiện giao thức UDP trên Suricata 66

Hình 3.12: Chặn giao thức TCP trên Suricata 66

Hình 3.13: Chặn giao thức UDP trên Suricata 67

Hình 4.1: Mô hình hệ thống mạng kết hợp GPU, DPDK, Suricata 71

Hình 4.2: Mô hình hoạt động của hệ thống 72

Hình 4.3: Kết quả thời gian mã hóa cùng dữ liệu đầu vào của GPU và CPU 73

5

Trang 6

MỞ ĐẦU

1 Tính cấp thiết của đề tài

Ngày nay, chúng ta đang chứng kiến và thụ hưởng những thành tựu to lớn của cuộc cách mạng khoa học kỹ thuật mới - cuộc cách mạng công nghệ thông tin Mặc dù cuộc cách mạng này mới chỉ khởi đầu từ những năm cuối của thế kỷ XX, bắt nguồn bằng việc phát minh ra máy tính điện tử (Computer) và thực sự bùng phát khi mạng thông tin toàn cầu (Internet) được sử dụng rộng rãi, song đã được nhiều nhà khoa học dự báo là sẽ đưa xã hội loài người tiến vào một kỷ nguyên mới, một thời kỳ mới - nền kinh tế tri thức, một nền kinh tế được tiên đoán là sẽ phát triển mạnh mẽ gấp nhiều lần so với cuộc cách mạng công nghiệp trước đây Thực tiễn đời sống xã hội trên thế giới và ngay cả ở Việt Nam chúng ta những năm vừa qua đã kiểm chứng cho dự báo này Máy tính và công nghệ kỹ thuật số đi kèm đã và đang thay thế các công nghệ trước đây trên tất cả mọi lĩnh vực đời sống xã hội Máy tính đã nhanh chóng hiện diện và được sử dụng rộng rãi trong hầu hết các lĩnh vực của đời sống xã hội, với những mục đích sử dụng cũng hết sức đa dạng, từ sản xuất, kinh doanh, ứng dụng khoa học kỹ thuật cho đến mục đích giải trí đơn thuần

Mới chỉ hình thành và phát triển vài thập kỷ, nhưng cuộc cách mạng mới này đã khiến cho nhiều ngành kinh tế, xã hội và văn hoá hoàn toàn phụ thuộc vào các công nghệ mới của nó, đặc biệt phải kể đến vai trò của máy tính điện

tử và Internet Công nghệ thông tin cũng hình thành một thế hệ mới, thế hệ phụ thuộc vào công nghệ thông tin, coi máy tính, Internet, E-mail, điện thoại di động, máy ảnh số, máy nghe nhạc số là những công cụ không thể thiếu trong cuộc sống Đặc biệt là sự phát triền bùng nổ của mạng lưới thương mại điện tử

ở Việt Nam nói riêng và thế giới nói chung đã ngày càng trở thành mục tiêu của nhiều attacker hơn

Cũng như bất kỳ một thành tựu khoa học nào của nhân loại, khi mà các thành tựu càng được ứng dụng rộng rãi trong đời sống xã hội thì càng dễ bị lợi dụng, sử dụng hoặc là mục tiêu của tội phạm Các thành tựu do công nghệ thông tin đem lại cũng không nằm ngoài quy luật đó Vì vậy, trong thế giới mà công nghệ thông tin đã tạo ra cho con người đã hình thành một khái niệm về tội phạm - tội phạm trong lĩnh vực công nghệ thông tin hay còn được biết đến với các tên khác nhau như: tội phạm mạng (Cyber Crimes), tội phạm máy tính hay tội phạm liên quan đến máy tính (Computer Crimes) Đây là vấn đề đang gây rất nhiều khó khăn không chỉ đối với Việt Nam mà còn đối với nhiều nước trên thế giới Do vậy, việc tìm ra các giải pháp

Trang 7

hữu hiệu trong việc phòng chống lại các tội phạm công nghệ thông tin đang là vấn

đề được quan tâm hàng đầu và cũng là những thách thức trong ngành công nghệ thông tin của mỗi quốc gia

Với sự phát triển ngày càng nhiều cùng những thử đoạn ngày càng tinh vi và nguy hiểm của các attacker hiện nay thì đối với một hệ thống mạng của doanh nghiệp vấn đề an toàn an ninh phải được đặt lên hàng đầu Sử dụng một tường lửa với những công nghệ hiện đại và các chức năng có thể ngăn chặn các cuộc tấn công của các hacker là một giải pháp hữu hiệu cho các doanh nghiệp trong việc phát hiện, ngăn chặn các mối đe doạ nguy hiểm để bảo vệ hệ thống mạng

2 Mục tiêu nghiên cứu

Nghiên cứu các chức năng chính của tường lửa thế hệ mới và các kỹ thuật sử dụng trong tường lửa thế hệ mới

Nghiên cứu cấu trúc của tường lửa thế hệmới Suricata, các chức năng của Suricata và các cài đặt, cấu hình trên hệ điều hành Linux

Nghiên cứu về các luật của Suricata, cấu trúc luật và các thành phần trong luật của Suricata Viết một số luật đơn giản trong Suricata và thực thi các luật

Nghiên cứu, phân tích dấu hiệu của một số cuộc tấn công, hình thành các luật tương ứng với đặc điểm của các dạng tấn công và xâm nhập đó

3 Đối tượng nghiên cứu

Đối tượng nghiên cứu của đề tài là công nghệ tường lửa thế hệ mới nói chung

Hệ thống tường lửa thế hệ mới Suricata, chức năng và cấu trúc tập luật của Suricata.Nghiên cứu và hình thành các tập luật đối với các dạng tấn công, xâm nhập cụ thể

4 Phương pháp nghiên cứu

Nghiên cứu lý thuyết phát hiện xâm nhập thông qua các tài liệu báo cáo, luận văn…

Nghiên cứu lý thuyết về tường lửa thế hệ mới thông qua các tài liệu của tác giả Lawrence C Miller, tài liệu của hãng Palo Alto và các nguồn tài liệu khác

Nghiên cứu lý thuyết về Suricata thông qua tài liệu từ trang chủ Suricata, tài liệu Sourcefile của Suricata và các tài liệu khác

Cài đặt và triển khai hệ thống trên Linux

Tìm hiểu về các phương thức xâm nhập, tấn công và khai thác lỗ hổng, công cụ

và cách thực hiện

Triển khai tấn công, khai thác lỗ hổng Sau đó đọc log, phân tích gói tin bắt được, chuyển hoá thành các luật nhằm phát hiện và ngăn chặn

5 Nội dung đề tài

Luận văn tập trung phân tích các chức năng của tường lửa thế hệ mới, cấu trúc,

7

Trang 8

chức năng và tập luật của tường lửa thế hệ mới Suricata Phân tích một số cuộc tấn công xâm nhập từ đó hình thành các tập luật phát hiện và ngăn chặn tương ứng Bài luận văn gồm 4 chương:

Chương 1: Tổng quan về công nghệ tường lửa thế hệ mới

Giới thiệu tổng quan về công nghệ tưởng lửa thế hệ mới, đi sâu phân tích các chức năng và kỹ thuật sử dụng của tường lửa thế hệ mới

Chương 2: Tường lửa thế hệ mới Suricata

Giới thiệu tổng quan về Suricata, phân tích cấu trúc, chức năng của Suricata Phân tích chi tiết cấu trúc một luật trong Suricata

Chương 3: Demo phát hiện và chặn một số giao thức trên Suricata

Phân tích một số dạng tấn công và thiết lập các luật tương ứng Thiết lập một số luật cơ bản và thực nghiệm trên Suricata Cài đặt Suricata trên hệ điều hành Linux

Ứng dụng Suricata trong việc phát hiện và ngăn chặn các giao thức

Chương 4: Khả năng ứng dụng và mở rộng của kết quả nghiên cứu

Tóm tắt, nhận xét các kết quả đã đạt được và các hạn chế cần phải khắc phục trong bài báo cáo Nêu lên ý nghĩa khoa học và ứng dụng trong thực tiễn của tường lửa thế hệ mới Đặt ra hướng phát triển trong tương lai và ứng dụng của nó trong ngành công nghệ thông tin đặc biệt là lĩnh vực an toàn an ninh mạng

Trang 9

CHƯƠNG 1: TỔNG QUAN VỀ CÔNG NGHỆ TƯỜNG LỬA

để làm giảm thiệt hại gây nên từ các cuộc tấn công

Khái niệm bảo mật được định nghĩa theo 3 lĩnh vực chính:

 Bảo mật máy tính (Computer Security): Là một tiến trình ngăn chặn và phát hiện sử dụng không hợp pháp vào máy tính của bạn bằng cách lựa chọn các công

cụ thiết kế để bảo vệ dữ liệu và tấn công của hackers

 Bảo mật mạng (Network Security): Là phương pháp để bảo vệ dữ liệu trong suốt quá trình chuyển động của chúng

 Bảo mật Internet (Internet Security): Là phương pháp để bảo vệ dữ liệu trong suốt quá trình vận chuyển của chúng ra ngoài đến kết nối Inernet

1.1.2 Các phương pháp xâm nhập hệ thống

Tấn công (attack) là hoạt động có chủ ý của kẻ phạm tội lợi dụng các thương tổn của hệ thống thông tin và tiến hành phá vỡ tính sẵn sàng, tính toàn vẹn và tính

bí mật của hệ thống thông tin

1.1.2.1 Phương thức tấn công để thăm dò mạng

Thăm dò là việc thu thập thông tin trái phép về tài nguyên, các lỗ hổng hoặc dịch vụ của hệ thống

Tấn công thăm dò thường bao gồm các hình thức: Sniffing, Ping Sweep, Ports Scanning

Biến thể của sniffer là các chương trình nghe lén bất hợp pháp như: công cụ nghe lén yahoo, ăn cắp password email…

9

Trang 10

- Bản chất của quá trình này là gửi một ICMP Echo Request đến máy chủ mà hacker đang muốn tấn công và mong đợi một ICMP Reply.

- Ngoài lệnh ping sẵn có trên Windows, còn có một số công cụ ping sweep như: Pinger, Friendly, Ping Pro…

c Port scanning

Port scanning là một quá trình kết nối các cổng (TCP và UDP) trên một hệ thống mục tiêu nhằm xác định xem dịch vụ nào đang “chạy” hoặc đang trong trạng thái “nghe” Xác định các cổng nghe là một công việc rất quan trọng nhằm xác định được loại hình hệ thống và những ứng dụng đang được sử dụng

Port scanning thực hiện các chức năng:

- Xác định máy đang ở cổng nào

- Xác định hệ thống đang sử dụng dịch vụ nào

Mỗi công cụ có cơ chế port scan riêng

1.1.2.2 Tấn công xâm nhập (access attack)

Tấn công xâm nhập là một thuật ngữ rộng miêu tả bất kỳ kiểu tấn công nào đòi hỏi người xâm nhập lấy được quyền truy cập trái phép của một hệ thống bảo mật với mục đích thao túng dữ liệu, nâng cao đặc quyền

Tấn công truy nhập hệ thống: là hành động nhằm đạt được quyền truy cập bất hợp pháp đến một hệ thống mà ở đó hacker không có tài khoản sử dụng

Tấn công xâm nhập thao túng dữ liệu: kẻ xâm nhập đọc, viết, xóa, sao chép hay thay đổi dữ liệu

1.1.2.3 Tấn công từ chối dịch vụ

Tấn công từ chối dịch vụ là tên gọi chung của cách tấn công làm cho một hệ thốn nào đó bị quá tải không thể cung cấp dịch vụ, làm gián đoạn hoạt động của hệ thống hoặc hệ thống phải ngưng hoạt động

Tùy theo phương thức thực hiện mà nó được biết dưới nhiều tên gọi khác nhau:

- Khởi đầu là lợi dụng sự yếu kém của giao thức TCP (Transmision Control Protocol) để thực hiện tấn công từ chối dịch vụ DoS (Denial of Service)

- Tiếp theo là tấn công từ chối dịch vụ phân tán DDoS (Distributed DoS)

Trang 11

- Mới nhất là tấn công từ chối dịch vụ theo phương pháp phản xạ DRDoS (Distributed Reflection DoS).

1.1.2.4 Phương pháp tấn công hệ thống DNS

DNS Server 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 trên mạng

1.1.2.5 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, 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…

Virus thường bị lây nhiễm qua các phương thức như thư điện tử và Internet

b Trojan horse

Là một phần mềm độc hại, nó có chức năng hủy hoại tương tự như virus nhưng nó không có khả năng tự nhân bản như virus Trên các máy tính, các hacker thường đính kèm một Trojan horse vào một cái tên mà người dùng ít nghi ngờ vào một thư điện tử với việc khuyến khích người dùng mở đính kèm ra Trojan horse thường là các tệp khả nghi trên máy tính và do đó sẽ có các đuôi như *.exe, *.com,

*.scr hay *.pif Nếu một Trojan horse có tên là “Readme.txt.exe” thì tệp này sẽ hiển thị một cách mặc định thành “Readme.txt” và nó sẽ đánh lừa người dùng rằng đây chỉ là một loại hồ sơ văn bản không thể gây hại

1.1.3 Các mối đe dọa về bảo mật

Hiện nay, một hệ thống công nghệ thông tin luôn bị đe dọa tấn công bởi các hacker nên việc xây dựng một hệ thống bảo vệ xâm nhập là cần thiết đối với mỗi

11

Trang 12

một tổ chức Các hình thức tấn công của hacker ngày càng tinh vi, mức độ tấn công ngày càng nguy hiểm hơn, nên không một hệ thống nào có thể đảm bảo hoàn toàn không bị xâm nhập Nếu các tổ chức phòng chống tội phạm công nghệ thông tin đang cố gắng cập nhật, sửa đổi để cung cấp cho người dùng những phương pháp phòng chống hiệu quả thì bên cạnh đó, những kẽ tấn công cũng ngày đêm nghiên cứu tung ra các hình thức xâm nhập phá hoại khác.

Để bảo vệ tốt được một hệ thống, đầu tiên bạn phải có cái nhìn tổng quát về các nguy cơ tấn công, nghĩa là đầu tiên bạn phải nhận định được bạn cần bảo vệ cái gì, bảo vệ khỏi ai cùng với đó bạn phải hiểu các kiểu đe dọa đến sự bảo mật mạng của bạn Thông thường sẽ có 4 mối đe dọa bảo mật sau:

 Mối đe dọa bên trong

 Mối đe dọa bên ngoài

 Mối đe dọa có cấu trúc và không có cấu trúc

a Mối đe dọa bên trong

Mối đe dọa bên trong là kiểu tấn công được thực hiện từ một cá nhân hoặc một tổ chức được tin cậy trong mạng và có một vài quyền hạn để truy cập vào hệ thống Hầu hết chúng ta chỉ quan tâm xây dựng một hệ thống firewall và giám sát

dữ liệu truy cập ở các đường biên mạng mà ít để ý đến các truy cập trong mạng nội

do sự tin tưởng vào các chính sách được người quản trị quy định trong hệ thống

Do sự bảo mật trong một mạng local thường lỏng lẻo nên đây là môi trường thường được các hacker sử dụng để tấn công hệ thống

Mối đe dọa bên trong thường được thực hiện bởi các nhân viên có bất đồng với công ty, các gián điệp kinh tế hay do một máy client đã bị hacker chiếm quyền truy cập Mối đe dọa này thường ít được để ý và phòng chống vì các nhân viên có thể truy cập vào mạng và dữ liệu quan trọng của sever

b Mối đe dọa ở bên ngoài

Mối đe dọa bên ngoài là việc các hacker cố gắng xâm nhập vào một hệ thống mạng nào đó bằng một vài kỹ thuật hay việc phá hoại truy cập hệ thống (DoS,

Trang 13

DDoS…) Xây dựng hệ thống firewall và cảnh báo để ngăn ngừa các mối đe dọa

từ bên ngoài là việc mà ccs công ty và tổ chức thường phải bỏ nhiều thời gian và tiền bạc để đầu tư phát triển

c Mối đe dọa không có cấu trúc và có cấu trúc

Mối đe dọa tấn công vào một hệ thống có thể đến từ rất nhiều loại Phổ biến nhất là các hacker mới vào nghề, còn ít kiến thức và không có kinh nghiệm, thực hiện việc tấn công bằng cách sử dụng công cụ hoặc thực hiện tấn công DoS (mối

đe dọa không có cấu trúc) Hoặc việc tấn công được thực hiện bởi các hacker thực thụ hoặc cả một tổ chức (mối đe dọa có cấu trúc), họ là những người có kiến thức

và kinh nghiệm cao, nắm rõ việc hoạt động của các hệ thống, giao thức mạng cũng như các phương pháp thường được sử dụng để ngăn chặn trong các firewall Đây

là mối đe dọa khó ngăn ngừa và phòng chống nhất đối với các hệ thống mạng

1.2 Công nghệ tường lửa thế hệ mới

1.2.1 Giới thiệu về firewall

Firewall là một thiết bị, hay một hệ thống điều khiển truy cập mạng, nó có thể là phần cứng hoặc phần mềm hoặc kết hợp cả hai

Firewall thường được đặt tại mạng vành đai để đóng vai trò như cổng nối (gateway) bảo mật giữa một mạng tin cậy và mạng không tin cậy, có thể giữa Intranet và Internet hoặc giữa mạng của doanh nghiệp chủ với mạng của đối tác.Firewall được thiết kế để ngăn chặn tất cả các lưu lượng không được phép và cho phép các lưu lượng được phép đi qua nó Vì vậy, thiết bị firewall thường bao gồm hai giao tiếp mạng (network interface): một nối với mạng bên trong (intranet: mạng cần bảo vệ) và một nối với mạng bên ngoài (Internet: mạng không tin cậy)

13

Trang 14

Hình 1.1: Vị trí của firewall trong hệ thống mạng

Firewall đóng vai trò như một getway, nhưng nhiệm vụ của nó khác với router Router là thiết bị mạng, thường được sử dụng cho mục tiêu định tuyến lưu lượng mạng (có thể từ chối lưu lượng nào đó) Trong khi đó, firewall là thiết bị bảo mật, có nhiệm vụ giám sát và điều khiển lưu lượng mạng (chỉ cho phép lưu lượng thích hợp đi qua)

Firewall cung cấp một cơ chế cấu hình linh hoạt, nó có thể được cấu hình để cho phép hoặc cấm các lưu lượng dựa trên dịch vụ, địa chỉ IP của nguồn hoặc đích, hoặc ID của người yêu cầu sử dụng dịch vụ Nó cũng có thể được cấu hình để ghi lại (log) tất cả các lưu lượng đã đi qua nó

1.2.2 Khái niệm công nghệ tường lửa thế hệ mới

An ninh mạng tại hầu hết các doanh nghiệp hiện nay gặp phải những vấn đề như bị phân tán hay bị hỏng gây ra những nguy cơ đe doạ không mong muốn và tốn nhiều chi phí Giải pháp an toàn an ninh mạng truyền thống đã không theo kịp

sự phát triển và thay đổi của các ứng dụng, các mối đe doạ và kết nối mạng Hơn nữa các biện pháp doanh nghiệp đưa ra để khắc phục vấn đề này hầu hết không mạng lại hiệu quả Như vậy một yêu cầu thực tiễn và cấp bách đặt ra đó là phải tái tạo lại an toàn an ninh mạng và có biện pháp bảo vệ hệ thống mạng một cách hiệu quả nhất

Dựa trên những nhu cầu thực tiễn của thị trường công nghệ thông tin như vậy, các chuyên gia trong lĩnh vực an minh mạng đã cho ra đời khái niệm công nghệ tường lửa thế hệ mới và các dòng sản phẩm tường lửa thế hệ mới Với sự tích hợp các công nghệ tiên tiến hiện đại nhất trong phát hiện, ngăn chặn và phòng chống các cuộc tấn công, mối đe doạ nguy hiểm đã giúp các doanh nghiệp có một giải pháp hiệu quả trong việc bảo vệ an ninh mạng của công ty mình

Tường lửa thế hệ mới (Next Generation Firewalls – NGFWs) là nền tảng

Trang 15

mạng tích hợp đầy đủ tường lửa truyền thống với các thiết bị mạng có chức năng lọc như in-line deep packet inspection (DPI), intrucsion prevention system (IPS) và các kỹ thuật ngăn chặn khác như SSL, SSH, lọc website, quản lý chất lượng dịch vụ, quản lý băng thông, kiểm tra chống virus và quản lý sự tham gia của bên thứ ba [2]

NGFWs được xây dựng dựa trên nền tảng bảo mật mạng của doanh nghiệp, NGFWs “fix the ploblem at the it’s core” NGFWs phân loại lưu lượng dữ liệu dựa vào các đặc tính của ứng dụng để cho phép khả năng hiển thị và kiểm soát toàn bộ ứng dụng chạy trong mạng doanh nghiệp

Các yêu cầu chức năng cần thiết cho một NGFWs hoạt động hiệu quả bao gồm:

 Xác định ứng dụng không cần chú ý đến cổng, giao thức, các kỹ thuật lẩn tránh, mã hoá SSL trước khi làm bất cứ điều gì khác

 Cung cấp các biện pháp bảo vệ để chống lại một loại các mối đe doạ ở thời gian thực, bao gồm cả những người hoạt động ở lớp ứng dụng

 Cung cấp khả năng hiện thị, kiểm soát chính sách dựa trên các ứng dụng bao gồm cả các chức năng riêng lẻ

 Không chỉ kết hợp mà phải tích hợp khả năng phòng chống xâm nhập của tường lửa truyền thống

 Nhận dạng chính xác người sử dụng và sau đó sử dụng thông tin nhận dạng như một thuộc tính trong chính sách giám sát

 Hỗ trợ mutil-gigabit

Khả năng điển hình của tường lửa truyền thống là lọc gói tin, dịch địa chỉ mạng và địa chỉ cổng mạng (NAT), kiểm tra trạng thái và mạng riêng ảo (VPN) Khả năng phòng chống xâm nhập điển hình là chống lại các lỗ hổng và những dấu hiệu của sự đe doạ, phỏng đoán các dấu hiệu và sự xâm nhập

Chìa khoá cốt lõi và điểm mạnh của NGFWs là làm tất cả các khả năng một tưởng lửa truyền thống với khả năng tiên tiến như: tích hợp các công nghệ tiên tiến, hiệu suất cao và các tính năng khác nhằm cung cấp một giải pháp mạng doanh nghiệp hiệu quả

1.2.3 Một số công nghệ, kỹ thuật sử dụng trong NGFWs

 Hệ thống phát hiện xâm nhập mạng IDS

IDS (Intrusion Detection System) là hệ thống giám sát lưu thông mạng (có thể là phần cứng hoặc phần mềm), có khả năng nhận biết những hoạt động khả nghi hay những hành động xâm nhập trái phép trên hệ thống mạng trong tiến trình tấn công, cung cấp thông tin nhận biết và đưa ra cảnh báo cho hệ thống, nhà quản trị IDS có thể phân biệt được các cuộc tấn công từ nội bộ hay tấn công từ bên ngoài

IDS phát hiện dựa trên các dấu hiệu đặc biệt về nguy cơ đã biết hay dựa trên so

15

Trang 16

sánh lưu thông mạng hiện tại với baseline (thông số chuẩn của hệ thống có thể chấp nhận được) để tìm ra các dấu hiệu bất thường.

 Hệ thống ngăn chặn xâm nhập mạng IPS

IPS ( Intrusion Prevention System) là một hệ thống có thể phát hiện và ngăn chặn sự xâm nhập từ bên ngoài vào các hệ thống máy tính

IPS là một phương pháp tiếp cận an ninh mạng bằng cách ưu tiên sử dụng các công nghệ tiên tiến để phát hiện và ngăn chặn các nỗ lực xâm nhập vào hệ thống máy tính IPS kiểm tra các luồng lưu lượng ra/ vào một hệ thống máy tính hoặc mạng máy tính nhằm mục đích vi phạm an ninh Nếu phát hiện mối đe dọa thì nó

sẽ có những hành động bảo vệ như ngăn chặn gói tin hoặc ngắt toàn bộ kết nối IPS kiểm tra, ghi chép lại một cách chi tiết các hành động đang đăng nhập vào hệ thống và gửi cảnh báo cho hệ thống hoặc quản trị mạng Các IPS khác nhau có phương thức khác nhau trong việc kiểm tra các luồng dữ liệu để phát hiện các mối

đe dọa, xâm nhập

 Công nghệ giám sát an ninh mạng NSM

Giám sát an ninh mạng (Network Security Mornitoring) 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

Đối tượng của giám an ninh mạng là tất cả các thành phần, thiết bị trong hệ thống mạng:

 Sử dụng PCAP log lại thông tin của lưu lượng dữ liệu mạng

PCAP (packet capture) bao gồm những giao diện lập trình ứng dụng (API) dùng để chặn bắt và phân tích các lưu lượng dữ liệu trên mạng PCAP thực hiện các chức năng lọc gói dữ liệu theo những luật của người dùng khi chúng được truyền tới ứng dụng, truyền những gói dữ liệu thô tới mạng, thu thập thông tin thống kê lưu lượng mạng Đối với các hệ thống thuộc họ Unix ta có thư viện libpcap, còn đối với Window ta có thư viện được port từ libpcap là winpcap

 Phân tích các dòng dữ liệu của file PCAP, tự động xử lý file PCAP

1.2.4 Chức năng của NFGWs

 Xác định ứng dụng

Thiết lập cổng và giao thức là bước quan trọng đầu tiên trong việc xác định ứng dụng nhưng đó là chưa đủ Nhận dạng, xác định ứng dụng một cách nhanh

Trang 17

chóng và mạnh mẽ thông qua việc kiểm tra và cho phép kiểm soát chặt chẽ các dòng chảy (lưu lượng truy cập) của session thông qua một tường lửa dựa trên ứng dụng cụ thể đang chạy thay vì chỉ dựa trên các thiết lập cơ bản thì không thể nhận

rõ được các giao tiếp mạng

Hình 1.2: Ứng dụng trung tâm phân loại lưu lượng dữ liệu xác định các ứng dụng cụ thể chảy qua mạng, không phân biệt các cổng và giao thức sử dụng

Xác thực rõ ràng các ứng dụng là mục đích cuả phân loại lưu lượng dữ liệu mạng tại trung tâm của NGFWs Nó đòi hỏi tiếp cận đa yếu tố để xác định danh tính của các ứng dụng trên mạng, bất kể cổng, giao thức, mã hoá hay các kỹ thuật lần tránh để vượt qua tường lửa Kỹ thuật nhận dạng ứng dụng được sử dụng trong NGF bao gồm:

 Phát hiện giao thức ứng dụng và giải mã

Phát hiện các giao thức ứng dụng ( ví dụ: HTTP, FTP…) và nếu SSL được sử dụng thì sẽ tiến hành giải mã các lưu lượng dữ liệu để phân tích các

dữ liệu đó Lưu lượng dữ liệu được mã hoá lại sau khi tất cả các kỹ thuật nhận dạng được hoạt động

 Giải mã giao thức ứng dụng

17

Trang 18

Xác định các giao thức đã được phát hiện là “thực tế“ hay nó được sử dụng như là một “đường hầm” để ẩn đi các ứng dụng (ví dụ: Yahoo!Messenger có thể được ẩn bên trong HTTP)

 Dấu hiệu ứng dụng

Dấu hiệu ngữ cảnh dựa trên tìm kiếm các đặc tính duy nhất và đặc điểm toàn tác để xác định ứng dụng không phụ thuộc vào cổng và giao thức được sử dụng Điều này bao gồm khả năng phát hiện các chức năng cụ thể trong các ứng dụng (chẳng hạn như chuyển tập tin trong IM (Instant Messenger) session)

 Heuristics

Đối với các dữ liệu vượt quá khả năng của phân tích dấu hiệu thì khi đó phân tích Heuristics (hành vi) được áp dụng để nhận dạng các ứng dụng phức tạp, chẳng hạn như P2P (Peer-to-peer) hay công cụ VoIP (Voice over Internet Protocol)

Trang 19

Hình 1.3: Các kỹ thuật NGFWs sử dụng để xác định ứng dụng không phân biệt cổng, giao thức, chiến thuật lần tránh hoặc mã hoá SSL

 Xác định người dùng

Công nghệ nhận dạng người dùng sử dụng liên kết các địa chỉ IP để nhận dạng người dùng cụ thể, tạo điều kiện cho khả năng hiển thị và kiểm soát các hoạt động mạng trên một cơ sở cho mỗi người dùng Tích hợp chặt chẽ với các thư mục

LDAP (Lightweight Directory Access Protocol là một giao thức ứng dụng truy cập

các cấu trúc thư mục Nó được thiết kế trên giao thức Internet TCP/IP), chẳng hạn như Microsoft Active Directory (AD), hỗ trợ mục tiêu này theo hai cách:

- Thứ nhất, nó luôn kiểm chứng và duy trì các mối quan hệ với người sử đụng địa chỉ IP bằng cách kết hợp các giải pháp như: giám sát đăng nhập, các kỹ thuật captive portal…

- Tiếp theo nó giao tiếp với AD để thu thập các thông tin người dùng

Các chi tiết, thông tin sau khi thu thập được sẽ được lưu trữ để hỗ trợ cho các nhiệm vụ:

19

Trang 20

- Đạt được tầm nhìn vào người cụ thể chịu trách nhiệm cho tất cả ứng dụng, nội dung và mối đe doạ của lưu lượng truy cập trên mạng.

- Cho phép sử dụng nhận dạng như là một biến trong chính sách kiểm soát truy cập

- Tạo điều kiện xử lý sự cố, phản ứng sự cố và báo cáo

Với việc nhận dạng người dùng, bộ phận IT có được một cơ chế mạnh mẽ để giúp kiểm soát việc sử dụng các ứng dụng một cách thông minh

Hình 1.4: Nhận dạng người dùng tích hợp các thư mục doanh nghiệp dựa

vào chính sách người dùng, báo cáo và pháp lý.

Trang 21

 Xác định nội dung

Việc xác định nội dung truyền vào của tường lửa thế hệ mới với các khả năng chưa từng có ở các tường lửa trước đây của các doanh nghiệp như: phòng ngừa các mối đe doạ thời gian thực trong lưu lượng truy cập cho phép, kiểm soát các hoạt động truy cập Web, các tập tin và lọc dữ liệu

 Threat prevention (phòng chống mối đe doạ): thành phần này ngăn chặn

các spyware, virus, các lỗ hổng xâm nhập mạng mà không phụ thuộc vào lưu lượng ứng dụng

 Application decoder: Xử lý dòng dữ liệu và kiểm tra nó để xác định cụ

thể các mối đe doạ

 Stream-based virus and spyware scanning: Quét lưu lượng truy cập ngay

sau khi nhân được các gói tin đầu tiền của một tập tin thay vì quét sau khi nhận được toàn bộ tập tin vào bộ nhớ để tối đa hoá thông lượng và giảm thiểu bộ nhớ

 Uniform threat signature format: Tăng hiệu suất bằng cách tránh sự cẩn

thiết phải sử dụng công cụ quét riêng biệt cho từng mối đe doạ Viruses, spyware, các lỗ hổng đều có thể được phát hiện trong một lần

 Vulnerability attack protection (IPS): Chương trình mạnh mẽ cho việc

bình thường hoá các lưu lượng truy cập và chống phân mảnh được nối bởi các giao thức bất thường, hành vi bất thường, cơ chế phát hiện heuristic để cung cấp bảo vệ trên phạm vi rộng nhất của cả hai mối đe doạ là mối đe doạ đã biết và mối đe doạ chưa biết

 URL filtering: Mặc dù không bắt buộc, nhưng lọc URL (Uniform

Resource Locator) đôi khi cũng được dùng để phân loại nội dung Việc phân tích dựa trên cơ sở dữ liệu URL cho phép các quản trị viên giám sát và kiểm soát hoạt động truy cập Web của người sử dụng Được sử dụng kết hợp với xác định người dùng, chính sách sử dụng Web, thậm chí được thiết lập trên mỗi cơ sở sử dụng, hơn nữa là bảo vệ các doanh nghiệp từ các quy định, rủi ro liên quan đến pháp lý

 File and data filtering: Sử dụng giải pháp kiểm tra chuyên sâu ứng dụng,

tập tin và lọc dữ liệu cho phép thực thi các chính sách làm giảm nguy cơ của các tập tin trái phép và chuyển giao dữ liệu Khả năng bao gồm: ngăn chặn các file kiểu thực tại của file (không dựa vào phần mở rộng) và khả năng kiểm soát việc chuyển giao các mô hình dữ liệu nhạy cảm Thành phần này bổ sung chi tiết cho nhận dạng ứng dụng, mà đối với nhiều ứng dụng cung cấp khả năng kiểm soát tập tin trong một ứng dụng riêng lẻ

Với việc xác định nội dung, bộ phận IT có được khả năng ngăn chặn các mối đe

21

Trang 22

doạ, giảm việc sử dụng không hợp lệ của Internet và giúp ngăn chặn rỏ rỉ dữ liệu.

Hình 1.5: Xác định nội dung dựa vào hợp nhất quét các mối đe doạ, dữ liệu

bí mật và lọc URL

 Chính sách kiểm soát

Xác định các ứng dụng sử dụng (nhận dạng ứng dụng), những người đang sử dụng ứng dụng (nhận dạng người sử dụng), và những gì họ đang sử dụng cho ứng dụng (xác định nội dung) là một bước quan trọng đầu tiên trong việc tìm hiểu về lưu lượng truy cập đi qua mạng Tìm hiểu các ứng dụng làm những gì, các cổng

mà nó sử dụng, công nghệ cơ bản của nó, và hành vi của nó là bước tiếp theo để đưa ra một quyết định sáng suốt về cách xử lý với các ứng dụng Khi một bức tranh hoàn chỉnh về cách sử dụng là đã đạt được, tổ chức có thể áp dụng chính sách với một loạt các phản ứng chi tiết hơn và thích hợp hơn thay vì chỉ đơn giản

là "cho phép" hoặc "từ chối" - các tùy chọn chỉ có sẵn trong cổng của tường lửa truyền thống Điều này có thể được thực hiện bởi sự kết hợp của nhận dạng ứng dụng, người dùng, nội dung và các mô hình bảo mật tích cực của các tường lửa thế hệ mới Tường lửa truyền thống có các mô hình bảo mật, nhưng thiếu thông minh Thiết bị an ninh khác có thể có một số các thông tin tình báo, nhưng không phải là mô hình bảo mật Ví dụ về các tùy chọn kiểm soát chính sách

Trang 23

trong NGFWs bao gồm:

 Cho phép hoặc từ chối

 Cho phép nhưng quét các lỗ hổng, virus và các mối đe dọa khác

 Cho phép dựa trên lịch trình, người dùng, hoặc các nhóm

 Giải mã và kiểm tra

 Áp dụng định hình lưu lượng truy cập thông qua QoS

 Áp dụng chuyển tiếp dựa trên chính sách

 Cho phép chức năng ứng dụng nhất định

 Kết hợp bất kỳ các chính sách nói trên

1.2.5 So sánh giữa tường lửa truyền thống và tường lửa thế hệ mới

Bảng 1.1: Bảng so sánh giữa tường lửa truyền thống và tường lửa thế hệ mới

Thuộc tính Tường lửa truyền thống Tường lửa thế hệ mới

- Sử dụng cơ chết NAT trong che dấu địa chỉ IP

Sử dụng các công nghệ hiện đại

và tiên tiến:

- Công nghệ phát hiện xâm nhập IDS

- Công nghệ phòng chống xâm nhập IPS

- Công nghệ giám sát an ninh mạng NMS

- Sử dụng công nghệ PCAP trong việc log thông tin lưu chuyển lưu lượng mạng…

 Application Gateway

- Sử dụng cơ chế Proxy

 Circuit Level Gate

- Sử dụng cơ chế Nat để che dấu địa chỉ IP

 Application identification

- Phát hiện giao thức ứng dụng và giải mã

Trang 24

 Bảo vệ tài nguyên

 Ghi nhận và báo cáo các sự kiện

 Thực hiện các chức năng của tường lửa truyền thống như lọc gói tin, kiểm tra giao thức stateful (SPI), kết nối VPN, NAT…

 Thích ứng và tiếp nhận linh hoạt các mối đe dọa hiện thời, tích hợp, hỗ trợ và nâng cấp đường dẫn cho việc lưu các thông tin dữ liệu và các kỹ thuật mới để giải quyết các vấn

đề xâm nhập trong tương lai

 Application identification and filtering

 Directory integration

 Integrated rather than merely colocated network intrusion prevention

 Tích hợp SSL giải mã với tốc độ multi-gigabit

 SSL and SSH inspection

 Có khả năng lọc sâu các gói tin nhờ công nghệ in-line deep packet inspection (DPI)

Malware filtering

Các sản phẩm

 Sortware firewall SunScreen firewall, IPF, Microsoft ISA server, Check Point NG, Linux’s IPTables …

 Appliance firewallCisco PIX, NetScreen firewall, SonicWall Appliaces, WatchGuard Fireboxes, Nokia firewall…

 Palo Alto Firewall của Palo Alto

 Một số tường lửa mềm: Suricata, Iptable, Snort…

Trang 25

CHƯƠNG 2: TƯỜNG LỬA THẾ HỆ MỚI VỀ SURICATA

2.1 Giới thiệu về Suricata

Suricata là một hệ thống phát hiện xâm nhập dựa trên mã nguồn mở Nó được phát triển bởi Open Information Security Foundation (OISF) Một phiên bản beta đã được phát hành vào tháng 12 năm 2009, bản chuẩn đầu tiên phát hành tiếp theo vào tháng 7 năm 2010[11][12]

Công cụ này được phát triển không nhằm cạnh tranh hay thay thế các công tụ hiện có, nhưng nó sẽ mang lại những ý tưởng và công nghệ mới trong lĩnh vực an toàn an ninh mạng

Suricata là công cụ IDS/IPS dựa trên luật để theo dõi lưu lượng mạng và cung cấp cảnh báo đến người quản trị hệ thống khi có sự kiện đáng ngờ xảy ra Nó được thiết kế để tương thích với các thành phần an ninh mạng hiện có Bản phát hành đầu tiên chạy trên nền tảng linux 2.6 có hỗ trợ nội tuyến (inline) và cấu hình giám sát lưu lượng thụ động có khả năng xử lý lưu lượng lên đến gigabit Suricata

là công cụ IDS/IPS miễn phí trong khi nó vẫn cung cấp những lựa chọn khả năng

mở rộng cho các kiến trúc an ninh mạng phức tạp nhất

Là một công cụ đa luồng, suricata cung cấp tăng tốc độ và hiệu quả trong việc phân tích lưu lượng mạng Ngoài việc tăng hiệu quả phần cứng (với phần cứng và card mạng giới hạn), công cụ này được xây dựng để tận dụng khả năng xử

lý cao được cung cấp bởi chip CPU đa lõi mới nhất

Tại sao Suricata được nhiều người sử dụng:

 Dễ dàng cấu hình: Suricata làm việc như thế nào, tập tin cấu hình ở đâu, các luật như thế nào người quản trị đều có thể biết và cấu hình theo ý mình được

Kể cả việc tạo ra các luật mới

 Suricata là phần mềm mã nguồn mở: Sricata được phát hành dưới giấy phép GNU/GPL điều này có nghĩa là bất cứ ai cũng có thể sử dụng Suricata một cách miễn phí dù đó là doanh nghiệp hay người dùng cá nhân Ngoài ra vì là phần

25

Trang 26

mềm mã nguồn mở nên Suricata có một cộng đồng người sử dụng lớn, sẵn sàng hỗ trợ nếu có bất cứ thắc mắc gì.

 Chạy trên nhiều nền tảng khác nhau: Chạy trên các hệ điều hành nguồn

mở như Linux, CentOS Debian, Fedora, FreeBSD, Window, Mac OS X (10.5.8 and 10.6.8)…

 Luật của Suricata thường xuyên được cập nhật: Các luật của Suricata thường xuyên được bổ sung và cập nhật các hình thức xâm nhập mới Người sử dụng có thể dễ dàng tải về từ https://rules.emergingthreats.net/open/suricata/

2.2 Cấu trúc của Suricata

Suricata được phát triển dựa trên Snort nên nó vẫn giữ nguyên kiến trúc bên trong của Snort Kiến trúc của nó có nhiều thành phần, với mỗi thành phần có một chức năng riêng

Kiến trúc của Suricata gồm 4 phần cơ bản sau:

 The Sniffer (Packet Decoder)

 The Preprocessors

 The Detection Engine

 The Output: gồm hai modules

- Modul Alert/ Logging

- Modul kết xuất thông tin

Hình 2.1: Kiến trúc của Suricata

- Khi Suricata hoạt động nó sẽ thực hiện lắng nghe và thu bắt tất cả các gói tin nào di chuyển qua nó

- Các gói tin sau khi bị bắt được đưa và module Sniffer, tại đây các gói tin sẽ được giải mã

- Tiếp theo gói tin sẽ được đưa vào module Preprocessor, tại đây gói tin sẽ được phân tích một cách chi tiết và đầy đủ theo các cách khác nhau

- Sau khi phân tích xong các gói tin được đưa vào module Detection Tại đây,

Trang 27

tùy theo việc có phát hiện được xâm nhập hay không mà gói tin có thể được lưu thông tiếp hay được đưa vào module Alert/ Logging để xử lý

- Khi các cảnh báo được xác định module kết xuất thông tin sẽ thực hiện việc đưa cảnh báo ra theo đúng định dạng mong muốn

Preprocessors, detection engine và alert system đều là các plug-ins Điều này giúp cho việc chỉnh sửa hệ thống theo mong muốn của người quản trị một cách dễ dàng

2.2.1 Packet Sniffer (Decoder)

Packet Sniffer là một thiết bị phần cứng hoặc phần mềm được đặt vào trong mạng Chức năng của nó tương tự như việc nghe lén trên điện thoại di động, nhưng thay vì hoạt động trên mạng điện thoại nó nghe lén trên mạng dữ liệu Bởi

vì trong mô hình mạng có nhiều giao thức cao cấp như TCP, UDP, ICMP nên công việc của packet sniffer là nó phải phân tích các giao thức đó thành thông tin

mà con người có thể đọc và hiểu được Packet Sniffer có thể được sử dụng với các mục đích như:

 Phân tích mạng và troubleshooting

 Performance network and bechmarking

 Nghe lén mật khẩu clear-text và những dữ liệu khác

Mã hóa lưu lượng mạng có thể tránh được việc sniffer các gói tin Tùy vào mục đích mà packet sniffer có thể sử dụng cho mục đích tốt hoặc xấu

Hình 2.2: Các gói tin đi vào Sniffer

Khi Suricata đã nhận các gói tin từ quá trình sniffer nó sẽ đi vào quá trình giải mã Chính xác thì nơi mà gói tin đi vào bộ giải mã phụ thuộc vào lớp liên kết

mà trước đó đọc được Snort hỗ trợ một số lớp liên kết từ pcap: Ethernet, 802.11, Token ring, FDDI, Cisco HDLC, SLIP, PPP và OpenBSD’s PF Ở trên lớp liên kết Suricata hỗ trợ giải mã các giao thức khác nhau, bao gồm: IP, ICMP, TCP, UDP (chi tiết trong mã nguồn src/decode.c)

Bất kể là lớp liên kết nào đang đ ược sử dụng, tất cả các bộ giải mã sẽ đều làm việc theo một kiểu chung Đối với trường hợp các lớp cụ thể , con trỏ trong cấu trúc của gói tin sẽ được thiết lập trỏ tới một phần khác của gói tin Dựa vào các

27

Trang 28

thông tin đã giải mã được, nó sẽ gọi các lớp cao hơn và giải mã cho đến khi không còn bộ giải mã nào nữa.

2.2.2 Preprocessors

Preprocessors là plug-in cho phép phân tích cú pháp dữ liệu theo những cách khác nhau Nếu chạy Suricata mà không có bất cứ cấu hình nào về preprocessors trong tập tin cấu hình sẽ chỉ thấy từng gói dữ liệu riêng rẽ trên mạng Điều này có thể làm IDS bỏ qua một số cuộc tấn công, vì nhiều loại hình tấn công hiện đại cố tình phân mảnh dữ liệu hoặc có tình đặt phần độc hại lên một gói tin và phần còn lại lên gói tin khác (kỹ thuật lẩn trốn)

Dữ liệu sẽ được đưa vào Preprocessors sau khi đi qua bộ giải mã gói tin (packet decoder) Suricata cung cấp một loạt các Preprocessors ví dụ như: Frag3 (một module chống phân mảnh gói tin IP), sfPortscan (module được thiết kế chống lại các cuộc trinh sát, như scan port, xác định dịch vụ, scan OS), Stream5 (module tái gộp các gói tin ở tầng TCP)

Hình 2.3: Quá trình xử lí ở Preprocessors

2.2.3 Detection Engine

Đầu vào là các gói tin đã được sắp xếp ở quá trình preprocessors Detection engine là một phần của hệ thống phát hiện xâm nhập dựa trên dấu hiệu Detection engine sẽ lấy dữ liệu từ preprocessors và kiểm tra chúng thông qua các luật Nếu các luật đó khớp với dữ liệu trong gói tin, nó sẽ được gửi tới hệ thống cảnh báo, nếu không nó sẽ bị bỏ qua như hình phía dưới

Các luật có thể được chia thành 2 phần:

Trang 29

 Phần Hearder: gồm các hành động (log/ alert), loại giao thức (TCP,

UDP, ICMP ), địa chỉ IP nguồn, địa chỉ IP đích và port

 Phần Options: là phần nội dung của gói tin được tạo ra để phù hợp với luật.

Luật là phần quan trọng mà bất cứ ai tìm hiểu về Suricata cần phải nắm rõ Các luật trong Sricata có một cú pháp cụ thể Cú pháp này có thể liên quan đến giao thức, nội dung, chiều dài, hearder và một vài thông số khác Một khi hiể u được cấu trúc các luật trong Suricata, người quản trị có thể dễ dàng tinh chỉnh và tối ưu hóa chức năng phát hiện xâm nhập của Suricata Từ đó có thể định nghĩa các luật phù hợp với từng môi trường và hệ thống mạng

Hình 2.4: Gói tin được xử lý ở Detection Engine bằng các luật

2.2.4 Thành phần cảnh báo/logging

Cuối cùng sau khi các luật đã phù hợp với dữ liệu, chúng sẽ được chuyển tới thành phần cảnh báo và ghi lại (alert and loggin component) Cơ chế log sẽ lưu trữ các gói tin đã kích hoạt, các luật còn cơ chế cảnh báo sẽ thông báo các phân tích

bị thất bại

Giống như Preprocessors, chức năng này được cấu hình trong tập tin suricata.yaml,

có thể chỉ định cảnh báo và ghi lại trong tập tin cấu hình nếu muốn kích hoạt

Dữ liệu là giá trị cảnh báo, nhưng có thể chọn nhiều cách để gửi các cảnh báo này cũng như chỉ định nơi ghi lại các gói tin Có thể gửi cảnh báo thông qua SMB (Server

29

Trang 30

Message Block) pop- up tới máy trạm Windows, ghi chúng dưới dạng logfile, gửi qua mạng thông qua UNIX socket hoặc thông qua giao thức SNMP

Cảnh báo cũng có thể lưu trữ dưới dạng cơ sở dữ liệu SQL như MySQL hoặc PostgerSQL Thậm chí một vài hệ thống của các hãng thứ ba có thể gửi cảnh báo thông qua SMS tới điện thoại di động

Có rất nhiều các add-on giúp người quản trị nhận các cảnh báo cũng như phân tích các dữ liệu một cách trực quan

 Oinkmaster: là một Pertscript giúp cập nhật các luật của Suricata và

comment nếu không muốn sau mỗi lần cập nhật

 Register the Unit tests for the HTTP protocol

 Print the stats of the HTTP requests (In các số liệu thống kê của các yêu cầu HTTP)

Trang 31

 Clears the HTTP server configuration memory used by HTP library (Xóa

bộ nhớ cấu hình máy chủ HTTP được sử dụng bởi thư viện HTTP)

 Function callback to append chunks for Requests (chức năng gọi lại để thêm các đoạn dữ liệu cho các yêu cầu)

 Print the information and chunks of a Body (In thông tin các đoạn dữ liệu của một khối)

 Free the information held in the request body (cố định (giữ) các thông tin

tự do trong các khối yêu cầu)

 Function to frees the HTTP state memory and also frees the HTTP connection parser memory which was used by the HTP library (giải phóng bộ nhớ HTTP và giải phóng các kết nối phân tích cú pháp HTTP được sử dụng bởi các thư viện HTTP)

 Sets a flag that informs the HTP app layer that some module in the engine needs the http request body data (Thiết lập cờ thông báo cho lớp ứng dụng HTTP

là một số module trong cơ cấu cần khối dữ liệu http request)

 Sets a flag that informs the HTP app layer that some module in the engine needs the http request file ( Thiết lập cờ thông báo cho lớp ứng dụng HTTP rằng một số module trong cơ cấu cần tập tin http request)

2.3.2 Packet decoding

 Return a malloced packet (trả về gói tin malloced)

 Finalize decoding of a packet (Hoàn thành giải mã gói tin)

 Get a malloced packet (Nhận gói tin malloced)

 Return a packet to where it was allocated (trả về gói tin tới nơi nó được phân bổ)

 Get a packet (We try to get a packet from the packetpool first, but if that

is empty we alloc a packet that is free'd again after processing)

 Copy data to Packet payload at given offset (Copy dữ liệu tới các khoảng trống đã xác định của gói dữ liệu)

 Copy data to Packet payload and set packet length (Sao chép dữ liệu tới gói dữ liệu và thiết lập chiều dài của gói)

 Set up a pseudo packet (tunnel) (Thiết lập gói tin giả)

 Setup a pseudo packet (reassembled frags) -> mức độ đệ quy ít hơn so với (tunnel)

31

Trang 32

 Inform defrag "parent" that a pseudo packet is now assosiated to it

 Debug print function for printing addresses (gỡ lỗi in cho các địa chỉ in ấn)

 Alloc and setup DecodeThreadVars

 Set data for Packet and set length when zero copy is used (Đặt dữ liệu cho gói dữ liệu và thiết lập chiều dài cho gói khi không sao chép)

2.3.3 State support

 Frees a DetectEngineState object

 Check if we need to inspect this state (Kiểm tra nếu cần kiểm tra trạng thái)

 Match app layer sig list against app state and store relevant match information

 Continue DeState detection of the signatures stored in the state

 Update flow's inspection id's (Kiểm tra cập nhật dòng chảy các id)

 Reset a DetectEngineState state

 Reset de state for active tx' To be used on detect engine reload

 Get string for match enum

2.3.4 Thresholding (ngưỡng cảnh báo)

Tính năng này được sử dụng để giảm số lượng cảnh báo sai quy định Nó có thể được điều chỉnh để giảm đáng kể số lượng cảnh báo sai, và cũng có thể được

sử dụng để sinh ra các quy tắc mới Các lệnh cảnh báo giới hạn số lần một sự kiện

cụ thể trong một khoảng thời gian xác định

 Return next DetectThresholdData for signature

 Remove timeout threshold hash elements

 Make the threshold logic for signatures

 Init threshold context hash tables (Ngưỡng bối cảnh dữ liệu hỏng khởi tạo)

 Destroy threshold context hash tables (ngưỡng huỷ bỏ bối cảnh dữ liệu hỏng)

 This function will free all the entries of a list DetectTagDataEntry (giải

Trang 33

phóng tất cả các lối vào của list DetectTagDataEntry)

2.4 Luật trong Suricata

2.4.1 Giới thiệu

“Luật” trong Suricata ta có thể hiểu một cách đơn giản nó giống như các quy tắc và luật lệ trong thế giới thực Nghĩa là nó sẽ có phần mô tả một trạng thái và hành động gì sẽ xảy ra khi trạng thái đó đúng Một trong những điểm đáng giá nhất của Suricata đó là khả năng cho phép người sử dụng có thể tự viết các luật của riêng mình hoặc tùy biến các luật có sẵn cho phù hợp với hệ thống mạng của mình Ngoài một cơ sở dữ liệu lớn mà người sử dụng có thể download từ trang chủ của Suricata, người quản trị có thể tự phát triển các luật cho hệ thống của mình Thay vì phải phụ thuộc vào nhà cung cấp, một cơ quan bên ngoài, hoặc phải cập nhật khi có một cuộc tấn công mới hay một phương pháp khai thác lỗ hổng mới được phát hiện Người quản trị có thể viết riêng một luật dành cho hệ thống của mình khi nhìn thấy các lưu lượng mạng bất thường và so sánh với bộ luật được cộng đồng phát triển Ưu điểm của việc tự viết các luật là có thể tùy biến và cập nhật một cách cực kỳ nhanh chóng khi hệ thống mạng có sự bất thường

Để biết cách viết một luật từ các dữ liệu của hệ thống ta cần phải hiểu cấu trúc của luật trong Suricata như thế nào Một luật trong Suricata được chia thành hai phần đó là phần rule header và rule options Phần rule header bao gồm: rule action, protocol, địa chỉ ip nguồn, địa chỉ ip đích, subnetmask, port nguồn, port đích Phần options bao gồm các thông điệp cảnh báo, thông tin các phần của gói tin sẽ được kiểm tra để xác định xem hành động nào sẽ được áp dụng

33

Trang 34

4 hành động mặc định trong Suricata đó là: pass (cho qua), drop (chặn gói tin), reject, alert (cảnh báo)

 Pass: nếu signature được so sánh trùng khớp và chỉ ra là pass thì

Suricata sẽ thực hiện dừng quét gói tin và bỏ qua tất cả các luật phía sau đối với gói tin này

 Drop: nếu chương trình tìm thấy một signature hợp lệ và nó chỉ ra là

drop thì gói tin đó sẽ bị hủy bỏ và dừng truyền ngay lập tức, khi đó gói tin không thể đến được nơi nhận

 Reject: là hành động bỏ qua gói tin, bỏ qua ở cả bên nhận và bên gửi

Suricata sẽ tạo ra một cảnh báo với gói tin này

 Alert: nếu signature được so sánh là hợp lệ và có chứa một alert thì

gói tin đó sẽ được xử lý giống như với một gói tin không hợp lệ Suricata sẽ tạo ra một cảnh báo



Trang 35

2.4.2.2 Protocol

Trường tiếp theo trong luật đó là protocol Các giao thức mà Suricata hiện đang phân tích các hành vi bất thường đó là TLS, SSH, SMTP (tải thư điện tử qua mạng internet), IMAP (đặt sự kiểm soát email trên mail server), MSN, SMB (chia

sẻ file), TCP, UDP, ICMP và IP, DNS

2.4.2.3 IP Address

Mục tiếp theo của phần header đó là địa chỉ IP Các địa chỉ này dùng để kiểm tra nơi đi và nơi đến của một gói tin Địa chỉ ip đó có thể là địa chỉ của một máy đơn hoặc cũng có thể là địa chỉ của một lớp mạng Từ khóa “any” được sử dụng để định nghĩa một địa chỉ bất kỳ

Một địa chỉ ip sẽ được viết dưới dạng ip_address/netmask Điều này có nghĩa là nếu netmask là /24 thì lớp mạng đó là lớp mạng C, /16 là lớp mạng B hoặc /32 là chỉ một máy đơn Ví dụ: địa c hỉ 192.168.1.0/24 có nghĩa là một dải máy có địa chỉ IP từ 192.168.1.1-192.168.1.255

Trong hai địa chỉ IP trong một luật Suricata thì sẽ có một địa chỉ IP nguồn và một địa chỉ IP đích Việc xác định đâu là địa chỉ nguồn, đâu là địa chỉ đích phụ thuộc vào “→”

Ngoài ra toán tử phủ định có thể được áp dụng cho việc định địa chỉ IP Có nghĩa là khi sử dụng toán tử này thì Suricata sẽ bỏ qua việc kiểm tra địa chỉ của gói tin đó Toán tử đó là “!” Ngoài ra ta có thể định nghĩa một danh sách các địa chỉ

IP bằng cách viết liên tiếp chúng cách nhau bởi một dấu “,”

Ví dụ:

Alert TCP any any → ![192.168.1.0/24, 172.16.0.0/16] 80 (msg: “Access”) 2.4.2.4 Port

Port có thể được định nghĩa bằng nhiều cách Với từ khóa “any” giống như

địa chỉ IP để chỉ có thể sử dụng bất kỳ port nào Gán một port cố định, ví dụ như gán kiểm tra ở port 80 http hoặc port 22 ssh Ngoài ra ta cũng có thể sử dụng toán

tử phủ định để bỏ qua một port nào đó hoặc liệt kê một dải các port

Trang 36

2.4.2.5 Điều hướng

Toán tử hướng “→” chỉ ra đâu là hướng nguồn, đâu là hướng đích Phần địa chỉ IP và port ở phía bên trái của toán tử được coi như là địa chỉ nguồn và port nguồn, phần bên phải được coi như địa chỉ đích và port đích Ngoài ra còn có toán

tử “<>” Suricata sẽ xem cặp địa chỉ/port nguồn và đích là như nhau Nghĩa là nó sẽ ghi/phân tích ở cả hai phía của cuộc hội thoại

Có 4 loại rule options chính bao gồm:

- General: Tùy chọn này cung cấp thông tin về luật đó nhưng không có bất

cứ ảnh hưởng nào trong quá trình phát hiện

- Payload: Tùy chọn liên quan đến phần tải trong một gói tin.

- Non-payload: Bao gồm các tùy chọn không liên quan đến phần tải của gói

tin (header)

- Post-detection: Các tùy chọn này sẽ gây ra những quy tắc cụ thể sau khi

một luật đã được kích hoạt

2.4.3.1 General

 Msg

Msg (Message): được dùng để cho biết thêm thông tin về từng signature

và các cảnh báo Phần đầu tiên sẽ cho biết tên tập tin của signature và phần này quy ước là phải viết bằng chữ in hoa Định dạng của msg như sau:

msg: “ ”;

Trang 37

rev:123;

 Reference

Reference: cung cấp cho ta địa chỉ đến được những nơi chứa các thông tin đầy đủ về signature Các tham chiếu có thể xuất hiện nhiều lần trong một signature Ví dụ về một tham chiếu như sau:

reference: url, www.info.nl

37

Ngày đăng: 08/12/2016, 20:03

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Ái Việt, Ngô Doãn Lập, “ Application of SDN in the Information Security Protection for the IDC and the Cloud Computing Infrastructure”, GISATS 2014 Sách, tạp chí
Tiêu đề: Application of SDN in the Information Security Protection for the IDC and the Cloud Computing Infrastructure
[2] By Eric Geier, Intro to Next Generation Firewalls, 06 September, 2011 Khác
[3] John Pescatore, Greg Young, Defining the Next-Generation Firewall, Gartner RAS Core Research Note G00171540, 12 October 2009 Khác
[4] By Patrick Sweeney, Next-generation firewalls: Security without compromising performance, 17 October 2012 Khác
[5] By Eric Geier, Intro to Next Generation Firewalls, 06 September, 2011 Khác
[6] A History and Survey of Network Firewalls, Retrieved 2011-11-25 Khác
[7] By Lawrence C.Miller, Firewall for Dummies, CISSP Khác
[11] New Open Source Intrusion Detector Suricata Released, Slashdot 2009-12- 31, Retrieved 2011-11-08 Khác
[12] Suricata Downloads, Open Security Information Foundation, Retrieved 2011-11- 08 Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w