TÌM HIỂU VÀ XÂY DỰNG HỆ THỐNG PHÒNG CHỐNG VÀ PHÁT HIỆN XÂM NHẬP SỬ DỤNG
SNORT/SNORTSAM
SV: Nguyễn Văn Quang
GVHD: Th.S Nguyễn Đăng Quang
Trường ĐH Sư Phạm Kỹ Thuật Tp. Hồ Chí Minh Khoa Đào tạo Chất lượng cao
Nội dung
2
Giới thiệu về IDS
Snort/SnortSam
Luật của Snort
Demo
Kết quả
Mục tiêu đề tài
3
Nghiên cứu về hệ thống phát hiện xâm nhập, đặc điểm,
kiến trúc, kỹ thuật phát hiện xâm nhập.
Nghiên cứu về Snort/SnortSam, cài đặt, cấu hình, triển
khai trong hệ thống mạng.
Phân tích các dấu hiệu tấn công, hình thành các luật
tương ứng.
Demo trên mô hình ảo.
Giới thiệu về IDS
4
Giới thiệu về IDS
“Xâm nhập” là hành động truy cập
trái phép bằng cách vượt qua cơ
chế bảo mật của hệ thống.
5
Giới thiệu về IDS
“Xâm nhập” là hành động truy cập
trái phép bằng cách vượt qua cơ
chế bảo mật của hệ thống.
“Xâm nhập máy tính” là hành động
cố tình truy cập mặc dù không
được phép hoặc tìm cách vượt qua
quyền đã có để truy xuất các tài
nguyên không được phép.
6
Giới thiệu về IDS
7
IDS
Giám sát/theo
dõi
Xác định Báo cáo
8
Giới thiệu về IDS
9
Giới thiệu về IDS
Phân loại IDS
10
Network-based IDS
Snort
Suricata
Cisco, Juniper, Lactien JSC
Host-based IDS
Tripwire
Symantec HIDS
OSSEC
Network-based IDS
11
Host-based IDS
12
Kỹ thuật phát hiện xâm nhập
13
Phát hiện dựa trên sự bất thường.
Phát hiện dựa trên dấu hiệu.
Anomaly Based ID
14
Là kỹ thuật phát hiện ra các mẫu hành vì khác xa với
các hành vi thông thường, sau đó gắn cờ xâm nhập đối
với hành vi này.
Anomaly Based ID
15
Là kỹ thuật phát hiện ra các mẫu hành vì khác xa với
các hành vi thông thường, sau đó gắn cờ xâm nhập đối
với hành vi này.
Ví dụ:
× Không tuân theo các chuẩn Internet thông thường như gửi một gói tin
ICMP có kích thước vượt quá 65.535 bytes.
× Đăng nhập quá số lần quy định, số lượng gói tin gởi đến vượt mực quy
định trong một khoảng thời gian.
Anomaly Based ID
16
Ưu điểm:
Phát hiện được các cuộc tấn công chưa được biết đến.
Cung cấp các thông tin để xây dựng các dấu hiệu.
Anomaly Based ID
17
Nhược điểm:
Có thể tạo ra số lượng lớn các cảnh báo sai.
Cần phải được đào tạo thường xuyên.
Ưu điểm:
Phát hiện được các cuộc tấn công chưa được biết đến.
Cung cấp các thông tin để xây dựng các dấu hiệu.
Misuse/Signature Base ID
18
Là kỹ thuật so sánh dấu hiệu của các đối tượng đang
quan sát với dấu hiệu của các hình thức xâm nhập đã
biết trước.
Ưu điểm:
× Ít báo sai và hiểu quả đối với các hình thức xâm nhập đã được biết
trước.
× Nhanh chóng và đáng tin cậy trong việc xác định công cụ và kỹ thuật
xâm nhập.
Misuse/Signature Base ID
19
Nhược điểm:
× Thường xuyên cập nhật các dấu hiệu nhận biết các
cuộc tấn công.
× Các dấu hiệu cần phải được thiết kế một cách chặt
chẽ nếu không thể phát hiện được các cuộc tấn
công biến thể.
Snort/SnortSam
20
Kiến trúc của Snort
21
Pack
et S
trea
m
Packet Capture
Snort
Packet Decoder
Preprocessors
Detection Engine
Output
Packet Decoder
22
Một gói tin đi vào
Packet
Ethernet Header
IP Header
Payload TCP
Header
Giải mã cấu trúc của gói tin
Preprocessors
23
Cung cấp 2 chức năng chính là:
× Bình thường hóa các giao thức giúp trình bày dữ liệu theo các
định dạng chuẩn.
× Tái hợp (reassembly) các gói tin.
Ví dụ
GET %2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%65%74%63%2f%70%61%73%73%77%64
HTTP /1.1
GET /../../../../etc/passwd HTTP
/1.1
Detection Engine
24
Detection Engine sẽ kiểm tra các gói tin từ Preprocessors
thông qua các luật (rule), nếu không phù hợp gói tin sẽ bị
bỏ đi, nếu phù hợp sẽ được xử lý tiếp.
Detection Engine Rule Phù
hợp
?
Không
Có
Gửi tới phần cảnh báo và logging
Output (alert/logging)
25
Thành phần này giúp định dạng và trình bày đầu ra cho
người quản trị hệ thống.
Phần logging có nhiệm vụ lưu trữ các gói tin đã được kích
hoạt.
Các cảnh báo và log có thể được gửi thông qua SMB pop-
up, UNIX socket, SNMP hoặc lưu trữ xuống MySQL,
PostgerSQL.
Output
26
Ngoài ra còn có rất nhiều các add-on khác cung cấp
việc nhận và phân tích các dữ liệu một cách trực
quan thông qua web interface.
× BASE
× Snorby
× SGUIL
Output
27
SnortSam
28
Là một plugin giúp chủ động ngăn chặn các cuộc tấn công.
Hỗ trợ nhiều loại firewall khác nhau:
× iptables
× pfsense
× Microsoft ISA Server
× Cisco, Juniper firewall
SnortSam
29
Snort Output Plugin (alert_fwsam): Module này sẽ được
kích hoạt sau khi một luật trong Snort được kích hoạt. Làm
nhiệm vụ giao tiếp và gửi thông tin đến Agent.
Blocking Agent: Giao tiếp trực tiếp với firewall, nhận một
thông điệp từ phần alert_fwsam và yêu cầu firewall chặn
các địa chỉ theo yêu cầu.
Luật (rule)
30
Ví dụ:
Nếu có người cố gắng mở cửa ô tô, thì còi xe sẽ hú.
Cấu trúc:
Rule Header Rule Option
Rule Header
31
Rule Action
x Alert
x Log
x Pass
x Drop
x sdrop
Protocol (IP, ICMP, UDP, TCP)
Source/Destination IP
Port
Điều hướng
Rule Header
32
Rule Action
x Alert
x Log
x Pass
x Drop
x sdrop
Protocol (IP, ICMP, UDP, TCP)
Source/Destination IP
Port
Điều hướng
Rule Options
33
Là trung tâm của việc phát hiện, chứa các dấu
hiệu để phát hiện xâm nhập.
Gồm 4 loại:
× General
× Payload
× Non-Payload
× Post-detection
Rule Options
34
msg
sid
rev
classtype
priority
nocase
content
within
distance
offset pcre
depth
sameip
General Payload
Rule Options
35
ttl
tos
id
fragbits
dsize
flag flow
sed ack
itype
icode logto
session
resp
react
tag
detection_filter
Non-payload Post-detection
Ví dụ
36
alert tcp $EXTERNAL_NET any -> $HTTP_SERVERS
$HTTP_PORTS (flags: PA; msg:"POST Null hex -
Flash attack ABC"; flow:to_server; content:
"|50 4F 53 54|"; content:"|78 2D 66 6C 61 73
68|"; offset:30; depth:80;
classtype:attempted-NullDataPOST;
resp:rst_all; resp:rst_all; resp:rst_all;
react:block;)
Thực tế
37
Demo
38
Scan Port
SQL Injection
Apache Killer
Ping of Death
MS12-020
Mô hình xử lý
39
Kết quả đạt được
40
Hiểu về các phương pháp phát hiện xâm nhập.
Hiểu về cấu trúc và cách xử lý các gói tin trên mạng của
Snort/SnortSam.
Cấu trúc luật, cách thức viết các luật đối với từng trường
hợp cụ thể. Phân tích được một số dạng tấn công và luật
kèm theo.
Cài đặt, triển khai, demo trên mô hình ảo.
Hạn chế
41
Chưa có điều kiện triển khai trong mô hình thật, kiện
toàn hệ thống với các ứng dụng khác.
Chưa xây dựng được chức năng phát hiện xâm nhập dựa
vào các tiền xử lí.
Chưa cấu hình đầy đủ các luật của iptables và chưa demo
được các dạng tấn công nội bộ như ARP Spoofing.
Hướng phát triển
42
Kết hợp với các giải pháp nguồn mở khác như iptables,
mod_security, Nagios hay ZenOSS…Xây dựng một hệ
thống bảo mật bằng các phần mềm nguồn mở.
Xây dựng riêng một máy trạm phục vụ cho việc phân
tích log của toàn hệ thống và của Snort thông qua 2
công cụ thương mại là Splunk hoặc Aanval SAS™.
Hướng phát triển
43
Hướng phát triển
44
45
46