Chào các bạn.
Trong bài viết này, mình sẽ hướng dẫn các bạn:
Cấu hình card mạng trên máy ảo Parallels Desktop.
Cấu hình pfSense cho việc định tuyến.
Cấu hình dịch vụ Suricata trên pfSense.
Tạo bộ Rules tuỳ chọn cho việc kiểm thử cụ thể.
Yêu cầu cài đặt sẵn:
- 1 máy Client cho việc kiểm thử và cấu hình giao diện cho pfSense.
- 1 máy Kali Linux sử dụng cho việc xâm nhập máy Client.
- 1 máy ảo cho việc cài đặt pfSense có 2 card mạng. (1 cho NAT để kết nối ra ngoài Internet và 1 là VMNet2 cho việc nội bộ bên phía máy ảo).
Đầu tiên hãy cùng cài đặt máy ảo pfSense:
Chờ một vài giây để khởi động bộ cài đặt pfSense..
|
Hình 1 - Boot vào bộ cài đặt pfSense |
Sau khi boot vào thì các bạn nhấn
Enter chọn
Accept để chấp nhận điều khoản của phần mềm này.
|
Hình 2 - Giao diện trình cài đặt pfSense |
Nhấn
Enter lần nữa để tiếp tục cài đặt.
|
Hình 3 - Cài đặt pfSense |
Nhấn
Enter để
Select nếu bạn muốn sử dụng bộ gõ mặc định.
|
Hình 4 - Cài đặt pfSense |
Nhấn
Enter để trình cài đặt tự động phân vùng cho bạn hoặc bạn có thể chọn
Manual nếu muốn tự phân vùng ổ đĩa.
|
Hình 5 - Cài đặt pfSense |
Chờ một vài phút để trình cài đặt có thể tiến hành việc cài đặt.
|
Hình 6 - Cài đặt pfSense |
Giờ đây pfSense đã cài đặt hoàn tất và muốn hỏi bạn muốn mở shell để tinh chỉnh sau khi cài đặt không, mình không cần nên chọn No.
|
Hình 6 - Cài đặt pfSense |
Chọn
Reboot để khởi động lại máy.
|
Hình 7 - Cài đặt pfSense |
|
Hình 8 - Giao diện sau khi cài đặt pfSense |
Nếu giao diện card mạng của bạn được thiết lập sẵn IP như thế này là quá tốt. Nhưng nếu bạn muốn tự thiết lập IP cho mình nếu thêm card mạng mới hoặc tinh chỉnh địa chỉ IP?
Chọn số 1 để thiết lập giao diện card mạng.
|
Hình 9 - Thiết lập giao diện |
Ở đây mình không cần thiết lập VLAN trước nên chọn
n.
Sau đó chọn giao diện cho mạng WAN, ở đây mình sẽ chọn em0 cho WAN.
|
Hình 10 - Thiết lập giao diện |
Đối với mạng LAN thì mình để
em1 là card mạng thứ 2. Bạn nào muốn thiết lập cho vùng DMZ thì có thể thêm card mạng nữa..
|
Hình 11 - Thiết lập giao diện |
Để xác nhận thiết lập giao diện thì mình chọn y để hoàn tất.
|
Hình 12 - Thiết lập giao diện |
Thế là hoàn tất thiết lập cho giao diện card mạng.
Giờ mình sẽ thiết lập IP cho từng card mạng.
|
Hình 13 - Thiết lập IP cho giao diện |
Mình sẽ chọn giao diện WAN để cấu hình IP đầu tiên.
|
Hình 14 - Thiết lập IP cho giao diện |
Để cho khỏi bị trùng hoặc sai cấu trúc địa chỉ IP WAN thì mình sẽ để thiết lập thông qua DHCP để ra ngoài Internet. Mình chọn y.
|
Hình 15 - Thiết lập IP cho giao diện |
Mình không dùng IPv6 nên không cần thiết lập và không cần revert sang HTTP nên chọn
n.
|
Hình 16 - Thiết lập IP cho giao diện |
Thành công. Sau đó mình sẽ thiết lập IP cho giao diện mạng LAN.
|
Hình 17 - Thiết lập IP cho giao diện |
Thiết lập IPv4 cho giao diện mạng LAN, mình sẽ nhập địa chỉ
172.16.205.1
Làm như thế nào mình biết được nhập IP như thế nào?
Các bạn vào cấu hình card mạng của máy ảo để xem. Ở đây địa chỉ đường mạng của mình là 172.16.205.0
|
Hình 18 - Card mạng VMNet2 |
Nhập địa chỉ IP vào đây.
|
Hình 19 - Thiết lập IP cho giao diện |
Chọn Subnet mask cho giao diện, ở đây mình chọn
24 số bit.
|
Hình 20 - Thiết lập địa chỉ IP cho giao diện |
Mình muốn hiệu lực hoá DHCP và chọn dãy IP
172.16.205.2 -
172.16.205.254 cho DHCP.
|
Hình 21 - Thiết lập địa chỉ IP cho giao diện |
|
Hình 22 - Thiết lập địa chỉ IP cho giao diện |
Bạn sẽ dùng địa chỉ
https://172.16.205.1/ để truy cập vào trang giao diện web của pfSense để cài đặt và cấu hình các dịch vụ.
Mình sẽ qua máy ảo Client đang chạy Windows 7 để thiết lập cho cùng dãy địa chỉ với giao diện mạng LAN bên pfSense. Bằng cách chọn card mạng VMNet2 để dùng chung.
|
Hình 23 - Thay đổi card mạng của máy client |
Kiểm tra xem Windows 7 có được cấp phát đúng dãy IP hay không. Nếu không thì bạn phải nhập IP thủ công và kiểm tra lại set card mạng ảo đúng chưa đấy.
|
Hình 24 - Kiểm tra IP cấp phát cho Windows 7 |
Sử dụng địa chỉ mình có đính ở trên hoặc theo của bạn được cấp phát, vào bằng trình duyệt.
Đăng nhập với tên người dùng:
admin, mật khẩu là:
pfsense
|
Hình 25 - Truy cập web giao diện pfSense |
Nhấn
Next để tiếp tục.
|
Hình 26 - Cửa sổ thiết lập pfSense |
|
Hình 27 - Cửa sổ thiết lập pfSense |
Mình sẽ đặt DNS theo IP LAN máy pfSense và IP của Cloudflare.
|
Hình 28 - Cửa sổ thiết lập pfSense |
Chuyển múi giờ nếu bạn muốn.
|
Hình 29 - Cửa sổ thiết lập pfSense |
Kéo xuống dưới cùng và nhấn Next.
|
Hình 30 - Cửa sổ thiết lập pfSense |
|
Hình 31 - Cửa sổ thiết lập pfSense |
Thiết lập mật khẩu cho giao diện web pfSense, ở đây mình sẽ đặt là:
admin
|
Hình 32 - Cửa sổ thiét lập pfSense |
Sau khi thiết lập hoàn tất thì hãy nhấn
Reload để áp dụng thay đổi mới.
|
Hình 32 - Cửa sổ thiết lập pfSense |
|
Hình 33 - Cửa sổ thiết lập pfSense |
Cấu hình hoàn tất. Bạn sẽ được đưa về trang chính.
|
Hình 34 - Cửa số thiết lập pfSense |
Ngay ở màn hình chính, chọn mục
System và sau đó chọn
Package Manager
|
Hình 35 - Cài đặt dịch vụ |
Qua mục
Available packages và tìm kiếm "
suricata" và sau đó chọn
Install.
|
Hình 36 - Cài đặt dịch vụ |
Xác nhận cài đặt dịch vụ Suricata.
|
Hình 37 - Cài đặt dịch vụ |
Hãy chờ một vài phút để dịch vụ Suricata được cài đặt.
|
Hình 38 - Cài đặt dịch vụ |
Dịch vụ Suricata được cài đặt hoàn tất.
|
Hình 39 - Cài đặt dịch vụ |
Sau khi cài đặt thành công dịch vụ Suricata, bạn hãy nhìn lên thanh menu chọn Services và chọn Suricata để bắt đầu cấu hình dịch vụ.
|
Hình 40 - Thiết lập dịch vụ Suricata |
Trong phần Interfaces, hãy chọn Add để thêm giao diện cho Suricata quản lý.
|
Hình 41 - Thiết lập dịch vụ Suricata |
Ở đây mình sẽ
quản lý qua mạng LAN nên là sẽ sửa
Interface thành
LAN và
Description cũng vậy,
|
Hình 42 - Thiết lập giao diện LAN cho dịch vụ |
Kéo xuống dưới cùng và nhấn
Save.
|
Hình 43 - Thiết lập giao diện LAN cho dịch vụ |
Mình chọn qua tab
Global Settings, tích vào phần
Snort free Registered User or paid Subscribe rules rồi chọn
Sign up for a free Registered Users Account để lấy
Oinkcode cho phần dưới.
|
Hình 44 - Thiết lập dịch vụ Suricata |
Sau khi đăng ký và xác nhận tài khoản Snort thì bạn vào đường dẫn
https://www.snort.org/oinkcodes để lấy
Oinkcode như hình.
|
Hình 45 - Lấy Oinkcode |
Dán
oinkcode và
rules filename vào và sau đó bật luôn
Install Snort GPLV2 Community Rules.
|
Hình 46 - Thiết lập dịch vụ Suricata |
Kéo xuống cùng và nhấn
Save để lưu lại cấu hình.
|
Hình 47 - Thiết lập dịch vụ Suricata |
Bạn đã nhận được màn hình trắng, nhưng không sao hãy quay lại trang chủ của pfSense và quay lại Suricata.
Qua tab
Update và sau đó nhấn
Force Update để cập nhật Rules của Suricata.
|
Hình 48 - Thiết lập dịch vụ Suricata |
Chờ giây lát để Suricata cập nhật Rules.
|
Hình 49 - Thiết lập dịch vụ Suricata |
Cập nhật thành công Rules.
|
Hình 50 - Thiết lập dịch vụ Suricata |
Quay về tab
Interface, sau đó sửa
Interface LAN này bằng cách chọn vào icon bút chì.
|
Hình 50 - Thiết lập dịch vụ Suricata |
Sau đó qua tab
LAN Rules, chọn Category để thêm một số
Rules custom.
|
Hình 51 - Thiết lập dịch vụ Suricata |
Dưới đây là bộ Rules của phần Scan:
alert tcp any any -> any any (msg:"SYN FIN Scan"; flags: SF;sid:9000000;)
alert tcp any any -> any any (msg:"FIN Scan"; flags: F;sid:9000001;)
alert tcp any any -> any any (msg:"NULL Scan"; flags: 0;sid:9000002;)
alert tcp any any -> any any (msg:"XMAS Scan"; flags: FPU;sid:9000003;)
alert tcp any any -> any any (msg:"Full XMAS Scan"; flags: SRAFPU;sid:9000004;)
alert tcp any any -> any any (msg:"URG Scan"; flags: U;sid:9000005;)
alert tcp any any -> any any (msg:"URG FIN Scan"; flags: FU;sid:9000006;)
alert tcp any any -> any any (msg:"PUSH FIN Scan"; flags: FP;sid:9000007;)
alert tcp any any -> any any (msg:"URG PUSH Scan"; flags: PU;sid:9000008;)
alert tcp any any -> any any (flags: A; ack: 0; msg:"NMAP TCP ping!";sid:9000009;)
Dưới đây là bộ Rules của phần Ping:
alert icmp any any -> any any (msg:"ICMP Packet found";sid:9000000;)
alert icmp any any -> any any (itype: 0; msg: "ICMP Echo Reply";sid:9000001;)
alert icmp any any -> any any (itype: 3; msg: "ICMP Destination Unreachable";sid:9000002;)
alert icmp any any -> any any (itype: 4; msg: "ICMP Source Quench Message received";sid:9000003;)
alert icmp any any -> any any (itype: 5; msg: "ICMP Redirect message";sid:9000004;)
alert icmp any any -> any any (itype: 8; msg: "ICMP Echo Request";sid:9000005;)
alert icmp any any -> any any (itype: 11; msg: "ICMP Time Exceeded";sid:9000006;)
Bạn dán bộ Rules vào cho việc kiểm thử xâm nhập, mình sẽ dán bộ Rules cho phần Scan vào và sau đó nhấn
Save để lưu rules.
Sau đó chọn
Category: Active Rules để kiểm tra xem rules được thêm chưa nhé.
|
Hình 52 - Thiết lập dịch vụ Suricata |
Mình đã thành công thiết lập custom rules cho dịch vụ Suricata, hãy cùng mở máy để tấn công. Mình sẽ mở máy Kali Linux, lưu ý là phải để cùng card mạng nhé! (VMNet2).
Khởi động ZenMap lên. Mình biết được địa chỉ IP của máy Client Windows 7 là 172.16.205.3.
Mình có một số lệnh dùng cho nmap:
NULL Scan: nmap -sN -T4 -v 172.16.205.3
SYN FIN Scan: nmap -sS --scanflag SYNFIN -T4 -v 172.16.205.3
FIN Scan: nmap -sS --scanflag FIN -T4 -v 172.16.205.3
XMAS Scan: nmap -sX -T4 -v 172.16.205.3
URG Scan: nmap -sS --scanflag URG -T4 -v 172.16.205.3
URG FIN Scan: nmap -sS --scanflag URG -T4 -v 172.16.205.3
PUSH FIN Scan: nmap -sS --scanflag PSHFIN -T4 -v 172.16.205.3
URG PUSH Scan: nmap -sS --scanflag URGPSH -T4 -v 172.16.205.3
|
Hình 51 - Thực hiện lệnh nmap |
Quay lại cửa sổ web pfSense và vào tab
Alerts để xem ai xâm nhập.
|
Hình 52 - Cảnh báo xâm nhập |
Bạn cũng có thể vào
Logs View để xem ghi nhận lại sự cố xâm nhập nữa đấy.
|
Hình 53 - Xem ghi nhận xâm nhập |
Bạn có thể kiểm thử tiếp các lệnh nmap ở trên mình cung cấp nhé.
Và thế là bạn đã hoàn tất xây dựng và kiểm thử hệ thống phát hiện xâm nhập với dịch vụ Suricata bằng tường lửa pfSense rồi đó.
Chúc các bạn học tốt!