Hướng dẫn cài đặt Suricata trên Ubuntu 18.04

Suricata - An Open Source IDS / IPS / NSM engine - Hacking Reviews

Suricata là một hệ thống phát hiện xâm nhập dựa trên mã nguồn mở và nó được phát triển bởi Open Information Security Foundation (OISF). Là một công cụ đa luồng, Suricata cung cấp tăng tốc độ và hiệu quả trong việc phân tích lưu lượng mạng. Nó được thiết kế để tương thích với các thành phần an ninh mạng hiện có.

Trong mô hình lab lần này, mình sẽ hướng dẫn cài đặt và cấu hình Suricata tích hợp với ELK. Trước tiên, mình sẽ hướng dẫn các bạn cách cài đặt Suricata trên Ubuntu 18.04. Các bước cài đặt và cấu hình ELK bạn có thể tham khảo tại đây.

1. Mô Hình

Mô hình lab:

Mô tả:

Switch Core đóng vai trò đứng đầu cả mạng, tất cả kết nối ra vào mạng đều phải đi qua nó.

Tại máy ảo Suricata có card eth1, được sử dụng kỹ thuật mirror port để tất cả các gói tin ra vào mạng khi đi qua Switch đồng thời được gửi về eth1.

Các máy ảo Suricata và ELK có card eth0 kết nối tới 1 cùng 1 Switch ảo để chúng có thể giao tiếp với nhau qua mạng local.

Khi suricata bắt được các gói tin ra vào mạng, và đưa ra cảnh báo về những kết nối bất thường. Các cảnh báo đó được gửi về ELK để phân tích thông qua 1 mạng local.

IP Planning:

2. Cài đặt

2.1 Cài đặt Suricata

Update ubuntu và cài đặt các gói cần thiết :

apt update -y
sudo apt -y install libpcre3 libpcre3-dbg libpcre3-dev build-essential autoconf \
automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev \
libcap-ng-dev libcap-ng0 make libmagic-dev libjansson-dev libjansson4 pkg-config wget

Cài đặt công cụ tự động cập nhật rule Suricata:

apt install python-pip -y
pip install --upgrade suricata-update
ln -s /usr/local/bin/suricata-update /usr/bin/suricata-update

Suricata hoạt động như 1 IDS, để nó có bao gồm cả các tính năng của IPS:

apt -y install libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0

Tiếp theo ta sẽ tải về Suricata phiên bản 4.1 và giải nén tập tin.:

cd
wget https://www.openinfosecfoundation.org/download/suricata-4.1.2.tar.gz
tar xzf suricata-4.1.2.tar.gz

Điều hướng đến thư mục và biên dịch suricata với khả năng IPS:

cd suricata-4.1.2
./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var

Biên dịch và cài đặt Suricata 4.1:

make
make install-full

Sau khi cài đặt, file cấu hình được đặt tại /etc/suricata/suricata.yaml

2.2 Cấu hình Suricata

Cấu hình tự động cập nhật rule

Cài đặt Oinkmaster :

apt install perl
wget http://nchc.dl.sourceforge.net/project/oinkmaster/oinkmaster/2.0/oinkmaster-2.0.tar.gz
tar zxvf oinkmaster-2.0.tar.gz
cd oinkmaster-2.0
cp oinkmaster.pl /usr/local/bin/
chmod +x /usr/local/bin/oinkmaster.pl
cp oinkmaster.conf /etc/suricata/

Ghi vào file oinkmaster.config đường dẫn download các rule có sẵn.

echo "url = http://rules.emergingthreats.net/open/suricata/emerging.rules.tar.gz" >> /etc/suricata/oinkmaster.conf

Tạo thư mục chứa rule và chạy oinkmaster để nó tự động tải và cập nhật các rule.

mkdir /etc/suricata/rules
oinkmaster.pl -C /etc/suricata/oinkmaster.conf -o /etc/suricata/rules

Sau đó kiểm tra lại xem các rule đã được cập nhật vào thư mục rules hay chưa.

ls /etc/suricata/rules/*.rules

Khi ta thấy các rule đã được cập nhật như sau là đã thành công:

image

Tiếp theo ta sử dụng crontab để các rule sẽ tự động được update vào mỗi 0h chủ nhật hàng tuần.

echo "0 0 * * sun root oinkmaster.pl -C /etc/suricata/oinkmaster.conf -o /etc/suricata/rules" >> /etc/crontab

Cấu hình Suricata

Truy cập vào file /etc/suricata/suricata.yaml và chỉnh sửa 1 số thông số cấu hình sau:

  • Chỉnh sửa dải mạng HOME_NET của bạn. Đó chỉnh là những dải mạng mà bạn đang sử dụng.
  • Khai báo interface được mirror port để nhận tất cả các traffic đi qua Switch.
  • Khai báo đường dẫn tới thư mục chứa rule và khai báo những file rule mà bạn sẽ sử dụng cho hệ thống của mình.

Sau khi khai báo các cấu hình cho Suricata, lưu lại và thoát.

Tiếp theo ta sẽ khai báo để Suricata chạy như 1 chương trình daemon trong systemd.

  • Tạo file systemd cho suricata và ghi vào file cấu hình nội dung sau.
cat <<EOF> /lib/systemd/system/suricata.service
[Unit]
Description=suricata NIDS Daemon
After=syslog.target network.target

[Service]
Type=simple
ExecStart=/usr/bin/suricata -c /etc/suricata/suricata.yaml -i eth1

[Install]
WantedBy=multi-user.target
EOF

Lưu ý: đổi eth1 bằng card mạng mà bạn sử dụng để mirror port Switch.

Load lại daemon và khởi động suricata.

systemctl daemon-reload
systemctl start suricata
systemctl enable suricata

Sau đó kiểm tra lại trạng thái dịch vụ Suricata.

systemctl status suricata 

Như vậy ta đã cài đặt thành công Suricata 4.1.2 trên Ubuntu 18.04.

Trên đây là phần cài đặt Suricata 4.1.2 trên Ubuntu 18.04. Tiếp theo ta sẽ cài đặt và cấu hình ELK để Suricata đẩy log về nó.

Add a Comment

Your email address will not be published. Required fields are marked *