Professional Documents
Culture Documents
BC Snort
BC Snort
SNORT
1.Các thành phần của Snort
Cấu trúc của Snort gồm có bốn thành phần chính (Hình 3.1):
Khi Snort hoạt động, nó sẽ lắng nghe 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 sẽ được giải mã. Tiếp theo sẽ đưa vào mô đun tiền xử lý và rồi mô
đun phát hiện. Tại đây gói tin đó được so sánh với tập luật (rulesets). Nếu khớp với
luật nào đó thì sẽ đưa vào mô đun kết xuất thông tin theo đúng định dạng mong
muốn.
- Kết hợp lại các gói tin: Khi một dữ liệu lớn được gửi đi, thông tin sẽ không đóng gói
toàn bộ vào một gói tin mà thực hiện phân mảnh, chia thành nhiều gói tin rồi mới gửi đi.
Khi Snort nhận được các gói tin này, nó phải thực hiện kết nối lại để có gói tin ban đầu. Mô
đun tiền xử lý giúp Snort có thể hiểu được các phiên làm việc khác nhau.
Packets
Mô đun phát hiện có khả năng tách các của gói tin ra và Detection
Logging/Alert
Engine
áp dụng luật lên từng phần của gói tin:
IP header Packets
Discard
1.Các thành phần của Snort
Giao thức HTTP định nghĩa một tập các phương thức request, client có thể sử dụng một
trong ác phương thức này để tạo request tới HTTP server, dưới đây liệt kê một số phương
thức phổ biến.
GET Được sử dụng để lấy lại thông tin từ server một tài nguyên xác
định
POST Yêu cầu máy chủ chấp nhận thực thể được đính kèm trong
request được xác định bởi URI (Uniform Resource Identifier),
ví dụ thông tin của khách hàng, file tải lên, …
PUT Nếu URI đề cập đến một tài nguyên đã có, nó sẽ bị sửa đổi, nếu
URI không trỏ đến một tài nguyên hiện có, thì máy chủ có thể
tạo ra tài nguyên với URI đó
DELETE Xóa bỏ tất cả các đại diện của tài nguyên được chỉ bởi URI
3.Chế độ hoạt động và cấu trúc tập lệnh Rule của Snort
Cấu trúc của một Snort Rule gồm hai phần: Rule Header và Rule Option.
- Rule Header:Đây là phần xác định Rules sẽ làm gì (Actions), giao thức (Protocol), địa
chỉ IP nguồn và đích, netmask, port nguồn và đích của rule, xác định xem rule áp dụng gói tin
gì, của ai, ở đâu, và hành động gì cần thực hiện khi nhận được gói tin đáp ứng điều kiện đó.
3.Chế độ hoạt động và cấu trúc tập lệnh Rule của Snort
Action:
Có 5 action mặc định trong Snort là alert, log, pass, activate, và dynamic.
• alert – Tạo ra một cảnh báo bằng cách sử dụng phương pháp cảnh báo đã được chọn và ghi
chép gói tin.
• log – Ghi chép gói tin vào cơ sở dữ liệu.
• pass – Bỏ qua gói tin, góp phần tăng tốc độ của Snort khi không cần áp dụng các kiểm tra lên
một số gói tin nhất định.
• activate – Cảnh báo và sau đó bật một rule dynamic khác để kiểm tra thêm điều kiện. Activate
được sử dụng khi ta cần kiểm tra thêm một hay các gói tin nhận được. Dynamic rule được sử
dụng kèm với activate.
• dynamic – Không làm gì cho đến khi được kích hoạt bởi một rule activate, sau đó hoạt động
như một rule log (ghi chép). Chỉ có thể được kích hoạt bằng rule activate.
Nếu chạy ở mode inline, Snort có thêm các action như drop, reject và sdrop.
• drop – Block và ghi chép gói tin.
• reject – Block và ghi chép gói tin, gửi TCP reset nếu giao thức là TCP và gửi ICMP port
unreachable nếu giao thức là ICMP.
• sdrop – Block gói tin nhưng không ghi chép về nó.
3.Chế độ hoạt động và cấu trúc tập lệnh Rule của Snort
Protocol: xác định loại giao thức mạng (định dạng gói tin UDP, TCP, ICMP, IP, ARP, …)
IP Address: xác định địa chỉ mạng ngoại vi và nội bộ.
Port: cổng ra tại mạng ngoại vi và cổng vào của gói tin tại mạng nội bộ.
Direction (hướng): trong rule xác định hướng của traffic mà rule được áp dụng.
Có 2 toán tử hướng:
• ->: địa chỉ IP và port nằm bên trái toán tử được xem là nguồn của traffic, còn bên phải là
đích của traffic.
• <> : toán tử 2 hướng, giống như -> nhưng hoạt động 2 chiều, yêu cầu Snort xem xét các cặp
địa chỉ IP và port ở cả 2 hướng nguồn và đích, thường được sử dụng để theo dõi hay phân
tích cả 2 bên của cuộc hội thoại.
Ví dụ một số rule header:
• alert tcp !192.168.1.0/24 any -> 192.168.1.0/24 111
• log tcp !192.168.1.0/24 any <> 192.168.1.0/24 23
3.Chế độ hoạt động và cấu trúc tập lệnh Rule của Snort
Rule Options
Rule options theo sau Rule header và nằm trong một dấu ngoặc đơn. Một rule có thể có
một hoặc nhiều option và các option cách nhau bởi dấu chấm phẩy (;). Nhiều option được
sử dụng tương tự như việc sử dụng phép AND chúng với nhau. Action được định nghĩa
trong rule chỉ được thực thi khi tất cả điều kiện trong phần options được thỏa.
Rule options thường gồm 2 phần: từ khóa (keyword) và tham số được phân cách với nhau
bằng dấu hai chấm (:).
Reflected XSS: Cách tấn công này chiếm phiên làm việc (session) của người dùng, từ đó
có thể truy cập được dữ liệu và chiếm được quyền của họ trên website
4.Demo viết rule phát hiện và ngặn chặn tấn công XSS
+ Chạy snort: