Catalog
Zscaler ZPA — User Guide
Zscaler ZPA — User Guide
| Pack name | Zscaler ZPA |
| Version | 1.0.0 |
| Vendor | Zscaler |
| Capabilities | Parser · 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:
- Parser — 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>"
}
Parser 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 Parsers →
zscaler-zpa-parserđang active - Kiểm tra Detection Rules → filter tag Zscaler → 7 rules đang enabled
- Mở Dashboards → Zscaler ZPA Security Overview
Parser — 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 parser:
- 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 Parsers - 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