Catalog
Zscaler ZPA
Giúp người dùng hiểu cách gói Zscaler ZPA cung cấp nội dung Transformation, phát hiện và giám sát có thể tái sử dụng trong CMC SecOps.
Zscaler ZPA — User Guide
| Pack name | Zscaler ZPA |
| Version | 1.0.0 |
| Vendor | Zscaler |
| Capabilities | Transformation · Streaming Rules · Correlation Rules · Dashboard |
| Categories | Network Security · Zero Trust · Identity and Access Management · Cloud Security |
Overview
Pack cung cấp giám sát bảo mật cho Zscaler Private Access (ZPA) — giải pháp Zero Trust Network Access (ZTNA), bao gồm:
- Transformation — chuẩn hóa ZPA LSS (Log Streaming Service) dual-format: JSON connection logs và CSV user status logs sang ECS
- 5 streaming rules — phát hiện connection denied (no policy, SAML expired, generic), high data transfer, và user authenticated events
- 2 correlation rules — phát hiện denial burst cho một user và authentication từ nhiều quốc gia (impossible travel)
- 1 dashboard — tổng quan ZPA connections, denial analysis, authentication patterns, data transfer, phân bố theo country và protocol
Yêu cầu trước khi cài đặt
| Yêu cầu | Chi tiết |
|---|---|
| Zscaler ZPA | Subscription bao gồm Log Streaming Service (LSS) |
| LSS Configuration | Cấu hình LSS gửi log về log receiver của platform |
| Log format | ZPA LSS dual-format: JSON (connection logs) + CSV (user status logs) |
| Timestamp | ISO 8601 (2026-06-23T08:30:00.000Z) trong field timestamp của JSON envelope |
Định dạng log bắt buộc
{
"timestamp": "2026-06-23T08:30:00.000Z",
"host": "zpa-lss-receiver",
"message": "<ZPA LSS log line — JSON hoặc CSV>"
}
Transformation nhận diện tự động: nếu
messagebắt đầu bằng{→ parse JSON connection log; nếumessagechứazpa-lss:→ parse CSV user status log.
Ví dụ log hợp lệ
Connection log (JSON) — active connection:
{"timestamp":"2026-06-23T08:30:00.000Z","host":"zpa-lss-receiver","message":"{\"LogTimestamp\":\"Mon Jun 23 08:30:00 2026\",\"Customer\":\"example-corp\",\"ConnectionStatus\":\"active\",\"IPProtocol\":6,\"Username\":\"john.doe@example.com\",\"ServicePort\":443,\"ClientPublicIp\":\"203.0.113.45\",\"ClientCountryCode\":\"VN\",\"Policy\":\"Allow_ZPA\",\"Connector\":\"connector-sg-01\",\"Host\":\"internal-app.example.com\",\"Application\":\"internal-app\",\"AppGroup\":\"prod-apps\",\"TotalBytesRx\":1048576,\"TotalBytesTx\":2097152,\"TimestampConnectionStart\":\"Mon Jun 23 08:29:50 2026\",\"IdPName\":\"Okta\"}"}
Connection log (JSON) — denied (no policy):
{"timestamp":"2026-06-23T08:31:00.000Z","host":"zpa-lss-receiver","message":"{\"LogTimestamp\":\"Mon Jun 23 08:31:00 2026\",\"Customer\":\"example-corp\",\"ConnectionStatus\":\"rejected\",\"InternalReason\":\"No policy found\",\"IPProtocol\":6,\"Username\":\"jane.doe@example.com\",\"ServicePort\":80,\"ClientPublicIp\":\"198.51.100.20\",\"ClientCountryCode\":\"SG\",\"Policy\":\"\",\"Host\":\"restricted-app.example.com\",\"Application\":\"restricted-app\",\"TotalBytesRx\":0,\"TotalBytesTx\":0,\"TimestampConnectionStart\":\"Mon Jun 23 08:31:00 2026\",\"IdPName\":\"Okta\"}"}
User status log (CSV):
{"timestamp":"2026-06-23T08:32:00.000Z","host":"zpa-lss-receiver","message":"zpa-lss:Mon Jun 23 08:32:00 2026,example-corp,john.doe@example.com,authenticated,203.0.113.45,US,ZPA App,connector-us-01,Okta,"}
InternalReasonxác định nguyên nhân deny:"No policy found"→event.action = connection_denied,event.category = network;"SAML token expired"→event.category = authentication.
Cài đặt
- Vào Marketplace → tìm "Zscaler ZPA Security" → Install
- Kiểm tra Transformations →
zscaler-zpa-parserđang active - Kiểm tra Detection Rules → filter tag Zscaler → 7 rules đang enabled
- Mở Dashboards → Zscaler ZPA Security Overview
Transformation — Các trường ECS chính
| ECS Field | Nguồn | Mô tả |
|---|---|---|
event.action | Derived từ ConnectionStatus / InternalReason | connection_denied, connection_active, user_authenticated, user_disconnected |
event.outcome | Derived | failure (denied) / success (active/authenticated) |
event.category | Derived từ InternalReason | network (no policy) / authentication (SAML/token) |
user.email | Username (JSON) / CSV field | Email của ZPA user |
source.ip | ClientPublicIp | Public IP của ZPA client |
source.geo.country_iso_code | ClientCountryCode | Mã quốc gia của client (ISO 3166-1 alpha-2) |
destination.ip | Server (connector IP) | IP của ZPA connector / application server |
destination.port | ServicePort | Port của ứng dụng nội bộ |
network.transport | IPProtocol | tcp (6) hoặc udp (17) |
network.bytes | TotalBytesRx + TotalBytesTx | Tổng bytes transferred |
host.hostname | Host field | Hostname của ứng dụng nội bộ được truy cập |
observer.vendor | "Zscaler" | Luôn là Zscaler |
observer.product | "ZPA" | Luôn là ZPA |
Detection Rules
Streaming Rules (5 rules — real-time)
| # | Rule | Severity | Mô tả |
|---|---|---|---|
| 1 | ZPA Connection Denied — No Policy Found | Medium | Kết nối bị từ chối do không tìm thấy ZPA policy — nghi ngờ unauthorized access attempt |
| 2 | ZPA Connection Denied — SAML Token Expired | Medium | Kết nối bị từ chối do SAML token hết hạn — session management issue hoặc account compromise |
| 3 | ZPA Connection Denied — Any Reason | Low | Kết nối bị từ chối (generic) — bao phủ tất cả lý do deny |
| 4 | ZPA High Data Transfer Connection | Medium | Kết nối chuyển > 100 MB data — nghi ngờ data exfiltration qua ZPA tunnel |
| 5 | ZPA User Authenticated | Low | User xác thực thành công qua ZPA — baseline authentication monitoring |
Correlation Rules (2 rules — pattern)
| # | Rule | Severity | Mô tả | Ngưỡng | Lookback |
|---|---|---|---|---|---|
| 6 | ZPA Connection Denial Burst — Single User | High | Cùng một user bị deny ≥ 10 lần — brute force hoặc stolen credential đang được test | ≥ 10 events / user | 15 phút |
| 7 | ZPA User Authenticated from Multiple Countries | High | Cùng một user authenticate từ ≥ 2 quốc gia khác nhau — account takeover hoặc credential sharing | ≥ 2 countries / user | 20 phút |
Dashboard — Zscaler ZPA Security Overview
| # | Chart | Loại | Mô tả |
|---|---|---|---|
| 1 | ZPA Events Over Time | LINE | Trend ZPA connection events theo thời gian, phân loại theo action |
| 2 | Total Connection Denials | METRIC | Tổng số kết nối bị từ chối |
| 3 | Successful Authentications | METRIC | Tổng số user authentication thành công |
| 4 | Active Connections | METRIC | Tổng số kết nối active |
| 5 | User Disconnections | METRIC | Tổng số kết nối kết thúc |
| 6 | Event Action Distribution | PIE | Phân bố loại action (denied, active, authenticated, disconnected) |
| 7 | Denial by Category | PIE | Phân bố lý do deny (network policy vs authentication) |
| 8 | Top Users with Denials | BAR | User bị deny nhiều nhất |
| 9 | Authentication by Country | BAR | Phân bố authentication theo quốc gia |
| 10 | Top Destination Applications | BAR | Ứng dụng nội bộ được truy cập nhiều nhất |
| 11 | Connections by Protocol | BAR | Phân bố protocol (TCP vs UDP) |
| 12 | Recent ZPA Events | TABLE | 50 ZPA event gần nhất |
SOC Triage nhanh:
- Metric 2 (Total Denials) tăng đột ngột → xem Chart 8 (Top Users with Denials) → kiểm tra correlation rule 6
- Chart 9 (Auth by Country) → quốc gia bất thường (ngoài VN/SG) → kiểm tra correlation rule 7 (impossible travel)
- Rule 4 (High Data Transfer) alert →
network.bytes > 100MB→ nghi ngờ exfiltration qua ZPA tunnel - Chart 7 (Denial by Category) → nhiều authentication denials → SAML/IdP issue hoặc credential compromise
Troubleshooting
| Triệu chứng | Nguyên nhân | Cách xử lý |
|---|---|---|
| Không có event | ZPA LSS chưa cấu hình hoặc không gửi về platform | Kiểm tra ZPA Admin Portal → LSS configuration đang enabled và gửi về đúng endpoint |
| Chỉ có connection logs, không có user status | CSV log format không được nhận diện | Message phải bắt đầu bằng zpa-lss: cho CSV path |
user.email trống | Username field trống trong LSS log | Kiểm tra ZPA user có IdP identity đầy đủ — anonymous connections không có Username |
network.bytes = 0 | Connection bị deny trước khi transfer data | Behavior bình thường — denied connections không có data transfer |
source.geo.country_iso_code trống | ClientCountryCode không có trong LSS log | Kiểm tra ZPA LSS log format version — country code có từ ZPA version nhất định |
| Correlation rule 7 không trigger | Chỉ có 1 quốc gia trong 20 phút | Rule cần ≥ 2 distinct country codes trong lookback window cho cùng user |
Checklist transformation:
- JSON envelope có đủ:
timestamp,host,message - ZPA LSS đang stream log về log receiver của platform
- Connection log JSON format:
messagebắt đầu bằng{ - User status log CSV format:
messagechứazpa-lss: -
zscaler-zpa-parser.yamlđang active trong Transformations - ZPA user đã cấu hình IdP (Okta, Azure AD) để có
Usernamefield
Hỗ trợ
- Lỗi platform: Mở ticket tại SecOps support portal
- Góp ý pack: Dùng tính năng feedback trên trang Marketplace
- Tuning rule: Slack
#detection-engineering
Last updated: 2026-06-23 · Vendor: Zscaler · Author: secops-team