3. Nội dung thuyết minh và tính toán
2.5.2. Blocking Agent
Phần này sẽ có trách nhiệm tương tác trực tiếp với các tường lửa thay cho phần output plug-in trên Snort. Nếu Snort phát hiện một cuộc tấn công phù hợp với bất kỳ một quy tắc nào như trong ví dụ trên nó sẽ thiết lập một phiên mã hóa TCP để gửi một thông điệp chứa các IP nguồn từ các gói tin gây ra cảnh báo + thời gian mà địa chị IP đó bị cấm.
Vì phiên mã hóa TCP đó sẽ giao tiếp thông qua port 898 (ho ặc bất cứ port nào được cấu hình) nên cầm đảm bảo là tường lửa cho phép giao tiếp trên port này. Trạng thái của tất cả các địa chỉ IP bị cấm sẽ được đặt trong tập tin /var/log/snortsam.state. Tập tin cấu hình của SnortSam đặt tại /etc/snortsam.conf dưới đây là một số tùy chọn quan trọng có thể được sử dụng trong tập tin cấu hình.
accept: Cho phép các cảm biến cụ thể của Snort có thể giao tiếp với phần
agent trên tường lửa. Nhiều cảm biến cũng có thể được cấu hình với tùy chọn này cùng với các khóa dùng để mã hóa riêng: accept <host>/<mask>,<key>
29
defautlkey: Thiết lập khóa mặc định được sử dụng cho tất cả các cảm biến.
port: Thiết lập port lắng nghe từ các cảm biến của Snort. Mặc định là port
TCP 898.
dontblock: Chỉ định một host hoặc một mạng mà SnortSam sẽ bỏ qua ngay
cả khi phát hiện một cuộc tấn công từ nguồn này.
logfile: Chỉ định đường dẫn lưu logfile mà SnortSam sẽ ghi. Tập này cũng
liệt kê tất cả các địa chỉ IP mà SnortSam đã chặn kèm theo thời gian chặn. daemon: Chạy agent như một dịch vụ.
bindip: Giới hạn phần agent trên tường lửa lắng nghe trên một địa chỉ IP với
một card mạng nhất định. Điều này làm giảm khả năng tấn công các agent vì giới hạn số đường kết nối tới các agent đó.
<firewall><interface>: Chỉ định loại tường lửa cụ thể mà agent đang chạy
trên đó và cổng giao tiếp mà các luật nên thêm vào.
keyinterval <time>: Tùy chọn này cho phép các agent yêu c ầu hoặc tạo các
khóa mã hóa mới sau mỗi khoảng thời gian nào đó. Mặc định nếu không thiết lập là 4 tiếng.
email <smtpserver>:<port> <recipient> <sender>: Tùy chọn này cho phép xác định máy chủ email. Khi một địa chỉ nào đó bị block, SnortSam sẽ gửi thông báo tới địa chỉ email được cấu hình.
Ví dụ: accept 192.168.20.3, sn0r3sam bindip 192.168.20.1 iptables eth0 logfile /var/log/snortsam.log daemon
30
CHƯƠNG 3
PREPROCESSORS VÀ OUTPUT PLUG-INS
3.1. Preprocessors
Như trong chương phía trên, chúng ta đã có những hiểu biết cơ bản về cấu trúc và cách làm việc của Snort. Ngoài ra cũng có cái nhìn tổng quát về preprocessors trong Snort. Vậy chức năng chính của preprocessor là gì?
Preprocessors được giới thiệu lần đầu trong phiên bản 1.5 của Snort. Ban đầu nó được biết đến với chức năng bình thường hóa các giao thức mạng. Ngày nay,
preprocessor không chỉ đảm nhiệm chức năng bình thường hóa các giao thức nữa mà nó còn có thể phát hiện xâm nhập dựa trên sự bất thường và tạo ra những cảnh báo riêng. Trong thực tế Snort nổi bật với chức năng phát hiện xâm nhập dựa theo mẫu và các dấu hiệu có sẵn. Các plug-in preprocessors được bổ sung vào ngoài mục đích tạo đầu ra cho detection engine mà nó còn có chức năng tạo ra các c ảnh báo thông qua việc phát hiện các điểm bất thường trong các lưu lượng mạng đi vào hệ thống.
Phần này sẽ tìm hiểu một vài tiền xử lý quan trọng, đ ặc biệt là các tiền xử lý tái hợp các gói tin, một hình thức có thể giúp các attacker lẩn trốn khỏi các hệ thống phát hiện xâm nhập.
Các preprocessors cực kỳ hữu ích khi phát hiện các cuộc tấn công phân mảnh gói tin nhằm mục đích đánh lừa hệ thống phát hiện xâm nhập như Tiny Fragment Attack, Overlaping Fragment Attack, Teardrop Fragment Attack.
31
Hình 3.1: Quá trình tiền xử lý.