Lệnh snort –vd ix

Một phần của tài liệu Khóa luận tốt nghiệp: XÂY DỰNG PHƯƠNG THỨC GIÁM SÁT, GHI NHẬN SỰ KIỆN VÀ ĐÁNH GIÁ HIỆU NĂNG CHO HỆ THỐNG docx (Trang 85)

Với tùy chọn cờ -e, ta được cung cấp nhiều thông tin nhất ,bao gồm địa chỉ

MAC và địa chỉ IP

Để lưu lại trong file log thay vì xuất ra console, ta sử dụng

snort -vde -i1 > C:/log1/temp.log

10.3.2 Snort là một Packet Logger

Sau khi Sniffer các gói tin, nhiệm vụ tiếp theo là ghi log. Việc ghi log chỉ đơn giản bằng cách thêm tùy chọn –l, theo sau đó là thư mục muốn lưu trữ file log. Thư mục mặc định trong Snort là C:\snort\log. Ta có thể thiết lập thư

mục log ở nơi khác. Ví dụ: snort –l C:\log1.

Khi chạy chế độ này, Snort thu thập mỗi gói tin nó thấy và lưu chúng

vào thư mục log theo kiểu phân cấp. Snort lưu các gói tin thành các file ASCII,

với tên file được tạo ra từ giao thức và số cổng.

10.3.3 Snort là một NIDS

Khi cài đặt ở chế độ Snort mặc định trên Win, vị trí file này là

C:\snort\etc\snort.conf. Các cảnh báo được đặt trong file alert trong thư mục log C:\snort\log. Snort sẽ thoát ra với một lỗi nếu file cấu hình hoặc thư mục log khơng tồn tại. Khi sử dụng chế độ này cần chỉ rõ file cấu hình với cờ –c .

“snort -c c:\snort\etc\snort.conf -l c:\snort\log”

Dịng lệnh trên mặc định các thơng tin sniffer sẽ được ghi vào file alerts và sẽ tạo ra một file snort.log theo kiểu phân cấp. Nếu gói tin so trùng với một rule thì sự ghị nhận hoặc cảnh báo được tạo ra. Ngược lại, nếu gói tin khơng trùng với một rule thì khơng cảnh bảo nào tạo ra.

“snort -c c:\snort\etc\snort.conf -l c:\snort\log -A console”

Dùng lệnh này không ghi vào file alerts, nhưng sẽ tạo ra một file snort.log theo kiểu phân cáp. Với cờ -A là thiết lập chế độ cảnh báo, “console” là ở giao diện điều khiển. Bình thường trên giao diện ở cmd sẽ không hiện các sniffer, nhưng khi dùng

10.4 Khái quát về Rules

Snort là một hệ thống NIDS hoạt động dựa trên các tập luật (rules). Trong Snort rules có chứa những dấu hiệu thông thường để nhận biết các hoạt động bên trong và ngồi mạng.

Khi Snort hoạt động, nó sẽ đọc các tập luật được xây dựng sẵn và phải được cập nhật thường xuyên. Mỗi luật đại diện cho một cuộc tấn cơng.

Ví dụ: tập luật có thể được tạo ra để giám sát các nỗ lực quyét cổng, tìm dấu vết (các dấu hiệu cịn gọi là signature-base). Khi có một packet đến hệ thống nó sẽ

được áp vào tập luật, nếu có sự so trùng Snort sẽ phản ứng.

10.4.1 Cấu trúc của một rule

Tất cả các rule đều có 2 phần: header và options

Hình 63. Cấu trúc của một rule

Ví dụ rule mẫu:

Phần header chứa thơng tin hoạt động mà rule sẽ làm. Đồng thời header cũng chứa tiêu chuẩn cho việc so sánh một luật dựa vào gói tin. Phần options chứa thơng

điệp cảnh báo và thông tin về thông điệp sẽ được sử dụng để tạo ra cảnh báo. Phần

option cũng chứa tiêu chuẩn cho việc so sánh một luật dựa vào gói tin. Một rule có thể phát hiện một kiểu hay nhiều kiểu xâm nhập.

