Chặn HTTP và HTTPS bằng IDP trên Juniper SRX: Cơ chế hoạt động và cấu hình LAB
Chặn HTTP và HTTPS bằng IDP trên Juniper SRX
Bài viết hướng dẫn cách sử dụng IDP (Intrusion Detection and Prevention) trên firewall Juniper SRX để phát hiện và chặn truy cập website dựa trên custom signature. Nội dung bao gồm cơ chế hoạt động, ví dụ cấu hình LAB và giải thích vì sao IDP vẫn có thể chặn được HTTPS thông qua TLS SNI inspection.
1. IDP trên Juniper SRX là gì
IDP (Intrusion Detection and Prevention) là tính năng bảo mật nâng cao trên thiết bị Juniper SRX Series giúp phát hiện và ngăn chặn các cuộc tấn công mạng bằng cách phân tích nội dung packet.
IDP hoạt động bằng cách:
-
kiểm tra payload của packet
-
so khớp với signature database
-
phát hiện các mẫu tấn công đã biết
-
thực hiện hành động như alert, drop hoặc reset session
IDP thường được sử dụng để phát hiện:
-
exploit vulnerability
-
malware traffic
-
command & control traffic
-
scanning attack
Ngoài các signature mặc định, quản trị viên có thể tạo custom signature để phát hiện các pattern cụ thể trong traffic.
2. Cơ chế chặn website bằng IDP
Trong một số trường hợp, IDP có thể được sử dụng để chặn truy cập website bằng cách phát hiện domain trong request.
Ví dụ khi người dùng truy cập:
http://facebook.com
HTTP request sẽ chứa header:
Host: facebook.com
Firewall sẽ thực hiện các bước:
-
inspect HTTP payload
-
tìm chuỗi domain trong request
-
match với IDP signature
-
drop session
Quá trình xử lý packet:
Client
│
HTTP Request
│
Juniper SRX
│
IDP Inspection
│
Match Signature
│
Drop Session
3. Topology LAB
Mô hình LAB đơn giản:
Client
|
LAN
|
SRX Firewall
|
Internet
Firewall sẽ kiểm tra traffic từ LAN ra Internet và áp dụng IDP inspection để phát hiện domain bị chặn.
4. Cấu hình IDP chặn website
4.1 Tạo IDP Policy
set security idp idp-policy BLOCK-WEB
4.2 Tạo custom attack signature
Ví dụ tạo signature phát hiện domain:
set security idp custom-attack name BLOCK-FACEBOOK attack-type http
set security idp custom-attack name BLOCK-FACEBOOK pattern "facebook.com"
Signature này sẽ tìm chuỗi facebook.com trong payload.
4.3 Tạo rule trong IDP policy
set security idp idp-policy BLOCK-WEB rulebase-ips rule BLOCK-FB match attacks BLOCK-FACEBOOK
set security idp idp-policy BLOCK-WEB rulebase-ips rule BLOCK-FB then action drop
Rule này sẽ:
-
match signature
-
drop session nếu phát hiện domain
4.4 Áp dụng IDP vào security policy
set security policies from-zone trust to-zone untrust policy INTERNET then permit application-services idp-policy BLOCK-WEB
Sau khi áp dụng policy, firewall sẽ inspect traffic đi từ LAN ra Internet.
5. Vì sao IDP vẫn có thể chặn HTTPS
Nhiều quản trị viên cho rằng HTTPS đã mã hóa nên firewall không thể đọc được nội dung. Tuy nhiên trong quá trình TLS handshake vẫn tồn tại một trường gọi là SNI (Server Name Indication).
Khi client mở kết nối HTTPS:
Client Hello
|
SNI: facebook.com
Trường SNI không bị mã hóa, vì server cần biết domain mà client muốn truy cập.
Do đó firewall vẫn có thể nhìn thấy:
facebook.com
Nếu IDP signature match domain này, firewall có thể chặn session.
Quá trình xử lý packet:
Client
│
TLS Client Hello
│
SNI = facebook.com
│
Juniper SRX
│
IDP match signature
│
Drop connection
Nhờ vậy HTTPS vẫn có thể bị chặn dù firewall không giải mã TLS.
6. Hạn chế của phương pháp này
Mặc dù có thể hoạt động trong nhiều trường hợp, phương pháp này vẫn tồn tại một số hạn chế.
6.1 Không đọc được nội dung HTTPS
Firewall chỉ thấy domain trong SNI, nhưng không đọc được:
-
URL path
-
HTTP header
-
nội dung payload
Ví dụ firewall chỉ thấy:
facebook.com
Nhưng không thấy:
facebook.com/video
facebook.com/login
6.2 Không phân biệt application
IDP không thể phân biệt các dịch vụ khác nhau của cùng một domain như:
-
Facebook Messenger
-
Facebook Video
-
Facebook CDN
6.3 Một số công nghệ mới có thể ẩn SNI
Một số công nghệ hiện đại có thể che giấu domain như:
-
Encrypted Client Hello (ECH)
-
DNS over HTTPS (DoH)
-
DNS over TLS (DoT)
Khi đó firewall sẽ không thể match domain.
7. Các giải pháp thay thế hiện nay
Trong các hệ thống mạng hiện đại, nhà sản xuất như Juniper Networks khuyến nghị sử dụng các công nghệ chuyên dụng hơn.
7.1 Web Filtering
Cho phép chặn website dựa trên:
-
category
-
domain
-
reputation database
7.2 Application Identification
Firewall có thể nhận diện ứng dụng Layer-7 như:
-
Facebook
-
YouTube
-
Dropbox
Sau đó quản trị viên có thể block trực tiếp application.
7.3 SSL Proxy Inspection
Firewall sẽ:
Decrypt TLS
↓
Inspect traffic
↓
Re-encrypt
Nhờ đó firewall có thể kiểm tra toàn bộ HTTPS traffic.
Kết luận
IDP trên Juniper SRX Series có thể được sử dụng để chặn truy cập website bằng custom signature, bằng cách phát hiện domain trong HTTP request hoặc TLS SNI.
Tuy nhiên phương pháp này chỉ phù hợp cho mục đích LAB hoặc nghiên cứu cơ chế hoạt động của IDP. Trong môi trường production, các giải pháp như Web Filtering, Application Identification và SSL Inspection thường được sử dụng để kiểm soát truy cập Internet hiệu quả hơn.
