ƯỜ Ẳ Ệ TR
Ề CHUYÊN NGÀNH: CÔNG NGH M NG VÀ TRUY N THÔNG
NG CAO Đ NG CÔNG NGH THÔNG TIN Ệ KHOA CÔNG NGH THÔNG TIN Ệ Ạ
Ứ
Ụ
Ề
Ể
Đ TÀI: NG D NG DDOS Đ KHAI THÁC THÔNG TIN
Ỳ ƯƠ GVHD Ị : PHAN TH QU NH H NG
Ơ Ị SVTH : TR NH VĂN S N
L PỚ : 14NTC
MSV : 141C920022
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Ờ Ả Ơ L I C M N
ử ờ ả ơ ế ệ ầ ầ Đ u tiên em xin g i l i c m n đ n quý th y cô khoa Công ngh thông tin tr ườ ng
ứ ệ ề ệ ế ẵ ạ ấ ẳ Cao đ ng công ngh thông tin Đà n ng đã t o đi u ki n, cung c p ki n th c cho em
ự ậ ệ ề ủ ể ự đ th c hi n đ tài c a th c t p chuyên môn.
ệ ử ờ ả ơ ế ả ị ặ Đ c bi t em xin chân thành g i l ỳ i c m n đ n gi ng viên Phan Th Qu nh
ự ậ ươ ự ệ ậ ờ ướ ỉ ả ẫ ỡ H ng trong th i gian th c hi n th c t p đã t n tình h ng d n, giúp đ , ch b o đ ể
ố ề em làm t t đ tài.
Ngày tháng năm 2017
ự ệ Sinh viên th c hi n
ị ơ Tr nh Văn S n
Tr nh V n S n – 14NTC Trang: 2 ă ơ ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Ụ Ụ M C L C
Ữ Ế Ậ Ắ CÁC THU T NG VI T T T
ệ ố ệ nh pậ IDS – Intrusion Detection System : H th ng phát hi n xâm
NIDS: Network Intrusion Detection System.
HIDS: Host Intrusion Detection System.
DIDS: Distributed Intrusion Detection System.
ư ệ ở ứ ừ ượ ộ m c tr u t ng dành cho PHP ự và Python d a trên cùng ADOdb: là m t th vi n
ệ ớ khái ni m v i ActiveX Data Objects c a ủ Microsoft.
ừ ố ị v ụ phân tán. DdoS – Distribute Denial of Service. T ch i d ch
ạ ụ b .ộ LAN – Local Area Network: m ng máy tính c c
ầ ả ộ ế ủ IDS. Sensor: B ph n c m bi n c a
ả IDS. Alert: C nh báo trong
ứ ề ể ề v n.ậ TCPTransmission Control Protocol : Giao th c đi u khi n truy n
ế ch m”.ậ Slow Scan: là ti n trình “quét
SSL – Secure Sockets Layer.
ứ ể ạ ế ậ ế ố ộ ạ t l p k t n i m ng m t cách b o ả m t.ậ SSH Secure Shell:giao th c m ng đ thi
IPSec: IP Security.
Tr nh V n S n – 14NTC Trang: 3 ă ơ ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ứ ạ ậ ị ủ v ụ bên ngoài c a m t t ộ ổ DMZ – demilitarized zone : Vùng m ng v t lý ch a các d ch
ch c.ứ
ử tâm. CPU : Central Processing Unit Đ n ơ v ị x lý trung
ộ ệ ề tính. UNIX: Unix hay UNIX là m t h đi u hành máy
ổ ứ ể ư ữ ệ ạ c ng đ l u d li u d ng web và có thể truy Host: Host là không gian trên
ậ ừ c p t xa.
Protocol: Giao th cứ
ộ ả ủ ộ i c a m t gói tin trên m ng.ạ Payload: Đ t
Attacker: K t nẻ ấ công.
ườ ố ấ ố ng dây thuê bao s b t đ i ADSL: Asymmetric Digital Subscriber Line – đ
x ng.ứ
ụ ộ ạ WLAN: Wireless Local Area – m ng c c b không dây.
ệ ố ườ ử Iptables : H th ng t ng l a trong linux.
ề ể ả ACID – Analysis Console for Intrusion Databases – B ng đi u khi n phân tích
ệ ố ệ ậ ữ ệ d li u cho h th ng phát hi n xâm nh p
ậ ộ BASE – Basic Analysis and Security Engine – B ph n phân tích gói tin
ề ầ Software: Ph n m m
ệ ề OS : Operating System : h đi u hành
ầ OSI : Open Systems Interconnection : mô hình 7 t ng OSI
Tr nh V n S n – 14NTC Trang: 4 ă ơ ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Ụ Ẽ DANH M C CÁC HÌNH V TRONG BÁO CÁO
ệ ố ấ Hình 1.2.1 C u trúc h th ng IDS
ữ ặ Hình 1.41. Đ t gi a Router và FIRewall.
ề ặ Hình 1.41. Đ t mi n DMZ
ặ Hình 1.41. Đ t gsau Firewall
ấ Hình 2.1.1 C u trúc Snort
ậ ậ ấ Hình 2.2.1 C u trúc t p lu t Snort
ặ Hình 3.1.2.1 Cài đ t Snort
ủ ạ Hình 3.1.2.2 Xem card m ng c a máy
ặ Hình 3.1.2.3 Cài đ t Snort trong Service
ậ Hình 3.1.2.1 B t Snort trong service
Trang: 5 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Ở Ầ M Đ U
1.
ọ ề Lý do ch n đ tài
ề ả ự ầ ở ổ Ngày nay internet tr thành n n t ng chính cho s trao đ i thông tin toàn c u. Có th ể
ặ ủ ờ ố ề ấ ộ th y rõ ràng là Internet đã và đang tác đ ng lên nhi u m t c a đ i s ng chúng ta t ừ ệ vi c
ạ ộ ữ ệ ế ế ổ ươ ọ ậ ạ trao đ i thông tin, tìm ki m d li u, đ n các ho t đ ng th ứ ng m i, h c t p, nghiên c u
ề ớ ự ệ ế ả ấ ờ ị ổ làm vi c tr c tuy n…Nh đó mà kho ng cách đ a lý không còn là v n đ l n, trao đ i
ở ơ ờ ế ế ậ ứ ủ ệ ở thông tin tr nên nhanh chóng h n bao gi h t, vi c ti p c n kho tri th c c a nhân tr nên
ể ơ ợ ạ ấ ớ ễ d dàng h n …Có th nói l i ích mà nó mang l i r t l n.
ư ườ ự ặ ượ Nh ng trên môi tr ng thông tin này, ngoài các m t tích c c có đ ề c, nó cũng ti m
ẩ ữ ự ặ ệ ề ả ị ấ ệ ế ấ n nh ng tiêu c c, đ c bi t là trong v n đ b o v thông tin. N u thông tin b m t mát,
ẹ ề ặ ả ử ị ẻ ấ không còn nguyên v n khi truy n đi ho c gi ỉ ả ắ s b k x u đánh c p thì nó không ch nh
ưở ế ệ ả ưở ự ế ố h ng đ n cá nhân, doanh nghi p mà đôi khi còn nh h ậ ng đ n qu c gia, khu v c th m
ả ế ớ ữ chí là c th gi i n a .
ư ự ứ ữ ệ ặ ồ ớ ố ỉ Em th c hi n đ án này v i mong mu n không ch nghiên c u nh ng đ c tr ng c ơ
ệ ậ ươ ậ ả ủ ệ ố b n c a h th ng phát hi n xâm nh p trái phép v i ớ vai trò là ph ớ ả ng pháp b o m t m i
ữ ươ ự ể ả ậ ượ ổ b sung cho nh ng ph ng pháp b o m t hi n t ệ ạ mà còn có th xây d ng đ i, ộ c m t
ể ứ ụ ề ề ệ ầ ớ ự ễ ợ ph n m m IDS phù h p v i đi u ki n th c t ự ế và có th ng d ng ằ vào th c ti n nh m
ả ự ệ ố ấ ượ ả đ m b o s an toàn cho các h th ng và ch t l ị ng d ch v ụ cho ng iườ dùng.
ụ ạ ỉ ừ ư IDS không ch là công c phân tích các gói tin trên m ng, t ế ả đó đ a ra c nh báo đ n
ữ ả ấ ị nhà qu n tr mà nó còn cung c p nh ng thông tin sau:
(cid:0) Các s ki n t n ự ệ ấ công.
(cid:0) ươ Ph ng pháp t n ấ công.
(cid:0) ồ Ngu n g c t n ố ấ công.
Trang: 6 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) ấ D u hi u t n ệ ấ công.
ạ ở ị ạ ả ọ Lo i thông tin này ngày càng tr ố nên quan tr ng khi các nhà qu n tr m ng mu n
ế ế ệ ươ ộ ổ ả ậ ợ ộ ứ thi ự t k và th c hi n ch ng trình b o m t thích h p cho m t cho m t t ch c riêng
bi t.ệ
ể ề ể ấ ạ 2. Tìm hi u v các ki u t n công m ng
ể ấ 2.1 T n công ki u thăm dò
Thăm dò là việc thu thập dữ liệu trái phép về tài nguyên, các lổ hỗng hoặc dịch
vụ của hệ thống. Các cách tấn công truy cập hay DoS thường được tiến hành bởi
kiểu tấn công thăm dò để tìm hiểu sơ lược về những thông tin bảo mật của một tổ
chức, doanh nghiệp hay công ty nào đó. Kẻ tấn công sử d nụ g k tỹ huật này để khám
phá h ệ thống mục tiêu đang chạy trên hệ điều hành nào, các dịch vụ và các c nổ g
nào đang được mở, đ aị chỉ IP, kiến trúc hệ thống mạng...nhằm đưa ra những hình
thức thâm nhập hợp lý. Thăm dò và thu thập thông tin còn là cách duy nhất để biết
được các kiểu kết nối, như Internet, Intranet, Wireless… và các cấu trúc hệ thống
đang được mục tiêu sử dụng.
ể ấ ậ 2.2 T n công ki u truy c p
Tấn công truy cập là kiểu tấn công mà các hacker lợi d nụ g các lỗ h nỗ g bảo mật
và các lỗi cấu hình hệ th nố g để lấy quyền xâm nhập trái phép vào hệ th nố g và thay
đổi cấu trúc thông tin của mục tiêu.
Kẻ tấn công thường tìm kiếm quyền truy cập bằng cách chạy một đoạn mã, các
công cụ hack hay khai thác một số điểm yếu của ứng d nụ g hoặc một dịch vụ
đang chạy trên máy chủ. Sau khi có quyền truy cập, kẻ tấn công sẽ tìm cách nâng cao
đặc quyền của mình, cài đặt các phần mềm backdoor, trojan để chiếm quyền truy
cập ở mức độ quản trị (superuser, admin, root). Khi đã nắm toàn quyền, kẻ tấn công
có th ể điều khiển hệ thống mạng mục tiêu để thực hiện các mục đích của mình,
Trang: 7 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
như một bước đệm để tấn công lên các hệ th nố g máy chủ mẹ, hay sử dụng hệ
thống mục tiêu như một agent để tấn công DoS vào các hệ thống khác.
ể ừ ố ị ụ ấ
2.3 T n công ki u t
ch i d ch v DoS
Tấn công từ chối dịch vụ chỉ là tên gọi chung của cách tấn công làm một hệ
thống bị quá tải không thể cung cấp dịch vụ, hoặc phải ngưng hoạt động.
Tấn công DoS nói chung không nguy hiểm như các kiểu tấn công khác ở ch ỗ nó
không cho phép kẻ tấn công chiếm quyền truy cập hệ thống hay có quyền thay đổi hệ
th nố g. Tuy nhiên, nếu một máy chủ tồn tại mà không thể cung cấp thông tin, dịch vụ
cho người sử d nụ g, sự tồn tại là không có ý nghĩa nên thiệt hại do các cuộc tấn
công DoS do máy chủ bị đình trệ hoạt động là vô cùng lớn, đặc biệt là các hệ thống
phục vụ các giao dịch điện tử.
ả ấ ụ
2.3.1 M c đích c t n công DoS
Chiếm băng thông mạng và làm hệ thống mạng bị ngập (flood), khi đó hệ
thống mạng sẽ không có kh ả năng đáp ứng nh nữ g dịch vụ khác cho người dùng bình
thường.
Làm ngắt kết nối giữa hai máy, và ngăn chặn quá trình truy cập vào dịch v .ụ
ủ ấ ụ
2.3.2 M c tiêu c a t n công DoS
Tạo ra sự khan hiếm, những giới hạn và không đổi mới tài nguyên
Băng thông của hệ thống mạng(Network Bandwidth), bộ nhớ, ổ đĩa, và CPU
Time hay cấu trúc dữ liệu đều là mục tiêu của tấn công DoS.
Phá hoại hoặc thay đổi các thông tin cấu hình.
2.4
ọ ả ố ậ Các m i đe d a b o m t
Chính vì một hệ th nố g thông tin luôn bị đe doạ tấn công bởi các hacker nên
việc xây dựng một hệ th nố g bảo vệ xâm nhập là rất cần thiết đối với mỗi một tổ
Trang: 8 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
chức. Các hình thức tấn công của hacker ngày càng tinh vi, chau chuốt hơn, cũng như
mức độ tấn công ngày càng kh nủ g khiếp 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 antivirut đang cố gắng cập
nhập, 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 nổ g 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ì,
và bảo vệ khỏi ai, cũng như 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:
(cid:0) Mối đe dọa ở bên trong
(cid:0) Mối đe dọa ở bên ngoài
(cid:0) Mối đe dọa không có cấu trúc và có cấu trúc
ọ ố
2.i.1.2.4.1 M i đe d a bên trong
Mối đe doạ 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 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 bộ
do sự tin tưởng vào các chính sách và ACL được người quan trị quy định trong hệ
thống. Do s ự bảo mật trong một mạng local thường rất l nỏ g 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.
Trang: 9 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Mối đe doạ bên trong thường được thực hiện bởi các nhân viên do có bất đồng
với công ty, các gián điệp kinh tế hay do một vào máy client đã bị hacker chiếm quyền
truy cập. Mối đe doạ này thường ít được để ý và phòng ch nố g 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 server.
ọ ừ ố 2.4.2 M i đe d a t bên ngoài
Mối đe doạ 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 (thăm dò, truy cập…) hay việc phá hoại truy cập
hệ th nố g (DoS, DDoS…). Xây dựng hệ thống firewall và cảnh báo để ngăn ngừa các
mối đe doạ từ bên ngoài là việc mà các 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.
ọ ố ấ ấ
2.4.3 M i đe d a có c u trúc và không c u trúc
Mối đe doạ tấn công vào một hệ th nố g 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ác công cụ hoặc thực hiện tấn công DoS (mối
đe doạ 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 doạ có cấu trúc), họ là nh nữ g 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 nụ g để ngăn chặn trong các firewall. Đây là mối đe do ạ khó ngăn
ngừa và phòng chống nhất đối với các hệ thống mạng.
ƯƠ Ổ CH NG 1. T NG QUAN IDS
Hệ th nố g phát hiện xâm nhập – IDS(Intrusion Detection System) là một hệ
thống có nhiệm vụ giám sát các lu nồ g dữ liệu traffic đang lưu thông trên mạng, có khả
năng phát hiện những hành đ nộ g khả nghi, những xâm nhập trái phép cũng như khai
Trang: 10 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
thác bất hợp pháp nguồn tài nguyên của hệ thống mà từ đó có thể dẫn đến xâm
hại tính toàn ổn định,tòan vẹn và sẵn sàng của hệ thống.
IDS có thể phân biệt được những cuộc tấn công xuất phát từ bên ngoài hay từ
chính bên trong hệ thống bằng cách dựa vào một database dấu hiệu đặc biệt về
những cuộc tấn công (smurf attack, buffer overflow, packet sniffers….). Khi một hệ
thống IDS có khả năng ngăn chặn các cuộc tấn thì nó được gọi là hệ th nố g ngăn
chặn xâm nhập – IPS (Intrusion Prevention System).
Có rất nhiều công cụ IDS, trong đó Snort được sử d nụ g rất nhiều vì khả năng
tương thích có thể hỗ trợ cài đặt trên cả hai môi trường Window và Linux. Khi Snort
phát hiện những dấu hiệu của một cuộc tấn công, tùy thuộc vào cấu hình và những
qui tắc do người quản trị qui định (Snort Rule) mà Snort có thể đưa ra những hành
động khác nhau, như gửi cảnh báo đến người quản trị hay ghi log file,loại bỏ các
gói tin xâm nhập hệ thống….
1.1
ệ ậ Phát hi n xâm nh p
Phát hiện xâm nhập là một tập hợp các kỹ thuật và phương pháp được sử dụng
để phát hiện những hành vi đáng ngờ ở cấp độ mạng và máy chủ. Hệ thống phát hiện
xâm nhập có hai loại c ơ bản: phát hiện xâm nhập dựa trên dấu hiệu signature và phát
hiện sự bất thường.
1.1.1 Phát hiện dựa trên dấu hiệu (signature)
Phương pháp này nhận dạng cuộc tấn công bằng cách cách so sánh dấu hiệu
nhận được với một tập hợp các dấu hiệu đã biết trước được xác định là sự tấn công.
Phương pháp này có hiệu quả với nh nữ g dấu hiệu đã biết trước, như virus máy tính,
có thể được phát hiện bằng `cách sử dụng phần mềm để tìm các gói dữ liệu có liên
quan đến sự xâm nhập trong các giao thức Internet. Dựa trên một tập hợp các dấu
hiệu và các quy tắc, hệ thống phát hiện xâm nhập có thể tìm thấy và ghi log lại các
hoạt động đáng ngờ và tạo ra các cảnh báo. Tuy nhiên phương pháp này hầu như
Trang: 11 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
không có tác d nụ g với những cuộc tấn công mới, quy mô phức tạp, sử dụng các kỹ
thuật lẩn tránh (evation technique)… do chưa có được thông tin về cuộc tấn công.
ệ ự ấ ườ
1.1.2 Phát hi n s b t th
ng
Phương pháp này thiết lập và ghi nhận trạng thái hoạt đ nộ g ổn định của hệ
thống, sau đó so sánh với trạng thái đang hoạt đ nộ g hiện hành để kiểm tra sự chênh
lệch. Khi nhận ra sự khác biệt lớn trong hệ thống thì có khả năng đã xảy ra một
cuộc tấn công, Ví dụ như sự tăng đột biến các traffic truy cập vào một website…. Phát
hiện xâm nhập dựa trên sự bất thường thường phụ thuộc vào các gói tin hiện diện
trong phần tiêu đề giao thức. Trong một số trường hợp các phương pháp này cho kết
quả tốt hơn so với IDS dựa trên signature. Thông thường một hệ thống phát hiện
xâm nhập thu thập dữ liệu từ mạng và áp dụng luật của nó với dữ liệu đ ể phát hiện
bất thường trong đó. Snort là một IDS chủ yếu dựa trên các luật lệ, và những plugin
hiện nay đ ể phát hiện bất thường trong tiêu đề giao thức.
Quá trình phát hiện có thể được mô tả bởi 3 yếu tố cơ bản nền tảng sau:
(cid:0) Thu thập thông tin (information source): Kiểm tra các gói tin trên mạng.
(cid:0) Sự phân tích (Analysis): Phân tích các gói tin đã thu thập để nhận biết hành
động nào là tấn công.
ự ấ ả ả ượ
(cid:0) C nh báo (response): hành đ ng c nh báo cho s t n công đ ộ
c phân tích ở
trên.
Snort sử dụng các quy tắc được lưu trữ trong các tập tin văn bản có thể sửa đổi.
Nội quy được nhóm lại trong các chuyên mục và được lưu trữ trong các tập tin riêng
biệt. Những tập tin này sau đó được tập hợp trong một tập tin cấu hình chính gọi là
snort.conf. Snort đọc những quy định này trong thời gian khởi động và xây dựng cấu
trúc dữ liệu nội bộ hoặc dây chuyền để áp d nụ g những quy tắc này capture dữ
liệu. Tìm và sử lý dấu hiệu theo các luật là một việc khó khăn vì việc xử lý yêu cầu
phải capture và phân tích dữ liệu trong một thời gian. Snort đi kèm với một tập hợp
Trang: 12 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
phong phú của các tiền quy tắc xác định để phát hiện hoạt đ nộ g xâm nhập, bạn cũng
có thể t ự thêm hoặc loại bỏ các quy tắc tùy thuộc vào mục đích cảnh báo của hệ
thống.
ệ ố ấ
1.2 C u trúc h th ng IDS
ệ ố ấ Hình 1.2.1 C u trúc h th ng IDS
ầ ơ ả Các thành ph n c b n
Sensor/Agent: Giám sát và phân tích các hoạt đ ngộ . “Sensor” thường được dùng
cho dạng Networkbase IDS/IPS trong khi “Agent” thường được dùng cho dạng Host
base IDS/IPS. Sensor/Agent là các bộ cảm biến được đặt trong hệ th nố g nhằm
phát hiện những xâm nhập hoặc các dấu hiệu bất thường trên toàn mạng.
Trang: 13 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
Management Server: Là thiết bị trung tâm dùng thu nhận các thông tin từ
Sensor/Agent và quản lý chúng, management server thường là các máy trạm trọng một
hệ thông. Một số Management Server có thể thực hiện việc phân tích các thông tin sự
và nhận dạng được các sự kiện này trong khi các Sensor/Agent đơn lẻ không thể nhận
diện.
Database server: Dùng lưu tr ữ các thông tin t ừ Sensor/Agent hay
Management Server
Console: Là chương trình cung cấp giao diện có thể cài đăt trên một máy tính
bình thường dùng để phục vụ cho tác vụ quản tr ,ị hoặc để giám sát, phân tích.
ạ
1.3 Phân lo i IDS
Các hệ thống IDS được chia thành 2 loại sau:
Hostbased IDS (HIDS): Sử d nụ g dữ liệu kiểm tra trên một hoặc vài máy
đơn để phát hiện xâm nhập.
Networkbased IDS (NIDS): Sử d nụ g dữ liệu trên toàn bộ lưu thông mạng, cùng
với dữ liệu kiểm tra từ cá bộ cảm biến và một vài máy trạm để phát hiện xâm nhập.
1.3.1 Hệ thống phát hiện xâm nhập HostBased (HIDS)
Hostbase IDS (HIDS) kiểm tra sự xâm nhập bằng cách quan sát và phân tích
các thông tin ở mức độ host hay hệ điều hành trên những giao diện của hệ thống, như
những cuộc gọi (system call), bản ghi (audit log), hay nh nữ g thông điệp lỗi (error
message)…Một hệ th nố g phát hiện xâm nhập hostbase có thể kiểm tra các file hệ
thống và những file log ứng dụng để phát hiện dấu hiệu hoạt động của kẻ xâm nhập
nhằm bảo vệ những tài nguyên đặc biệt của hệ thống bao gồm những tập tin mà chỉ
có thể tồn tại trên mỗi host.
Trang: 14 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Nhiệm vụ của HIDS là đưa ra phản ứng, nghĩa là nó sẽ gửi các thông báo đến
người quản trị khi phát hiện những sự kiện xảy ra trong thời gian thực. Khác với
NIDS hoạt động cùng với các bộ cảm biến sensor có nhiệm vụ giám sát và ngăn chặn
các cuộc tấn công trên một network segment hay trên toàn hệ th nố g mạng, HIDS
thường được cài đặt và giám sát các hoạt động trên mỗi máy tính độc lập nên nó có
thể xác định xem một cuộc tấn công có thành công hay không dựa vào những ảnh
hưởng trên hệ thống. HIDS thường được đặt trên các host xung yếu của hệ thống,
và các server trong vùng DMZ – thường là mục tiêu bị các hacker tấn công đầu
tiên. Nhiêm vụ chính của HIDS là giám sát các thay đổi trên hệ thống, bao gồm
(không phải tất cả):
(cid:0) Các tiến trình.
ủ
(cid:0) Các entry c a Registry.
ứ ộ ử ụ
(cid:0) M c đ s d ng CPU.
ệ ố ẹ ể ậ
(cid:0) Ki m tra tính toàn v n và truy c p trên h th ng file.
ộ ố ố ượ ộ ưỡ
(cid:0) M t vài thông s khác. Các thông s này khi v
t qua m t ng ị ng đ nh
trước hoặc những thay đổi khả nghi trên hệ thống file sẽ gây ra báo động.
HIDS có một vai trò quan tr nọ g trong hệ th nố g bởi vì không phải tất cả các
cuộc tấn công đều được thực hiện qua mạng. Ví dụ như bằng cách giành quyền
truy cập ở mức vật lý (physical access) vào một hệ th nố g máy tính, kẻ xâm nhập có
thể tấn công một hệ thống hay dữ liệu mà không cần phải tạo ra bất cứ lưu lượng
mạng (network traffic) nào cả, do đó đối với các hệ th nố g sử dụng NIDS sẽ không thể
phát hiện ra các tấn công này. Một ưu điểm khác của HIDS là nó có thể ngăn chặn
các kiểu tấn công dùng sự phân mảnh hoặc TTL, vì một host phải nhận và tái hợp
các phân mảnh khi xử lí lưu lượng nên IDS dựa trên host có thể giám sát chuyện này.
ế ủ ợ L i th c a HIDS:
(cid:0) ả ị ườ ớ Có kh năng xác đ nh ng i dùng liên quan t ộ ự ệ i m t s ki n.
Trang: 15 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) ộ ấ ễ ệ ả ộ HIDS có kh năng phát hi n các cu c t n công di n ra trên m t máy.
(cid:0) ữ ệ ể Có th phân tích các d li u mã hoá.
(cid:0) ấ ộ ấ Cung c p các thông tin v ề host trong lúc cu c t n công di n ễ ra
ạ ế ủ H n ch c a HIDS:
(cid:0) ừ ự ấ Thông tin t ậ HIDS là không đáng tin c y ngay khi s t n công vào host
này thành công.
(cid:0) ệ ề ị ạ ồ ờ ấ Khi h đi u hành b "h " do t n công, đ ng th i HIDS cũng b ị "h ".ạ
(cid:0) ả ượ ế ậ ừ ầ HIDS ph i đ c thi t l p trên t ng host c n giám sát .
(cid:0) ệ HIDS không có kh ả năng phát hi n các cu c ộ dò quét m ngạ
(Nmap, Netcat…)
(cid:0) ể ầ HIDS c n tài nguyên trên host đ ho t ạ đ ng.ộ
(cid:0) ể ệ ả HIDS có th không hi u qu khi b ị DOS.
(cid:0) ệ ề ạ ố ố ạ Đa s ch y trên h đi u hành Window. Tuy nhiên cũng đã có 1 s ch y
ượ ệ ề ữ đ c trên UNIX và nh ng h đi u hành khác.
ệ ố ệ ậ
1.3.2 H th ng phát hi n xâm nh p NetworkBased ( NIDS)
Networkbased IDS (NIDS) kiểm tra sự xâm nhập bằng cách sử d nụ g các bộ dò
tìm và các bộ cảm biến (sensor) cài đặt trên toàn mạng để giám sát hoạt động của hệ
thống. Những bộ cảm biến thu nhận và phân tích lưu lượng cũng như kiểm tra các
header của tất cả các gói tin trong thời gian thực, sau đó so sánh các kết quả nhận
được với một database các mô tả sơ lược được định nghĩa hay là những dấu hiệu để
nhận định có xảy ra một cuộc tấn công hay không. Khi ghi nhận được một sự kiện bất
Trang: 16 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
thường, bộ cảm biến sẽ gửi tín hiệu cảnh báo đến trạm quản trị và thực hiện vài hành
đ nộ g dựa vào các rule đã được cấu hình trước.
NIDS thường được đặt ở những vị trí trọng yếu như nh nữ g network interface
kết nối hệ thống giữa mạng bên trong và mạng bên ngoài để giám sát toàn bộ lưu
lượng vào ra, do đó nó có thể giám sát toàn bộ các traffic lưu thông trên mạng. Việc
giám sát dựa vào các bộ cảm biến sensor và các trạm nên hệ th nố g không cần phải
nạp các phần mềm và quản lý trên mỗi máy trong mạng. NIDS phát hiện các tấn
công ngay khi xảy ra, vì thế việc cảnh báo và đối phó có thể được thực hiện một cách
nhanh chóng. Tuy nhiên NIDS sẽ gặp khó khăn trong việc xử lý toàn bộ các gói tin
trên một mạng có mật độ traffic cao, dẫn đến việc bỏ sót một số gói tin có thể là
nguyên nhân gây nên các lỗ hỗng cho các cuộc tấn công vào hệ thống. HIDS và NIDS
có những ưu và khuyết điểm riêng trong việc giám sát và đưa ra các cảnh báo, tùy vào
từng mô hình mà mỗi người quản trị sẽ lựa chọn cho mình những chính sách xây
dựng các IDS phù hợp cho từng hệ thống mạng. Trong thực tế, NIDS thường được
sử dụng tại biên mạng nhằm phát hiện các dấu hiệu tấn công và hạn chế các tấn
công này ở mức network. Đối với nh nữ g máy chủ hoặc máy client quan trọng, việc
bổ sung HIDS cho các máy này là cần thiết để tăng cường khả năng bảo mật khi kết
hợp với các hệ NIDS trong cùng hệ thống.
ợ ế ủ L i th c a NIDS
(cid:0) ả ượ ả ộ ề ồ Qu n lý đ c c m t network segment (g m nhi u host).
(cid:0) ả ả ả ưở ơ Cài đ t ặ và b o trì đ n gi n, không nh h ng t iớ m ng.ạ
(cid:0) ả ưở ớ ộ Tránh DOS nh h ng t i m t host nào đó.
(cid:0) ả ị ỗ ở ầ Có kh năng xác đ nh l t ng Network (trong i mô hình OSI).
(cid:0) ộ ậ Đ c l p v i ớ OS.
ạ ế ủ H n ch c a NIDS
Trang: 17 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) ườ ợ ể ả Có th x y ra tr ng h p báo đ ng ộ gi .ả
(cid:0) ể Không th phân tích các gói tin đã đ ượ mã hóa (vd: SSL, SSH, IPSec…) c
(cid:0) ả ượ ỏ ấ ể ự ự ậ ậ ớ NIDS đòi h i ph i đ c c p nh t các signature m i nh t đ th c s an
toàn.
(cid:0) ộ ễ ữ ị ấ ể ể ờ ớ ộ ờ Có đ tr gi a th i đi m b t n công v i th i đi m phát báo đ ng. Khi
ượ ệ ố ể ộ báo đ ng đ c phát ra, h th ng có th đã b t n ị ổ h i.ạ
(cid:0) ế ệ ấ Không cho bi t vi c t n công có thành công hay không.
ữ ượ ặ ị 1.4 Nh ng v trí IDS nên đ c đ t trong Network Topology
Tùy thuộc vào cấu trúc liên kết mạng của bạn, bạn có thể muốn đặt hệ thống
phát hiện xâm nhập tại một hoặc nhiều đ aị điểm. Nó cũng phụ thuộc vào loại
hoạt đ nộ g xâm nhập bạn muốn phát hiện: bên trong, bên ngoài hoặc c ả hai. Ví dụ,
nếu bạn chỉ muốn phát hiện hoạt động xâm nhập bên ngoài, và bạn chỉ có một
router kết nối với Internet, nơi tốt nhất cho một hệ thống phát hiện xâm nhập có
thể được là bên trong các bộ định tuyến hay tường lửa. Nếu bạn có nhiều đường
vào Internet, bạn có thể muốn đặt IDS ở mỗi điểm ra vào. Tuy nhiên nếu bạn muốn
phát hiện một cách tốt nhất các mối đe dọa trong một mạng nội bộ, bạn có thể muốn
đặt một IDS trong mỗi phân đoạn mạng.
Trong nhiều trường hợp bạn không cần phải có các hoạt đ nộ g phát hiện xâm
nhập trong tất cả các phân đoạn mạng và bạn có thể muốn hạn chế nó chỉ đến các
khu vực mạng nhạy cảm. Lưu ý rằng việc triển khai hệ thống phát hiện xâm nhập
nhiều hơn có nghĩa là làm việc nhiều hơn và chi phí bảo trì hơn. Quyết định của bạn
thực s ự phụ thuộc vào chính sách bảo mật của bạn, trong đó xác định những gì bạn
thực s ự muốn bảo vệ từ tin tặc.
Trang: 18 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ữ ặ Hình 1.41. Đ t gi a Router và FIRewall.
Trang: 19 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ề ặ Hình 1.4.2 Đ t trong mi n DMZ
ặ Hình 1.4.3 Đ t sau Firewall
Trang: 20 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ƯƠ CH NG 2 SNORT IDS
.1
Khái quát
Snort được phát triển năm 1998 bởi Sourcefire và CTO Martin Roesch, là 1
phần mềm miễn phí mã nguồn mở có khả năng phát hiện và phòng chống xâm nhập
trái phép vào hệ thống mạng có khả năng phân tích thời gian thực lưu lượng mạng, và
ghi log gói tin trên nền mạng IP. Ban đầu được gọi công nghệ phát hiện và phòng
chống xâm nhập hạng nhẹ, Snort đã dần phát triển và trở thành tiêu chuẩn trong việc
phát hiện và phòng chống xâm nhập.
Snort thực hiện việc tìm kiếm và phân tích nội dung các giao thức của các
traffic lưu thông trên mạng, từ đó có thể phát hiện ra các kiểu thăm dò và tấn công như
buffer overflow, stealth ports scanning….Các thông tin thu thập sẽ được ghi log lại và
cảnh báo đến console của người quản trị trong thời gian thực.
Snort có thể thực hiện phân tích giao thức và tìm kiếm nội dung, từ đó có thể
phát hiện rất nhiều kiểu thăm dò và tấn công như bufferoverflow, stealth ports
scanning,..v.v. Để có thể làm được điều này, Snort dùng 1 loại ngôn ngữ mô tả các
quy tắc giao thông mạng mà nó sẽ thu thập hoặc bỏ qua, cũng như sử dụng cơ
ch ế phát hiện xâm nhập theo kiến trúc modular plugins. Nó cũng có khả năng cảnh
báo tức thời, kết hợp với các cơ chế cảnh báo syslog, tập tin người dùng chỉ định,
Unix socket hoặc Winpopup message.
Trang: 21 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
ấ Hình 2.1.1 C u trúc Snort
Snort có thể sử dụng với một số cơ chế:
(cid:0) Sniffer mode: là chế độ cho phép bạn có thể theo dõi và đọc các luồng
dữliệu ra vào hệ thống mạng được hiển thị trên màn hình điều khiển.
(cid:0) Logger mode: cho phép ghi các logs dữ liệu vào đĩa lưu trữ.
(cid:0) Network Intrusion Detection System (NIDS) mode: là cơ chế được cấu hình
phức tạp nhất, cho phép Snort phân tích các lu nồ g dữ liệu, trong đó kiểm
soát cho (hay không) cho phép các dữ liệu ra vào hệ thống mạng dựa vào
các bộ qui tắc được định nghĩa bởi người quản tr ,ị đ nồ g thời thực hiện
một vài hành động dựa vào những gì mà Snort nhìn thấy.
Trang: 22 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) Inline mode: các gói tin thu từ iptables thay vì libpcap, sau đó iptables thực
hiện hành động hủy hay cho phép các gói tin đi qua dựa trên những qui tắc
được qui định và sử d nụ g bởi Snort.
.2
ầ ủ Các thành ph n c a Snort
ậ ấ ậ Hình 2.2.1 C u trúc t p lu t Snort
Snort bao gồm nhiều thành phần. Mỗi phần có một chức năng riêng biệt nhưng
làm việc cùng nhau để góp phần đưa ra các nhận định giúp phát hiện các cuộc tấn
công cụ thể và tạo ra output theo một định dạng cần thiết từ hệ thống. Một IDS
dựa trên Snort bao gồm các thành phần chính sau đây:
(cid:0) Module giải mã gói tin (Packet Decoder)
Trang: 23 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) Module tiền xử lý (Preprocessors)
(cid:0) Module phát hiện (Detection Engine)
(cid:0) Module log và cảnh báo (Logging and Alerting System)
(cid:0) Module xuất thông tin (Output Module)
ả
.2.1 Module gi
i mã
Module giải mã lấy các gói dữ liệu từ các giao diện mạng khác nhau và chuẩn
bị cho việc các gói tin sẽ được xử lý trước khi được gửi đến module phát hiện. Các
giao diện có thể là Ethernet, SLIP, PPP….
ề ử
.2.2 Module ti n x lý
Module tiền xử lý là nh nữ g thành phần được s ử dụng với Snort để sắp xếp hoặc
sửa đổi các gói dữ liệu trước khi module phát hiện kiểm tra xem gói tin đã được xử
d nụ g bởi kẻ xâm nhập hay không. Module tiền xử lý là phần rất quan trọng trong IDS
để chuẩn bị các gói dữ liệu cho việc phân tích dựa vào các luật trong module phát
hiện. Hacker sử dụng các kỹ thuật khác nhau để đánh lừa IDS bằng nhiều cách. Ví dụ,
bạn có thể đã tạo ra một quy tắc để tìm một chuỗi ký tự "scripts/iisadmin" trong gói
HTTP. Nếu bạn đang kết hợp chuỗi này chính xác, bạn có thể dễ dàng bị lừa bởi một
hacker khi đã làm thay đổi chút ít các chuỗi này:
"scripts/./iisadmin"
"scripts/examples/../iisadmin"
"scripts\iisadmin"
"scripts/.\iisadmin"
Module tiền xử lý còn được dùng để chống phân mảnh gói tin. Khi một khối dữ
liệu lớn được chuyển tới một host, gói tin thường bị phân mảnh. Ví dụ, chiều dài
tối đa mặc định của bất kỳ gói dữ liệu trên một mạng Ethernet thường là 1500 byte.
Giá trị này được qui định bởi giá trị MTU (Maximum Transfer Unit) cho mỗi giao diện
mạng. Điều này có nghĩa rằng nếu bạn gửi dữ liệu hơn 1500 byte, nó sẽ được
Trang: 24 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
chia thành nhiều gói dữ liệu sao cho mỗi mảnh gói tin nhỏ hơn hoặc bằng 1500 byte.
Các hệ thống tiếp nhận có khả năng ghép các đơn vị này để hình thành các gói dữ liệu
gốc. Trên IDS, trước khi bạn có thể áp dụng bất kỳ quy tắc nào hoặc cố gắng tìm một
chuỗi ký tự, bạn cần phải tập hợp lại các gói tin. Ví dụ, một nửa số ký tự có thể có
mặt trong một gói và một nửa khác trong gói khác. Để phát hiện các ký tự đúng,
bạn phải kết hợp tất cả các gói tin lại. Lợi dụng yếu tố phân mảnh của các gói tin,
hacker có th ể đ ể đánh bại các hệ thống phát hiện xâm nhập.
.2.3 Module phát hi nệ
Đây là phần quan trọng nhất của Snort. Nó ch uị trách nhiệm phát hiện các dấu
hiệu xâm nhập vào hệ thống. Module phát hiện sử d nụ g các luật được định nghĩa
trước để so sánh với dữ liệu thu thập được từ đó xác định xem có xâm nhập xảy ra
hay không. Nếu một gói tin phù hợp với bất kì luật nào, một hành động tương ứng sẽ
được thực hiện như ghi log, tạo ra các cảnh báo,đưa ra các thông tin… hoặc gói tin
sẽ b ị hủy.
Một vấn đề rất quan tr nọ g trong module phát hiện là thời gian thực thi,xử lý
các gói tin. Tùy thuộc vào hệ thống của bạn mạnh như thế nào mà sẽ tốn những
khoảng thời gian khác nhau để xử lý, vì một IDS thường nhận được rất nhiều gói tin,
tương nứ g với việc cũng có rất nhiều các luật được thực thi. Nếu lưu lượng cần xử
lý trên mạng là quá lớn khi Snort đang hoạt đ nộ g trong chế độ NIDS, bạn có thể mất
một vài gói tin hoặc thời gian đáp ứng không chính xác. Kh ả năng xử lý của module
phát hiện phụ thuộc vào các yếu tố sau:
(cid:0) Số lượng các luật
(cid:0) Sức mạnh của hệ thống máy mà Snort đang chạy
(cid:0) Tốc độ của bus hệ thống
(cid:0) Lưu lượng trên mạng
Trang: 25 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
Khi xây dựng một hệ th nố g phát hiện xâm nhập, bạn phải lưu ý tất cả các yếu
tố này để hệ th nố g có thể hoạt đ nộ g hiệu quả. Lưu ý là module phát hiện có thể phân
tích các gói tin và áp dụng các luật đối với các phần khác nhau của một gói tin. Đó là:
(cid:0) IP header của gói tin
(cid:0) Header của lớp vận chuyển, bao gồm TCP, UDP…Nó cũng có thể làm việc
trên header ICMP
(cid:0) Header của lớp ứng dụng như header của DNS, FTP, SNMP hay SMTP…
(cid:0) Tải trọng của gói: Điều này có nghĩa bạn có thể tạo ra các luật sử
dụng module phát hiện để tìm kiếm một chuỗi nằm trong dữ liệu của một
gói tin.
ả
.2.4 Module ghi và c nh báo
Tùy thuộc việc module phát hiện có nhận dạng được xâm nhập hay không mà
một gói tin có thể được ghi log hay đưa ra một cảnh báo. Các file log được lưu dưới
các định dạng đơn giản như tcpdump hoặc một vài dạng khác, tất cả được lưu trữ
trong folder mặc định /var/log/snort. Bạn có thể sử dụng tùy chọn –l trong
commandline để thay đổi vị trí tạo ra các log file và cảnh báo.
.2.5 Module output
Module đầu ra có thể hoạt động theo nhiều cách phụ thuộc vào việc muốn lưu
các kết quả được tạo ra bằng module ghi và cảnh báo như thế nào. Tùy theo việc cấu
hình hệ thống mà nó có thể thực hiện các công việc như là:
(cid:0) Ghi log file vào thư mục mặc định /var/log/snort/alerts hoặc một nơi khác.
(cid:0) Gửi các cảnh báo SNMP.
(cid:0) Gửi thông tin tới syslog.
(cid:0) Đăng nhập vào một cơ sở dữ liệu như MySQL hoặc Oracle.
(cid:0) Tạo ra các output XML.
Trang: 26 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) Cấu hình lại Router, firewall.
(cid:0) Gửi các thông điệp Server Message Block (SMB) tới các máy tính
Windows.
Module Mô Giải mã
Chuẩn bị các gói dữ liệu cho việc xử lý. Bình thường hóa header các giao thức, phát hiện dấu Áp d nụ g bộ luật cho các gói tin.
Phát hiện Log và cảnh báo Tạo cảnh báo và các thông tin log. Output Xử lý cảnh báo, log và đưa ra kết quả output cuối cùng.
Bảng 1 Bảng tóm tắt các module của Snort
2.3
ế ộ ạ ộ ủ Các ch đ ho t đ ng c a Snort
2.3.1 Sniffer Mode
Đây là một tính năng cơ bản dễ dàng sử dụng nhưng rất hiệu quả trong việc
giám sát các luồng dữ liệu đang lưu thông trên hệ thống. Nó có khả năng tạo ra một
bảng tóm tắt về các traffic trên mạng sau khi capture các gói tin, từ đó giúp người
quản trị có cái nhìn tổng quan v ề hệ thống. Nếu bạn chỉ quan tâm đến thông tin của
những gói tin TCP/IP packet headers, hãy bắt đầu với khóa v:
(cid:0) ./snort –v
Lệnh này sẽ chạy Snort và chỉ hiển thị đ aị chỉ IP và các TCP/UDP/ICMP headers,
ngoài ra không có gì khác. Nếu bạn muốn theo dõi các dữ liệu application đang vận
chuyển, hãy thêm khóa d như sau:
(cid:0) ./snort –vd
Chỉ thị Snort trên sẽ hiển thị các gói dữ liệu cũng như các header. Nếu bạn
muốn hiển thị mô tả chi tiết hơn, như việc hiển thị cả header lớp liên kết dữ liệu,
hãy sử dụng thêm khóa e:
Trang: 27 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) ./snort –vde
Các chuỗi thập lục phân hiển th ị nhiều dữ liệu hơn, như đ aị chỉ MAC và đ aị chỉ
IP. Khi thực hiện kiểm tra trên một mạng hoặc capture dữ liệu bằng Snort, việc bật
– vde cung cấp nhiều thông tin nhất. Để lưu lại trong logfile thay vì xuất ra console,
s ử d nụ g:
(cid:0) ./snort dve > ttooip.log
Ngoài ra, do một số thiết bị chuyển mạch có thể chia ra hay gộp chung các
khóa trong một dòng lệnh,ta cũng có thể nhập ra như:
(cid:0) ./snort d v –e
Khoá
Mô tả Đưa ra packet headers trong phần Hiển th ị packet payload Hiển thị ARP packets Hiển th ị dữ liệu lớp data link v d a e
Bảng 2 – Một vài khóa trong mode sniffer của Snort
2.3.2 Packet Logger Mode
Nếu bạn muốn ghi lại các gói dữ liệu vào đĩa, bạn cần phải chỉ định một thư
mục log và thêm khóa –l, Snort sẽ tự động biết để đi vào chế độ packet logger:
(cid:0) ./snort dev l file./log
Tất nhiên, điều này giả định bạn có một thư mục với tên log trong thư mục hiện
hành. Thư mục mặc định trong Snort là /var/log/snort. Khi Snort chạy trong chế độ
này, nó thu thập tất cả các gói nó thấy và đặt nó vào một thư mục hệ thống phân cấp
dựa trên đ aị ch IPỉ của một trong những máy chủ trong các gói dữ liệu. Nói cách khác,
một thư mục mới được tạo ra cho mỗi đ aị chỉ được capture và dữ liệu liên quan đến
đ aị chỉ này được lưu trong thư mục đó. Snort lưu các gói tin thành các file ASCII, với
tên file được tạo ra từ tên giao thức và số của cổng kết nối.
Trang: 28 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Nếu bạn ch ỉ định một chuyển đổi đ nồ g bằng l, bạn có thể nhận thấy rằng Snort
đôi khi sử d nụ g đ aị chỉ của các máy tính từ xa như các thư mục trong đó nó đặt gói và
đôi khi nó sử dụng địa chỉ host nội bộ. Để thiết lập Snort cho các mạng gia đình, bạn
cần chỉ định cho Snort biết mạng cần đi đến là các mạng gia đình:
(cid:0) ./snort dev l file./log h 192.168.1.0/24
Quy luật này cho Snort biết bạn muốn in ra các liên kết dữ liệu và các TCP/IP
header cũng như dữ liệu ứng dụng vào thư mục./log, và bạn muốn log các gói liên
quan đến mạng lớp C 192.168.1.0. Tất cả các gói tin đến sẽ được ghi vào thư mục
con của thư mục log, với các tên thư mục được dựa trên địa chỉ của các máy chủ từ xa.
2.3.3 Network Intrusion Detection System Mode
Kích hoạt hệ thống phát hiện xâm nhập mạng (NIDS) để bạn không phải ghi lại
tất cả gói đơn lẻ được gửi xuống bằng lệnh:
(cid:0) ./snort d h 192.168.1.0/24 l file./log c snort.conf
snort.conf là tên của tập tin nơi mà bạn qui định các luật của snort, tập tin này nằm
trong /etc. Tất cả các luật được qui định trong file snort.conf sẽ được áp đặt cho mỗi
gói tin để quyết định một hành đ nộ g sẽ được thực hiện hay không dựa trên các loại
quy tắc này. Nếu bạn không chỉ định một thư mục output cho chương trình, nó s ẽ mặc
định là /var/log/snort.
Lệnh này sẽ cấu hình Snort để chạy theo hình thức NIDS cơ bản nhất, ghi lại
các log dữ liệu dựa theo các luật trong snort.conf theo định dạng plain ASCII vào đĩa
lưu trữ bằng cách sử dụng một cấu trúc th ư mục phân cấp (giống như ch ế độ packet
logger).
2.3.3.1 NIDS Mode Output Options
Có một số cách để cấu hình đầu ra output của Snort ở chế độ NIDS. Mặc định
log sẽ được ghi theo định dạng ASCII và được đặt trong cơ chế cảnh báo toàn phần.
Trang: 29 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Cơ chế cảnh báo toàn phần sẽ hiển thị thông điệp cảnh báo cùng với toàn bộ các
packet headers. Ngoài ra còn có các cơ ch ế cảnh báo bằng việc thực thi các dòng lệnh
cũng như việc log các dữ liệu.
Cơ chế cảnh báo của Snort khá phức tạp với bảy chế độ hoạt đ nộ g theo các
dòng lệnh,đó là: full, fast, socket, syslog, console, cmg, và none. Sáu trong số các chế
độ này thực hiện với khóa –A tại dòng lệnh.
Option
Tắt chế độ cảnh báo.
Tạo một cảnh báo “cmg style”. Description Đưa ra một thông điệp cảnh báo với định dạng đơn giản trong a fast Đưa ra một cảnh báo đầy đủ. Đây là chế độ mặc định nếu bạn a full a unsock Gửi một thông báo đến một socket UNIX rằng có một chương a none a console Gửi một cảnh báo “faststyle” ra màn hình console. a cmg
Bảng 3 – Các tùy chọn của Snort ở chết độ NIDS
Các gói tin có thể được lưu lại với định dạng ASCII hoặc định dạng mã
nh ị phân bằng khóa –b tại dòng lệnh command line. Để vô hiệu hóa toàn bộ các
gói tin log, hãy sử d nụ g khóa –N.
Để gửi cảnh báo đến syslog, sử dụng khóa s. Cơ chế mặc định của syslog là
LOG_AUTHPRIV và LOG_ALERT. Nếu bạn muốn cấu hình cơ chế khác cho
syslog output, hãy sử d nụ g những chỉ thị output plugin trong file snort rules. Ví dụ,
sử dụng dòng lệnh sau đây để log các file theo chế độ mặc định (giải mã ASCII)
và gửi thông báo đến syslog:
(cid:0) ./snort c snort.conf l./log h 192.168.1.0/24 –s
.3.3.2 Understanding Standard Alert Output
Khi Snort tạo ra một thông điệp cảnh báo, nó thường dựa vào cấu trúc giống
như sau:
(cid:0) [**] [116:56:1] (snort_decoder): T/TCP phát hiện [**]
Trang: 30 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Thông số đầu tiên (116) là Generator ID, điều này cho phép user biết được
những thành phần trong một thông điệp Snort. Các thông số GIDs được trình bày ở
etc/generators trong source Snort.
Thông số thứ hai (56) là ID Snort (đôi khi được gọi là Signature ID). Đối với
một danh sách các SID tiền xử lý, xin vui lòng xem etc/genmsg.map. Quy tắc
dựa trên SID được viết trực tiếp vào các quy định với tùy chọn sid. Trong trường
hợp này,
56 đại diện cho một T/TCP sự kiện.
Thông số thứ ba (1) là số revision ID. Con số này chủ yếu được sử d nụ g viết
ra các signatures, với mỗi hành động thực thi của các quy t cắ , nên tăng con số
này đ ể phân biệt các tùy chọn rev.
.3.4
Inline Mode
Inline Mode là một nhánh cơ chế hoạt động của Snort. Phiên bản Snort 2.3.0
RC1 tích hợp các hệ th nố g phòng chống xâm nhập (IPS) của Snort Inline vào hệ
thống chính của Snort. Snort Inline kết hợp khả năng ngăn chặn của iptables vào bên
trong Snort, sau đó đưa ra những bổ sung và thay đổi trong bộ qui tắc luật Snort để
giúp iptables đưa ra những đ nộ g cho phép hay hủy một gói tin.
Có ba loại quy tắc có thể sử d nụ g khi chạy Snort với Snort Inline:
(cid:0) DROP – Hành động DROP yêu cầu iptables loại bỏ gói tin và ghi lại thông
tin như hành động LOG thông thường.
(cid:0) REJECT – Hành động REJECT yêu cầu iptables từ chối gói tin, ghi lại
thông tin log và gửi một yêu cầu TCP reset nếu giao thức TCP hoặc gói tin
ICMP không thể truy cập được port hoặc nếu giao thức là UDP, có nghĩa là
iptables sẽ loại bỏ và gửi lại một thông báo cho nguồn gửi gói tin đó.
Trang: 31 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) SDROP – Hành động SDROP cũng tương tự hành đ nộ g DROP, điều khác
biệt là ở chỗ Snort sẽ không ghi lại bất kì thông tin gì như hành động LOG.
Snort Inline Rule Application Order:
Trong các phiên bản gốc, trình tự ưu tiên của các hành động trong Snort là:
(cid:0) activation(cid:224) dynamic(cid:224) drop (cid:224) sdrop (cid:224) reject (cid:224) alert (cid:224) pass (cid:224) log
Trong inlinemode, trình tự ưu tiên này được thay đổi như sau:
(cid:0) activation (cid:224) dynamic (cid:224) pass (cid:224) drop (cid:224) sdrop (cid:224) reject (cid:224) alert (cid:224) log
Điều này sẽ đảm bảo rằng một hành động drop sẽ được ưu tiên hơn một cảnh
báo alert hoặc hành đ nộ g log.
Cài đặt Snort Inline
Để cài đặt Snort Inline, sử d nụ g lệnh sau đây:
(cid:0) ./configure enableinline
(cid:0) make
(cid:0) make install
Chạy Snort Inline
Trước tiên, bạn cần đảm bảo rằng các module ip queue đã được tải. Sau đó, bạn
cần gửi lưu lượng truy cập để Snort Inline sử d nụ g các hàng đợi đối tượng. Ví dụ:
(cid:0) iptables A OUTPUT p tcp dport 80 j QUEUE
Gửi tất cả lưu lượng TCP ra khỏi firewall đến c nổ g 80 với hàng đợi đối tượng.
Đây là những gì sẽ gửi gói tin từ hạt nhân kernel tới không gian người dùng (Snort
Inline). Cuối cùng, để bắt đầu Snort Inline:
(cid:0) snort_inline QDc../etc/drop.conf l /var/log/snort
Bạn có thể sử dụng tùy chọn dòng lệnh sau đây:
Trang: 32 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
(cid:0) Q lấy các gói tin từ iptables.
(cid:0) D Chạy Snort Inline ở chế độ nền. Các mã số tiến trình (process ID) được
lưu ở /var/run/snort.pid
c Đọc các tập tin cấu hình.
l Ghi log vào thư mục.
Tốt nhất Snort Inline nên được chạy bằng cách sử d nụ g cấu hình drop.rules
riêng của mình. Nếu bạn muốn sử d nụ g Snort để chỉ cảnh báo, một quá trình riêng biệt
nên được chạy với bộ quy tắc riêng của mình.
Trang: 33 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ƯƠ Ặ Ấ Ể CH NG 3 CÀI Đ T C U HÌNH SNORT VÀ TRI N KHAI DEMO
1.1
Cài đ t ặ
ị .1.1 Chu n bẩ
ướ ề ầ ầ ế ệ ặ ộ ố D i đây là các gói ph n m m c n thi t khi cài đ t m t h th ng Snort trên
Windows Server 2003.
(cid:0) Snort:
ố ệ ậ ệ H th ng phát hi n xâm nh p. Download t ạ i ị đ a
chỉ https://snort.org/downloads
(cid:0) WinPcap: H th ng cho phép b t các gói tin và phân tích m ng. Download t
ệ ố ắ ạ ạ i
ị đ a ch : ỉ http://www.winpcap.org/install/default.htm
(cid:0) Snort
ẫ Rules: ộ B ậ lu t ủ m u c a Snort. Download t ạ i ị đ a
ch :ỉ https://snort.org/downloads/#ruledownloads
.1.2
ế ặ Ti n hành cài đ t
ệ ố ể ả Em tri n khai h th ng trên Win o v i ớ VMware Workstation, mô hình Demo có 3
máy:
(cid:0) Máy Windows Server 2003 đ
ượ ặ ệ ố c cài đ t h th ng Snort
(cid:0) Máy Windows XP v i vai trò là client.
ớ
(cid:0) Máy Unbuntu 14.04 v i vai trò client.
ớ
(cid:0) Card m ng c a VMware
ủ ạ ủ ở ế ộ ị ỉ c a 3máy ch ch VNet8 (NAT), đ a ch IP đ ượ c
ượ ế ố ấ c p phát tĩnh và đ c k t n i Internet.
ướ B ặ c 1: Cài đ t WinPcap
ầ ượ Vào th m c ư ụ Temp ngoài Desktop, double click vào file WinPcap v4.1.2 và l n l ự t th c
hi nệ Next > Next > I Agree > Install > Finish.
ướ ấ ặ B c 2: Cài đ t và c u hình Snort
Trang: 34 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
(cid:0) T i th m c
ạ ư ụ Temp ngoài Desktop, double click vào file Snort_2_9_7_2_Installer
ầ ượ ể ự ặ đ cài đ t. L n l t th c hi n ệ I Agree > Next > Next > Next > Close >
OK.
(cid:0) Gi
ả ấ ả ộ i nén file snortrulessnapshotCURRENT.tar và copy t t c n i dung trong
ư ụ ể ặ đó vào th m c cài đ t Snort: C:\Snort, ch n ọ Yes to All đ copy đè.
(cid:0) Truy c p vào th m c là C:\Snort\etc\ và m file
ư ụ ậ ở ằ snort.conf b ng Notepad++
(cid:0) Th c hi n tìm ki m và thay đ i nh ng n i dung sau:
ự ữ ệ ế ộ ổ
# Setup the network addresses you are protecting
ipvar HOME_NET 192.168.1.0/24
# Set up the external network addresses. Leave as "any" in most situations
ipvar EXTERNAL_NET !$HOME_NET
# Note for Windows users: You are advised to make this an absolute path,
# such as: c:\snort\rules
var RULE_PATH C:\Snort\rules
var SO_RULE_PATH C:\Snort\so_rules
var PREPROC_RULE_PATH C:\Snort\preproc_rules
# If you are using reputation preprocessor set these
var WHITE_LIST_PATH C:\Snort\rules
var BLACK_LIST_PATH C:\Snort\rules
Trang: 35 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
# path to dynamic preprocessor libraries
dynamicpreprocessor directory C:\Snort\lib\snort_dynamicpreprocessor
# path to base preprocessor engine
dynamicengine C:\Snort\lib\snort_dynamicengine\sf_engine.dll
# path to dynamic rules libraries
# dynamicdetection directory /usr/local/lib/snort_dynamicrules
# Reputation preprocessor. For more information see README.reputation
preprocessor reputation: \
memcap 500, \
priority whitelist, \
nested_ip inner, \
whitelist $WHITE_LIST_PATH\white.list, \
blacklist $BLACK_LIST_PATH\black.list
# metadata reference data. do not modify these lines
include classification.config
include reference.config
ướ ể ặ B c 3: Ki m tra cài đ t Snort
(cid:0) ở ủ ổ M c a s DOS và gõ l nh ệ cd c:\snort\bin
Trang: 36 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
(cid:0) Ch y l nh đ
ệ ạ ể ể ki m tra đ ộ ổ ị n đ nh: snort l c:\snort\log c
c:\snort\etc\snort.conf A console
ặ Hình 3.1.2.1 Cài đ t Snort
ạ ộ ư ậ ẵ ấ ướ Nh v y chúng ta đã c u hình xong Snort. Snort đã s ng sàng ho t đ ng d i các
ế ộ ch đ khác nhau.
ướ ử ụ B c 4: S d ng Snort
(cid:0) Ch đ Sniffer Paket:
ế ộ ể ế ạ ầ ọ ể Đ ti n hành sniffer, chúng ta c n ch n card m ng đ
ủ ạ ử ụ ế ộ ế ề ặ Snort đ t vào ch đ promicous, n u máy tính c a b n s d ng nhi u card thì
ử ụ ố ệ ể ạ hãy s d ng l nh ệ snort W đ xem s hi u card m ng
Trang: 37 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
ủ ạ Hình 3.1.2.2 Xem card m ng c a máy
Ở ệ ạ ố ờ ế đây s hi u card m ng là 1. Bây gi chúng ta ti n hành sniffer paket dùng
ố ệ ạ ạ ớ l nh:ệ ế snort dev ix (v i x là s hi u card m ng). Trong quá trình ch y snort, chúng ta ti n
ừ hành ping t client sang server.
ế ộ ữ ệ ể ư ể Ch đ Packet Log: ằ Chúng ta có th l u các gói d li u vào file log đ xem b ng
ẽ l nh:ệ ữ ệ ạ ầ i t ng ệ snort dev i1 l c:\snort\log (dòng l nh s ghi log các thông tin d li u t
Datalink và TCP/IP)
ệ ọ Ờ Đ c file log dùng l nh: snort dvr c:\snort\log\snort.log.NHÃN TH I GIAN
ướ ặ B c 5: Cài đ t Snort trong Service
ắ ệ ạ ấ T i d u nh t l nh gõ: snort /SERVICE /INSTALL c c:\snort\etc\snort.conf l
c:\snort\log K ascii i1
Trang: 38 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ặ Hình 3.1.2.3 Cài đ t Snort trong Service
ạ ở ộ Kh i đ ng l i Windows Server
ở ộ ạ ể ể ượ Sau khi kh i đ ng l i Windows, vào Service đ ki m tra Snort đ c start thành công
hay ch aư
ậ Hình 3.1.2.1 B t Snort trong service
Trang: 39 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
ư ậ ấ ặ Nh v y là ta đã cài đ t và c u hình xong Snort trên Win server 2003
ể
.2 Tri n khai Demo
ấ ỉ ị C u hình đ a ch IP tĩnh cho :
Winserver 2003 : IP add: 192.168.1.12/24
Win XP: IP add: 192.168.1.10/24
Ubuntu: IP add: 192.168.1.11/24
ạ ậ ả 3.2.1 T o lu t c nh báo Ping
ụ ư ở ệ ậ Vào th m c C:\Snort\rules, m file finger.rules, thêm lu t phát hi n máy
ư ế khácpingđ nnh sau:
alert icmp any any > $HOME_NET any (msg: “Co may dang ping”; sid: 140791;)
ự ừ Th c hi n l nh ế máy win Xp đ n Server 2003 ệ ệ ping 192.168.1.12 t
ả ở ế ở ư ụ ư K t qu file log máy Server trong th m c C:\Snort\log nh sau:
.2.2
ậ ả ớ ạ ướ ớ T o lu t c nh báo PING v i kích th t l n
Thêm ệ l nh vào file icmp.rules
alert icmp $HOME_NET any > any any (msg: “Size ping lon”; dsize: >50; sid: 2;)
ạ ệ ở ư T o l nh ping máy Client nh sau: ping l 1000 f google.com t
ạ Start l i Snort
ả ở ế K t qu file log
.2.3
ế ậ ả ậ Thi t l p c nh báo truy c p Web
ư ụ ạ ể ế ộ Trong th m c C:\Snort\rules ta t o file youtube.com đ bi t m t máy nào trong
ạ m ng truy ậ c p vào ớ website youtube.com v i ộ n i dung file:
Trang: 40 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
alert tcp any any > any any (content: “www.youtube.com”; msg: “Ban moi truy
cap youtube.com”; sid: 100000; rev: 1;)
Trong file snort.conf, thêm dòng: include $RULE_PATH/youtube.rules
ạ Start l i Snort
ạ ậ T i máy Client truy c p vào website youtube.com
ế ở ả K t qu file log máy Server
.2.4
ậ ả ủ ạ ậ T o lu t c nh báo xâm nh p Web máy ch server 2003
(cid:0) alert tcp any any > 192.168.1.12/24 any (msg: "Phat hien xam nhap web may
chu"; sid: 11597530;)
ư ụ ể ế ạ ộ
(cid:0) Trong th m c C:/Snor/rules/finger.rules đ bi
t m t máy nào trong m ng truy
ớ ộ ậ c p vào website Server v i n i dung file:
(cid:0) tcp any any > 192.168.1.12/24 any (msg: "Phat hien xam nhap web may chu";
sid: 11597530;)
ệ ạ ậ
(cid:0) T i máy Client truy c p trình duy t web gõ: 192.168.1.12
ế ở
(cid:0) K t qu file log ả
máy Server
Trang: 41 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
Ổ Ế T NG K T
ệ ố ệ ệ ậ ọ H th ng phát hi n xâm nh p (IDS) đóng vai trò quan tr ng trong vi c giám sát
ậ ệ ố ườ ộ ạ ả b o m t h th ng m ng. IDS giúp con ng ơ ấ i khám phá, phân tích m t nguy c t n
ừ ớ ườ ạ ươ ố Ở ộ công m i. T nó ng i ta v ch ra ph ng án phòng ch ng. ộ m t góc đ nào đó, có
ể ầ ượ ộ ấ ộ ổ ứ ớ ủ ể ạ th l n tìm đ ộ c th ph m gây ra m t cu c t n công. M t t ch c l n không th nào
ế thi u IDS.
1. ề ạ ượ ữ ấ Nh ng v n đ đ t đ c
ắ ắ ượ ơ ế ủ ệ ố ạ ộ ệ ậ
(cid:0) N m b t đ
c c ch ho t đ ng c a h th ng phát hi n xâm nh p IDS.
ộ ệ ố ụ ệ ậ ạ ấ ặ
(cid:0) Cài đ t và c u hình m t h th ng phát hi n xâm nh p trên m ng c c b d a ộ ự
ở ồ trên mã ngu n m Snort, iptables, squid proxy.
Trang: 42 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
ể ượ ứ ấ ơ ả ạ
(cid:0) Hi u đ
c các cách th c t n công m ng c b n.
ể ọ ượ ả
(cid:0) Đ c hi u, phân tích đ
c các c nh báo trong Snort thông qua các rules và log.
.
ề ư ạ ượ ữ ấ Nh ng v n đ ch a đ t đ c
(cid:0) V nấ đề về t nấ công r tấ r ngộ l n,ớ hi nệ nh ngữ cách th cứ t nấ công m iớ
ở ngày càng tr nên tinh vi và ph c t p ứ ạ h n.ơ
ố ớ ề ệ ẩ ấ ả
(cid:0) Đ i v i Snort, hi n có r t nhi u s n ph m đi
ấ ạ ộ kèm ho t đ ng r t
ư hay nh : Snort_inline, Fsnort(Firewall Snort),… ch aư đ cượ áp d ngụ
tri tệ đ .ể
ậ ủ ậ ượ ể ầ
(cid:0) T p lu t c a Snort ngày càng đ
c phát tri n nên c n ph i c p ả ậ nh t.ậ
ư ế ợ ầ
(cid:0) Ch a k t h p ph n m m Mod Security đ b o ề
ể ả v ệ Web server.
.
ề H ng ộ ướ m ở r ng đ tài
ố ớ ậ ấ ạ ạ ự ơ ế ư Đ i v i m ng không dây, c u trúc v t lý mang l ề i s an toàn nh ng c ch truy n
ạ ạ ữ ỗ ổ ậ ả ậ ữ tin không dây gi a các node m ng l i kéo theo nh ng l ầ h ng b o m t, do v y luôn c n
ứ ữ ả ườ ự ph i ch ng th c gi a các ng i dùng trong m ng.ạ
ệ ủ ề ạ ệ Cách làm vi c c a IDS trong m ng WLAN có nhi u khác bi ớ t so v i môi tr ườ ng
ề ạ ố ườ ề ạ ả m ng LAN truy n th ng. Trong môi tr ố ng m ng có dây ta có toàn quy n qu n lý đ i
ạ ư ượ ượ ề ẫ ớ v i các lo i l u l ng đ c truy n trên dây d n. Trong WLAN, không khí là môi tr ườ ng
ề ẫ ấ ả ọ ườ ủ ầ ố ủ ẩ truy n d n, t t c m i ng i trong ph m ề ạ vi ph sóng c a t n s theo chu n 802.11 đ u
ự ể ả ả ậ ạ ầ có th truy c p vào m ng. Do đó c n ph i có s giám sát c bên trong và bên ngoài
ạ m ng WLAN.
ộ ệ ữ ể ầ ạ M t khác bi t n a là wireless IDS c n cho m ng máy tính đã tri n khai WLAN và
ữ ư ể ơ ị ấ ả ừ ạ ả c nh ng n i ch a tri n khai WLAN. Lý do là dù kh năng b t n công t m ng WLAN
ự ự ự ư ư ạ ộ ọ ọ ố vào m ng LAN ch a rõ ràng nh ng đó là m t m i đe d a th c s . S đe d a này đ ượ c
ự ự ử ụ ộ ổ ứ ư ế ỉ coi là ch liên quan đ n ai s d ng WLAN nh ng s th c thì toàn b t ạ ch c m ng LAN
ư ượ ể ắ ư ể ắ ạ ề đ u nên giám sát l u l ạ ỏ ự ng l u chuy n trong m ng WLAN đ ch c ch n lo i b s đe
Trang: 43 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
ả ể ế ộ ọ ừ d a t ề không gian xung quanh. M t đi u luôn ph i đ tâm đ n là các AP gi ạ ả m o b t ấ kể
ạ ạ ta đang dùng m ng không dây hay m ng LAN truy n ề th ng.ố
Ụ Ụ PH L C
ệ ả Tài li u tham kh o
Trang: 44 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ệ ể ậ ớ
[1] Intrusion Detection Systems with Snort: Advanced IDS Techniques
Using Snort, Apache, MySQL, PHP, and ACID – By Rafeeq Ur Rehman –
May 08, 2003 – 0131407333.
[2] Snort 2.1 Intrusion Detection Second Edition – Featuring Jay Beale
and Snort Development Team Andrew R. Baker, Brian Caswell, Mike Poor –
Copyright 2004 by Syngress Publishing – ISBN: 1931836043.
[3] Snort User Manual 2.8.5 Martin Roesch Chris Green, October 22,
2009 Sourcefire, Inc.
[4] Syngress – Intrusion.Prevention.and.Active.Response.(2005)
[5] Guide to Intrusion Detection and Prevention Systems
Recommendations of the National Institute of Standards and Technology –
Karen Scarfone Peter Mell
[6] Managing Security with Snort and IDS Tools – O’ReillyBy Kerry
J. Cox, Christopher Gerg
[7] Snort cookbook – O’Reilly By Kerry J. Cox, Christopher Gerg
[8] Snort IDS and IPS ToolkitFeaturing Jay Beale and Members of the
Snort TeamAndrew R. Baker –Joel Esler
[9] ModSecurity Handbookby Ivan Ristiæ Copyright © 2009, 2010 Ivan
Ristiæ
ễ ấ ặ ồ [10] Cài đ t và c u hình Iptables Nguy n H ng Thái
[11] Firewalls, Nat & Accounting Linux iptables Pocket Reference
O'REILLY GREGOR N. PURDY.
[12] Linux Firewalls Attack Detection and Response with iptables,
psad, and fwsnortMICHAEL RASH.
Trang: 45 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
Các trang web:
ệ ướ Vi t Nam N c ngoài:
http://www.hvaonline.net http://www.google.co.uk
http://nhatnghe.com/forum http://www.snort.org
http://quantrimang.com.vn http://www.openmaniak.com/inline.php
http://forum.saobacdauacad.vn http://sectools.org/
http://forum.t3h.vn http://linux.org/
http://ipmac.vn/forum http://ibm.com
http://vnexperts.net http://support.microsoft.com
http://kmasecurity.net http://www.winids.com
ơ ả ủ ấ C u hình các Rules c b n c a Snort .
ả C nh báo ping.
Trong đó:
ả ộ Alert: là hành đ ng c nh báo.
Trang: 46 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ứ ể ậ ả Icmp: là giao th c đ b t c nh báo.
ộ ấ ủ ị ườ i dùng có ỉ $EXTERNAL_NET: là đ a ch đích c a cu c t n công. Ng
ể ị th đ nh nghĩa (var $EXTERNAL_NET 192.168.1.0/24 )
ấ ứ Any: là port mà gói tin đi qua (b t c port nào).
ộ ấ ể ị ủ ị ỉ ế $HOME_NET: là đ a ch gói tin đi đ n c a cu c t n công. Ta có th đ nh
ộ ộ ả ạ ớ ợ ỉ ị nghĩa đ a ch này cho phù h p v i m ng n i b mà ta đang qu n lý.
ử ệ 7: là port mà l nh ping g i gói tin echo qua.
ệ ặ ả ả ấ Msg: xu t câu thông báo trong log ho c trên giao di n qu n lý c nh báo.
ạ ả ể Classtype: dùng đ phân lo i c nh báo.
ủ ả ố ỗ ộ Sid: s id c a câu rule c nh báo, m i rule có m t sid khác nhau.
ả C nh báo truy c p ậ website.
ả C nh báo truy c p ậ FTP.
ả C nh báo truy c p ậ Telnet.
ả C nh báo gói tin ICMP có kích th ướ l n.ớ c
ả ỗ C nh báo Dos l i SMB 2.0
ớ ả C nh báo chat v i các máy có IP lạ
Trang: 47 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
ộ ặ Ngăn ch n các trang Web có n i dung x uấ
Ủ Ả ƯỚ Ẫ ĐÁNH GIÁ C A GI NG VIÊN H NG D N
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
Trang: 48 Tr nh V n S n – 14NTC ơ ă ị
t
Tri n khai DEMO h th ng phát hi n xâm nh p IDS v i Snor ệ ố ể ệ ậ ớ
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
Trang: 49 Tr nh V n S n – 14NTC ơ ă ị