10.4.2 Cấu trúc của phần Header

Hình 65. Cấu trúc phần Header

- Action: là loại hành động của Snort khi tiêu chuẩn phát hiện và có sự so sánh

chính xác của một rule so với một gói tin. Những hoạt động điển hình là tạo một cảnh báo hoặc ghi thơng điệp. Có 5 loại action:

Action Mơ tả

Alert Tạo cảnh báo và ghi file log Log Ghi log các gói tin

Pass Bỏ qua các gói tin

Activate Tạo cảnh báo và tự bật chức năng dynamic rule

Dynamic Hoạt động như một log rule khi được kích hoạt bởi active rule - Protocol: là giao thức được dùng để áp dụng vào rule. Các giao thức có thể là

tcp, udp, icmp và IP.

- Address: trong phần header có hai trường địa chỉ, gồm địa chỉ nguồn và địa

chỉ đích được xác định dựa trên trường Direction.

- Direction: giúp phân biệt địa chỉ nguồn và địa chỉ đích. Ví dụ với trường

Direction là “” thì địa chỉ phía bên trái là nguồn, địa chỉ phía bên phải là

đích. Trường hợp muốn áp dụng snort theo cả 2 chiều thì sử dụng cú pháp “

Ví dụ ghi log 2 chiều:

Log tcp 192.168.1.0/24 any <> 172.16.0.0/24

- Port: Trong giao thức TCP hay UDP, Port xác định cổng nguồn và cổng đích

của gói tin khi rule áp dụng lên đó. Trong trường hợp giao thức lớp mạng như IP hay ICMP, thì giá trị port numbers khơng có ý nghĩa.

Ví dụ: Phân tích phần header của một rule

alert tcp any any -> any 80 (content: "yahoo"; msg: "Yahoo Site Access";)

Hành động ở đây là “alert”, khi các TCP trafic từ bất kỳ địa chỉ IP và port được

gởi đến một địa chỉ IP bất kỳ trên Port 80 mà phần nội dung có chứa từ khóa yahoo. Nếu tình huống này xảy ra, nghĩa là có một user nào đó trên LAN truy cập vào 1 site có chứa từ yahoo thì một record Yahoo Site Access sẽ được ghi vào log file.

10.4.3 Cấu trúc của phần Options

Một Snort rule có thể có nhiều option khác nhau phân cách bởi giấu “;” .Thơng thường phần Options có chứa từ khóa và một đối số. Một đối số truyền vào từ khóa bằng một dấu “:”. Ví dụ:

msg : “Phat hien xam nhap”

Ở đây, msg là từ khóa và “Phat hien xam nhap” là đối số cho từ khóa. Do có rất

nhiều từ khóa nên ta sẽ đi một vài từ khóa tiêu biểu. Phần Option có các từ khóa sẽ

10.5 Hiện thị cảnh báo

Dùng máy client truy cập web, ping hay scan port máy Snort server, thì trên BASE ghi nhận lại mọi hoạt động.

Hình 66. Base đang hoạt động

Hình 67. Thống kế dưới dạng đồ họa

Chọn Most frequent 5 Unique Alerts: xem thông tin về 5 cảnh báo xảy ra nhiều nhất. Source addres: Số lượng host tham gia

Hình 68. Thơng tin 5 cảnh báo xảy ra nhiều nhất

Thông tin máy ping

Hình 69. Thơng tin máy ping

Hoặc ta có thể biết thơng tin các IP ở ngoài mạng, vào địa chỉ source address

Hình 70. Thơng tin IP

10.6 Hiệu năng của Snort

Snort có giám sát tình trạng hiện tại của hệ điều hành. Các thông số thể hiện nhiều ý nghĩa và dựa vào đó ta có thể đốn được nhiều điều và đưa ra nhiều biện pháp

điều chỉ theo ý muốn.

Để có thể giám sát, vào file snort.conf cấu hình bật chức năng preprocessor

