[Question] snort inline trên fc7 |
25/03/2008 04:24:25 (+0700) | #1 | 121021 |
tdhoaz
Member
|
0 |
|
|
Joined: 24/03/2008 16:54:30
Messages: 11
Offline
|
|
hiện tại em đang làm snort inline trên fc7 và em gặp trở ngại như sau
Cấu hình:
chạy trên máy ảo VMware 5.5. máy ảo chỉ chạy http ( chỉ có 1 trang index)
chỉ chạy snort inline, ko có bất kì database nào.
iptables em cấu hình như sau:
#iptables - A INPUT -p tcp --dport 80 -j QUEUE
file snort_inline.conf ko có thay đổi gì, hầu hết là default, em chỉ bỏ bớt những rule kia. chỉ chạy 1 rule test.rules.
Nội dung file test.rules
alert tcp any any -> any 80 ("msg : canh bao httpd"; sid :1000002
đã kích hoạt ip_queue
modprobe ip_queue
lsmod | grep ip_queue
-Khởi động snort_inline ko bị lỗi. Chạy httpd ko lỗi ( máy thật truy cặp web của máy ảo bình thường nếu không chạy iptables )
trở ngại là khi chạy snort inline và iptables thì máy thật ko truy cập web được. máy ảo vẫn truy cập được. Đọc tài liệu thì đc biết lúc đó các request đang nằm trong queue được snort inline xử lý, ko đến đc dịch vụ http. Em bắt gói thì thấy xuất hiện các request đó. Tiếp tục xem tài liệu thì thấy nếu chạy snort inline ở chế độ deamon thì các request sẽ được http xử lý. nhưng em chạy thì thấy ko như vậy., máy thật vẫn ko truy cập đc site trên máy ảo.
Dòng lệnh em chạy snort:
#snort_inline -c /etc/snort_inline/snort_inline.conf -Q -l /home -v
Chạy chế độ ngầm
#snort_inline -c /etc/snort_inline/snort_inline.conf -Q -l /home -v -D
Em test icmp và upd (nslookup) thì thấy hoạt động tốt. chỉ có cái httpd này thì ko chạy. ko hiểu tại sao nữa
mong các anh giúp em giải quyết |
|
|
|
|
[Question] Re: snort inline trên fc7 |
25/03/2008 20:58:51 (+0700) | #2 | 121116 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
Đụng tới snort, snort-inline, iptables, packet sniff........ nên dùng Linux server thật sự. Đừng thử nghiệm mấy cái này trên virtual machine như kiểu VMWare bởi vì nó trực tiếp đụng chạm đến những hạn chế về networking trên Windows (chạy vmware) và ứng dụng networking của chính vmware.
Fix những trở ngại của bạn không phải fix trở ngại của snort-inline mà chính là fix trở ngại của vmware --> sai mục đích bạn cần.
Thân mến. |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Re: snort inline trên fc7 |
29/03/2008 00:58:40 (+0700) | #3 | 121764 |
|
Phó Hồng Tuyết
Member
|
0 |
|
|
Joined: 20/04/2007 20:02:10
Messages: 275
Location: Nơi Sâu Thẳm Tâm Hồn
Offline
|
|
conmale wrote:
Fix những trở ngại của bạn không phải fix trở ngại của snort-inline mà chính là fix trở ngại của vmware --> sai mục đích bạn cần.
Thân mến.
Một lời đáng giá ngàn vàng. ( em loay hoay mãi với cái APF - đọc cái này hiểu thêm nhiều điều)
|
|
"Một người thành công không có ý nghĩ đổ thừa thất bại do ...." |
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 02:40:45 (+0700) | #4 | 122324 |
tdhoaz
Member
|
0 |
|
|
Joined: 24/03/2008 16:54:30
Messages: 11
Offline
|
|
Em xin cám ơn anh conmale. Qua 1 tuần cấu hình, em đã thực hiện như sau:
- tiếp tục cài máy ảo trên phiên bản VW 6.0, kết quả thu đc vẫn ko có gì khả quan hơn.
- Cài trên máy thật, máy chạy fc 8 có cấu hình snort inline tương tự như trên. Trên máy này em cho chạy http cũng chỉ với 1 trang web index.html . (không dùng dns mà dùng trực tiếp địa chỉ ip)
Khi cho chạy snort ở daemon, file alert liên tục hiện thông báo có gói request từ máy test bên ngoài. nhưng ở máy test vẫn ko load được trang web. nếu bỏ iptables đi thì máy test load được bình thường.
vậy vấn đề mô hình mạng đc giải quyết nhưng vẫn bị lỗi cũ. mong anh góp ý giúp em
cảm ơn anh.
|
|
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 05:27:50 (+0700) | #5 | 122355 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
tdhoaz wrote:
Em xin cám ơn anh conmale. Qua 1 tuần cấu hình, em đã thực hiện như sau:
- tiếp tục cài máy ảo trên phiên bản VW 6.0, kết quả thu đc vẫn ko có gì khả quan hơn.
- Cài trên máy thật, máy chạy fc 8 có cấu hình snort inline tương tự như trên. Trên máy này em cho chạy http cũng chỉ với 1 trang web index.html . (không dùng dns mà dùng trực tiếp địa chỉ ip)
Khi cho chạy snort ở daemon, file alert liên tục hiện thông báo có gói request từ máy test bên ngoài. nhưng ở máy test vẫn ko load được trang web. nếu bỏ iptables đi thì máy test load được bình thường.
vậy vấn đề mô hình mạng đc giải quyết nhưng vẫn bị lỗi cũ. mong anh góp ý giúp em
cảm ơn anh.
Máy test "bên ngoài" là bên ngoài nào? Nó muốn truy cập trang web nào? trang web ấy có bị iptables hạn chế gì không?
Bồ trình bày rõ hơn đường đi của packets xem? |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 08:01:41 (+0700) | #6 | 122378 |
tdhoaz
Member
|
0 |
|
|
Joined: 24/03/2008 16:54:30
Messages: 11
Offline
|
|
máy cài snort inline và máy test bên ngoài đc nối chung qua switch ( cùng ip address lan )
trên máy cài snort có chạy luôn httpd với chỉ 1 trang index.html
iptables trên máy cài snort inline chỉ có duy nhất:
iptables - I INPUT -p tcp --dport 80 -j QUEUE
các bảng khác đều accpet cả.
Nếu ko dựng iptables lên thì máy ngoài truy cập đc bình thường. nếu dựng iptables lên với chain trên thì máy ngoài ko truy cập được. máy chạy snort truy cập được bình thường.( trong file log full xuất hiện thông báo ip src và dest trùng nhau khi máy cài snort inline truy cập web). Còn nếu máy ngoài truy cập thì chỉ thấy xuất hiện các gói request với địa chỉ nguồn là địc chỉ máy ngoài. máy ngoài sau 1 hồi load thì ko truy cập được trong khi máy cài snort inline thì truy cập bình thường. |
|
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 11:54:51 (+0700) | #7 | 122418 |
subnetwork
Member
|
0 |
|
|
Joined: 05/09/2004 06:08:09
Messages: 1666
Offline
|
|
tdhoaz wrote:
máy cài snort inline và máy test bên ngoài đc nối chung qua switch ( cùng ip address lan )
trên máy cài snort có chạy luôn httpd với chỉ 1 trang index.html
iptables trên máy cài snort inline chỉ có duy nhất:
iptables - I INPUT -p tcp --dport 80 -j QUEUE
các bảng khác đều accpet cả.
Nếu ko dựng iptables lên thì máy ngoài truy cập đc bình thường. nếu dựng iptables lên với chain trên thì máy ngoài ko truy cập được. máy chạy snort truy cập được bình thường.( trong file log full xuất hiện thông báo ip src và dest trùng nhau khi máy cài snort inline truy cập web). Còn nếu máy ngoài truy cập thì chỉ thấy xuất hiện các gói request với địa chỉ nguồn là địc chỉ máy ngoài. máy ngoài sau 1 hồi load thì ko truy cập được trong khi máy cài snort inline thì truy cập bình thường.
- Kiểm tra lại cấu hình Apache (đảm bảo nó Start thành công)
- Xem lại đoạn rule của iptables .
iptables - I INPUT -p tcp --dport 80 -j QUEUE
Khả năng lớn nhất sai là ở chổ này .
|
|
Quản lý máy chủ, cài đặt, tư vấn, thiết kế, bảo mật hệ thống máy chủ dùng *nix
http://chamsocmaychu.com |
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 16:58:23 (+0700) | #8 | 122459 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
tdhoaz wrote:
máy cài snort inline và máy test bên ngoài đc nối chung qua switch ( cùng ip address lan )
trên máy cài snort có chạy luôn httpd với chỉ 1 trang index.html
iptables trên máy cài snort inline chỉ có duy nhất:
iptables - I INPUT -p tcp --dport 80 -j QUEUE
các bảng khác đều accpet cả.
Nếu ko dựng iptables lên thì máy ngoài truy cập đc bình thường. nếu dựng iptables lên với chain trên thì máy ngoài ko truy cập được. máy chạy snort truy cập được bình thường.( trong file log full xuất hiện thông báo ip src và dest trùng nhau khi máy cài snort inline truy cập web). Còn nếu máy ngoài truy cập thì chỉ thấy xuất hiện các gói request với địa chỉ nguồn là địc chỉ máy ngoài. máy ngoài sau 1 hồi load thì ko truy cập được trong khi máy cài snort inline thì truy cập bình thường.
Vấn đề nằm ở chỗ dòng màu đỏ ở trên. Đối với iptables / netfilter, khi một gói tin đi vào QUEUE target, nó sẽ nằm đó cho đến khi có một cơ chế nào khác làm gì với nó. Nếu không, nó chẳng có gì thay đổi cả. QUEUE target (kernel space) là chỗ cho phép application nào đó (user space) tương tác với packets (nằm trên queue). Ví dụ, em viết thêm một ứng dụng cản lọc ở tần application, một proxy chẳng hạn. Khi packets được đưa vào QUEUE, chúng nằm đó đợi và proxy của em sẽ vào QUEUE ấy mà lấy các packets ra để xem xét rồi mới forward nó đi đâu đó hoặc làm gì đó với chúng.
Trong trường hợp cụ thể với snort inline này, packets đi đến cổng 80 trên máy Linux sẽ bị lưu ở QUEUE. Sau đó, ứng dụng snort inline phải làm gì đó cụ thể với packets nằm trong QUEUE. Nếu không, chẳng có chuyện gì xảy ra cả. Em đọc lại thật kỹ tài liệu mình đang dùng. Đặc biệt chú ý các cấu hình và luật của snort inline. Vấn đề ở đây chẳng có gì để giải quyết cả mà chỉ nằm ở chỗ em chưa hiểu nguyên lý hoạt động của iptables + snort inline mà thôi. |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 23:04:21 (+0700) | #9 | 122505 |
tdhoaz
Member
|
0 |
|
|
Joined: 24/03/2008 16:54:30
Messages: 11
Offline
|
|
thế này anh ạ, trước khi bị cái tcp này em có test với icmp. em cũng cho các packet icmp vào queue. nếu ko cho snort chạy thì ko ping đc từ đó em rút ra là sau phải có 1 chương trình nào đó xử lý các packet trong queue, còn không thì chúng cứ nằm trong đó. tuy nhiên lúc đó em không cho snort chạy ở chế độ daemon. điều em ko hiểu là tại sao với icmp thì snort chekc xong thì nó chuyển đi đâu đó cho máy phát sinh reply còn cái http request thì lại không như thế. snort giải quyết xong ko chuyển đi đâu cả hoặc có chuyển nhưng ko đến nơi. emcũng biết là các protocol khác nhau thì có các cách giải quyết khác nhau nhưng về cơ bản củng như nhau cả. snort giải quyết xong thì sẽ chuyển đi đâu đó.
em sẽ đọc thêm tài liệu về việc này. xin cảm ơn anh conmale và tranhuuphuoc đã góp ý cho em
|
|
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 23:15:05 (+0700) | #10 | 122511 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
tdhoaz wrote:
thế này anh ạ, trước khi bị cái tcp này em có test với icmp. em cũng cho các packet icmp vào queue. nếu ko cho snort chạy thì ko ping đc từ đó em rút ra là sau phải có 1 chương trình nào đó xử lý các packet trong queue, còn không thì chúng cứ nằm trong đó. tuy nhiên lúc đó em không cho snort chạy ở chế độ daemon. điều em ko hiểu là tại sao với icmp thì snort chekc xong thì nó chuyển đi đâu đó cho máy phát sinh reply còn cái http request thì lại không như thế. snort giải quyết xong ko chuyển đi đâu cả hoặc có chuyển nhưng ko đến nơi. emcũng biết là các protocol khác nhau thì có các cách giải quyết khác nhau nhưng về cơ bản củng như nhau cả. snort giải quyết xong thì sẽ chuyển đi đâu đó.
em sẽ đọc thêm tài liệu về việc này. xin cảm ơn anh conmale và tranhuuphuoc đã góp ý cho em
ICMP hoặc HTTP hoặc giao thức nào đã được iptables / netfilter kiểm soát và đưa vào QUEUE thì đều phải có một bộ phận nào đó ở user space lấy gói tin ra và xử lý. Nếu không chẳng có chuyện gì xảy ra cả. Việc ICMP của em được snort xử lý là vì đã có rule nào đó xử lý ở tầng snort.
Đọc kỹ lại đoạn này:
What is snort_inline?
snort_inline is basically a modified version of Snort that accepts packets from iptables and IPFW via libipq(linux) or divert sockets(FreeBSD), instead of libpcap. It then uses new rule types (drop, sdrop, reject) to tell iptables/IPFW whether the packet should be dropped, rejected, modified, or allowed to pass based on a snort rule set. Think of this as an Intrusion Prevention System (IPS) that uses existing Intrusion Detection System (IDS) signatures to make decisions on packets that traverse snort_inline.
|
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Re: snort inline trên fc7 |
01/04/2008 23:26:56 (+0700) | #11 | 122512 |
subnetwork
Member
|
0 |
|
|
Joined: 05/09/2004 06:08:09
Messages: 1666
Offline
|
|
tdhoaz wrote:
thế này anh ạ, trước khi bị cái tcp này em có test với icmp. em cũng cho các packet icmp vào queue. nếu ko cho snort chạy thì ko ping đc từ đó em rút ra là sau phải có 1 chương trình nào đó xử lý các packet trong queue, còn không thì chúng cứ nằm trong đó. tuy nhiên lúc đó em không cho snort chạy ở chế độ daemon. điều em ko hiểu là tại sao với icmp thì snort chekc xong thì nó chuyển đi đâu đó cho máy phát sinh reply còn cái http request thì lại không như thế. snort giải quyết xong ko chuyển đi đâu cả hoặc có chuyển nhưng ko đến nơi. emcũng biết là các protocol khác nhau thì có các cách giải quyết khác nhau nhưng về cơ bản củng như nhau cả. snort giải quyết xong thì sẽ chuyển đi đâu đó.
em sẽ đọc thêm tài liệu về việc này. xin cảm ơn anh conmale và tranhuuphuoc đã góp ý cho em
- Khi sử dụng Snort Inline thì cần chú ý đến 2 cái module sau cho thằng kernel ip_queue module và ip_queue đảm bảo nó được load
- Về phần rule của snort tôi xem sơ qua không thấy phát hiện điểm sai nhưng chú ý ở mấy chổ any (bất kỳ) nên thay nó thành 1 cái gì đó cụ thể hơn
- Trong rule của iptables : -I INPUT hay -A INPUT hay -A OUTPUT
Snort Inline nó có chức năng như thế này, nó sẽ xem xét các package đi qua iptables (lúc này các package đã được thằng iptables xữ lý rồi) và package đưa đến QUEUE target . Cuối cùng Snort chỉ có "xữ" nó mà thôi .
Vài ý kiến trao đổi
|
|
Quản lý máy chủ, cài đặt, tư vấn, thiết kế, bảo mật hệ thống máy chủ dùng *nix
http://chamsocmaychu.com |
|
|
|
[Question] Re: snort inline trên fc7 |
09/04/2008 13:06:41 (+0700) | #12 | 124175 |
tdhoaz
Member
|
0 |
|
|
Joined: 24/03/2008 16:54:30
Messages: 11
Offline
|
|
Em xin cảm ơn 2 mod đã quan tâm giúp em đề tài này
nhiều ngày qua, em đã dựng mô hình và phát hiện ra có lẽ lỗi nằm ở dòng lệnh chạy snort_inline:
#snort_inline -c /etc/snort_inline/snort_inline.conf -Q -l /home -v
vì dựng mô hình nên cái iptable trên máy B có thay đổi đôi chút
iptables -I FORWARD -p tcp -j QUEUE
mô hình của em có 3 máy. 1 máy chạy snort inline có 2 card mạng (B). 1 máy web server nằm 1 bên (C) và 1 máy test(A).
A --- 10.0.0.0/8 ----B---- 192.168.1.0/24 --- C
em rút ra kết luận là khi chạy snort ở chế độ -v trong queue thì máy A ko truy cập web từ máy C được, mặc dù chạy trong chế độ daemon.
còn nếu em chỉ chạy:
#snort_inline -c /etc/snort_inline/snort_inline.conf -Q -l /home
thì máy A truy cập bình thường, hơi chậm vì request nằm trong queue. Điều em ko hiểu là tại sao khi tắt chế độ packet sniffer đi thì máy A lại truy cập web bình thường. có khả năng snort niff cái packet rồi ăn nó mất luôn không. Theo em nghĩ thì packer sniffer chỉ là lấy 1 bản copy của cái packet thôi. vậy có khả năng cái snort khi sniff cái packet trong queue rồi đưa nó đi mất luôn hay không ? nếu như vậy thì tại sao icmp và udp lại không bị. nhiều câu hỏi wá ( |
|
|
|
|
|