perfmonitor. Bộ tiền xử lý hiệu năng giám sát chỉ lấy ra một số các chọn lựa, các chọn lựa này bao gồm:

Time: 300 seconds

Flow Stats: INACTIVE

Console Mode: ACTIVE File Mode: /var/log/ snort.stats

SnortFile Mode: INACTIVE

Packet Count: 500

Ta có thể cấu hình để các dịng xuất hiện khi chạy Snort:

preprocessor perfmonitor: time 300 console file var/log/snort/snort.stats pktcnt 500

preprocessor perfmonitor : time 300 events flow file var/log/snort/snort.stats max console pktcnt 500

Hay để chế độ chạy ẩn, vào file log messages để đọc

preprocessor perfmonitor: time 300 file /var/log/snort/snort.stats pktcnt 500

Các tham số có ý nghĩa:

 Time: khoảng thời gian tính bằng giây (s) giữa các lần lấy mẫu. Nếu đặt giá trị thời gian quá thấp có thể gia tăng giả tạo giá trị. Giá trị mặc định là 300s.

 Console: Giao diện xuất ra màn hình console. Mặc định là được bật hay có thể xuất ra bằng cách kèm theo tham số file.

 File <filename>: Kết quả xuất ra file theo đường dẫn đã định. Các thống kê ghi lên file theo từng giá trị đơn lẻ, cách nhau bằng dấu phẩy “,” cho mỗi lần chạy lấy mẫu.

 Pktcnt: Số lượng packets sẽ được xử lý trong thời gian đã định. Lưu ý nếu số lượng packet bắt được ít hơn packet đã chỉ định thì sẽ khơng nhận được số liệu thống kê.

 Flow: Phát sinh một số lượng lớn các thông tin chi tiết trên các dịng lưu

thơng mạng network traffic flows (hồn thành với các thơng tin như chiều

dài gói tin cho đến số lượng gói tin mỗi dịng, dung lượng dịng mỗi port và

kiểu giao thức, các con số phân đoạn và vài thông tin khác).

 Events: Snort sẽ mở chức năng reporting và hiển thị trạng thái số lượng

signatures match. Phát sinh nhiều bộ dữ liệu đóng gói lại phản ánh số lượng các dấu hiệu đã qua, đã khớp, hay đã được chứng thực. Có 2 loại là Non- qualified events và Qualified events được xác nhận dựa trên các cờ nhận

biết. Option này đặc biệt chú trọng bất kỳ sự bất cân xứng nào giữa cái

được mong đợi và cái đang thực sự được dùng để dị tìm bởi tập rule cho trước.

 Max: Sẽ kích hoạt Snort hoạt động hết sức để nâng cao hiệu quả.

Với máy ảo có ổ cứng 8G, ram 512 MB, khi Snort hoạt động, thơng số của CPU

Hình 71 Các thơng số

CPU Usage: 0.075% (user) 0.337% (sys) 99.588% (idle)

Snort: VIRT- Virtual Image (kb): 38412 - Tổng số lượng bộ nhớ ảo được sử

dụng.

RES - Resident size (kb): 18M - Bộ nhớ vật lý được sử dụng.

SHR - Shared Mem size (kb): 2264 - Số lượng bộ nhớ chia sẻ được sử dụng bởi một nhiệm vụ.

Mỗi process trên CentOS có số lượng memory được sử dụng và biến thiên tuỳ hoàn cảnh. Hơn nữa, memory được một process sử dụng có thể là tổng hợp của shared memory, physical memory, virtual memory. Khi Snort làm việc, cần chú ý những dòng luật, luật càng nhiều thì đương nhiên chiếm ram khá nhiều và những luật mặc định không cần thiết thì nên tắt để giảm tải cho hệ thống .

Hình 72. Hiệu suất CPU khi Snort hoạt động

10.7 Mơ hình triển khai Snort

Hình 73. Triển khai IDS

Mơ hình có switch hỗ trợ port "giám sát" ("Span Port", "Port Monitoring", "Management Port"). Với tính năng này, tồn bộ traffic của các máy tính nối vào

Khi dữ liệu được truyền qua switch, đồng thời switch sẽ gửi 1 bản sảo đến Port Monitor .

Hình 74. Port Monitor

10.8 Tấn cơng trong mạng nội bộ

10.8.1 Tấn công ARP Cache

Máy Hacker sẽ giả MAC địa chỉ của Victim 1, khi Victim 2 truy cập remote

desktop vào Victim 1, Hacker sẽ thu được những gói tin từ Victim 2 gửi cho Victim 1.

Khi đó IDS sẽ báo hiệu và người quản trị có nhiệm vụ đi tìm máy Hacker.

ARP spoof preprocessor giải mã những gói tin và phát hiện những cuộc tấn

công ARP. Khi được cấu hình thơng số, preprocessor sẽ kiểm tra địa chỉ Ethernet và các địa chỉ trong gói tin ARP. Khi xảy ra hiện tượng, một cảnh báo GID 112 và SID 4 được tạo ra.

Khi “unicast” được chỉ định, preprocessor sẽ kiểm tra những yêu cầu Unicast

ARP. Một cảnh báo GID 112 và SID 1 sẽ sinh ra nếu một Unicast ARP bị phát hiện.

preprocessor arpspoof[: -unicast]

preprocessor arpspoof_detect_host: ip mac

Cấu hình trong file snort.conf preprocessor arpspoof

preprocessor arpspoof_detect_host: 192.168.100.2 00:0C:29:2E:2A:47 preprocessor arpspoof_detect_host: 192.168.100.3 00:0C:29:14:7B:2F preprocessor arpspoof_detect_host: 192.168.100.21 00:0C:29:D1:BE:1E preprocessor arpspoof_detect_host: 192.168.100.66 00:0C:29:48:20:C9 Cấu hình file log

output alert_csv: /var/log/snort/alert.csv

Chú ý: Dấu hiện nhận biết cuộc tấn công này là 1 IP phải khớp với 1 MAC, nhiệm vụ của người quản trị là phải thu nhập IP và MAC trong hệ thống.

Máy Hacker dùng chương Cain & Abel để giả MAC của 2 máy Victim để

sniffer các thông tin từ 2 máy

Hình 77. Máy Victim 2

Đồng thời lúc đó IDS sẽ cánh báo có tấn cơng ARP

Hình 78. Cảnh báo

Để thấy được địa chỉ MAC của Hacker ta vào file alert.csv

10.8.2 Tấn công SMB

- Dấu hiệu

Đây là dạng tấn công qua port 445 và đặt giá tri Process ID High là

"\x00\x26" , giá trị bình thường là "\x00\x00". - Luật

alert tcp $EXTERNAL_NET any -> $HOME_NET 445 (msg : "Tan cong SMB"; content: "|00 26|"; flow:to_server,established; content:"|53 4d 42

10.8.3 Tấn công Smurf attack

- Dấu hiệu

Đây là dạng tấn công làm ngập gói tin ICMP ECHO REPLY. Sự khác biệt lớn

giữa nó với gói tin ICMP ping “thật” là ở 2 trường: icmp_id = 0x00 và sequence

number = 0x00 (gói ping thật có id và sequence number khác 0). Ngoài ra Hacker

thường tăng kích thước payload mặc định của gói tin ping (32 byte) để nhanh

chóng làm ngập mạng victim. - Luật

alert icmp $EXTERNAL_NET any -> $HOME_NET any ( msg: “Tan cong Smurf Attack”; dsize: >32; icmp_seq:0; icmp_id:0 ; sid: 1000004; )

10.8.4 Tấn công Land attack

- Dấu hiệu

Land attack tấn công bằng cách gửi các gói tin có địa chỉ nguồn và đích giống nhau.Bằng cách dùng từ khóa sameip trong Rule option là có thể phát hiện ra.

- Luật

alert udp any any <> $HOME_NET any (msg : “Land Attack”; sameip;)

10.8.5 Tấn công Dos với HTTP Post

- Dấu hiệu

Dạng tấn công này sẽ gứi hàng loạt dữ các liệu hợp lệ đến Server sẽ xử lý làm tràn database và nghẽn hệ thống. Dùng wireshark bắt gói tin để tìm ra dầu hiệu nhận biết cuộc tấn cơng này, trong đó có đoạn “48 54 54 50 2f 31 2e 31” là thường xuyên xuất hiện.

- Luật

alert tcp $EXTERNAL_NET any -> $HOME_NET 80 (msg:"Tan cong DOS"; content:"|48 54 54 50 2f 31 2e 31 |"; flow:to_server; sid: 1000005;)

10.8.6 Một số rule cảnh báo

alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg : “Ping cao hon 100”; dsize : > 100; sid: 1000006;)

alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg : “Tan cong ping”; content: "|40 00|" ; sid: 1000009;)

 Phát hiện tấn công ping –f

10.9 Nhận xét

Snort là một IDS dùng để theo dõi những biến cố xảy ra trên tcp/ip stack do mình định ra. Với Snort hoặc bất cứ ứng dụng IDS nào cũng cần phải có một bộ luật, cịn gọi là các "signature". Snort có thể áp dụng ở các mơ hình mạng, với chi phí thấp Snort là lựa chọn cho nhiều cơng ty có quy mơ vừa và nhỏ cũng như những cơng ty có quy mơ lớn.

Ưu Điểm Nhược Điểm

- Snort ghi nhận các luồng dữ liệu từ

trong ra ngoài hay ngược lại vào file

log do mình định ra giúp người quản trị dễ giám sát dữ liệu.

- Do phát triển dựa vào mã nguồn mở nên Snort hồn tồn miễn phí. - Người quản trị có thể tự viết luật và

kết hợp với các phần mềm và phần cứng khác như: Cisco, Snortsam, Swatch,.v.v..

- Tối ưu hóa tập luật, phát triển luật tương tác với tường lửa, nâng cao Snort hoạt động như một hê thống phát hiện ngăn chặn IPS.

- Snort khơng có khả năng chống lại các cuộc tấn công.

- Do tập luật của snort được cơng khai trên mạng nên các hacker có thể tập hợp các luật để thay đổi dấu hiệu tấn cơng, từ đó có thể vượt qua giám sát của Snort.

- Tập luật cịn có nhiều khuyết điểm nên khơng thể sử dụng ngay mà cịn phải chỉnh sửa.

- Không thể cập nhập tập luật theo thời gian thực.

- IDS thường xuyên đưa ra báo động

giả ( False Positives) là gánh nặng cho quản trị hệ thống bởi nó cần được theo dõi liên tục.

11. Xây dựng hệ thống giám sát với Forefront TMG 11.1 Tìm hiểu tổng quan Forefront TMG 11.1 Tìm hiểu tổng quan Forefront TMG

Forefront TMG được ra đời dựa trên nền tảng của các tính năng nổi bật về tường lửa của ISA 2006 và bổ sung thêm vào đó các cơ chế bảo vệ an toàn tối ưu làm tăng thêm tính mạnh mẽ trong việc bảo đảm an ninh cho một hệ thống mạng.

11.1.1 Một số tính năng mới trong Forefront TMG:

- Web anti-malware: là một phần của dịch vụ bảo vệ Web cho Forefront TMG,

có thể quét virus, phần mềm độc hại và các mối đe dọa khác trên các trang web.

- URL filtering: Cho phép hoặc từ chối truy cập đến các trang web dựa trên

danh mục URL chẳng hạn như những trang web đen, những trang có nội dung không lành mạnh, đồng thời cũng bảo vệ năng suất kinh doanh bằng cách hạn

Một phần của tài liệu Khóa luận tốt nghiệp: XÂY DỰNG PHƯƠNG THỨC GIÁM SÁT, GHI NHẬN SỰ KIỆN VÀ ĐÁNH GIÁ HIỆU NĂNG CHO HỆ THỐNG docx (Trang 85)