Zeek
Free · OSSNetwork & IDS
Turns raw traffic into the searchable record of exactly what happened.
Zeek homepage ↗Turns raw network traffic into searchable structured logs — every DNS query, every TLS handshake, every HTTP request. Where Suricata says "this looks bad," Zeek lets you reconstruct exactly what happened.
Production-shippable, newer or thinner field coverage. Watch the changelog before pinning compliance claims.
What it watches
- Connection logs — every flow, who talked to whom, for how long
- DNS, HTTP, TLS, SSH, SMB transaction logs
- File transfers + extracted-file hashes
- Long-lived / beaconing connections
- Certificate + JA3 anomalies
MITRE ATT&CK coverage
Tactics this connector gives CyberCLI visibility into.
Every alert this connector surfaces
4 event types
Every matrix-covered event_type on the passthrough lane — pinned by the engine's coverage matrix.
The right column shows the operator-friendly phrase the dashboard renders. High-severity
AI-lane signals are summarized in What it watches above (Warden + Herald
handle those); the rest take the substrate's passthrough lane (no AI tokens burned).
| event_type | dashboard renders |
|---|---|
| connection | Network connection on zeek |
| dns | DNS activity on zeek |
| notice | IDS notice on zeek |
| zeek_other | Zeek activity on zeek |
What it helps you catch
What you'd see in CyberCLI
illustrativeWhen Suricata says 'this looks bad,' Zeek lets you reconstruct the whole session — the forensic timeline of the intrusion.
Routed to Warden (triage) → Knight (detection) → Scribe (record)
⛓ every step hash-chained · replayable
What CyberCLI reads from Zeek
audit our mathZeek doesn't ship signatures — it ships analysis. The 39 fields we read carry the network story across log types: the connection 4-tuple (src_ip/dst_ip/ports/proto) plus Zeek's uid for cross-log correlation, conn.log forensic detail (service, conn_state, history, orig/resp bytes, duration), dns.log query family (query_name, qtype, rcode_name, answers), and the notice.log analyst layer (note, msg, sub, peer_descr, fully-qualified actions) with a derived vendor_remediation_action so the operator reads drop/notify/log without parsing Zeek enums.
Full field index · 39 fields ↓
.action.answers.conn_history.conn_state.cybercli_class.cybercli_external_id.cybercli_low_signal.cybercli_parse_status.cybercli_wire_format.dst_alt.dst_ip.dst_port.duration_sec.event_id.event_timestamp.event_type.local_orig.local_resp.message_text.note.notice_actions.orig_bytes.peer_descr.proto.query_class.query_name.query_type.rcode_name.resp_bytes.rule_id.rule_level.src_alt.src_ip.src_port.sub.uid.vendor_remediation_action.zeek_log.zeek_service MITRE techniques typically mapped
- T1046 ↗
Network Service DiscoveryDiscovery
- T1071.004 ↗
Application Layer Protocol: DNSCommand and Control
- T1568.002 ↗
Dynamic Resolution: Domain Generation AlgorithmsCommand and Control
- T1021 ↗
Remote ServicesLateral Movement
- T1572 ↗
Protocol TunnelingCommand and Control
- T1048 ↗
Exfiltration Over Alternative ProtocolExfiltration
Trust Ladder ceiling · L0 → L3
- ·L0–L2: digest notice.log alerts, notify on high-signal notes, summarize conn/dns/http context around the case
- ·L3 (Knight verification): reputation lookup on dst_ip/query_name, JA3/SNI pivoting through paired ssl.log, cross-reference the Zeek uid against Suricata flows and EDR telemetry — read-only
- ·L4+: containment — Zeek is analysis-only in this stack; blocks route through firewall/EDR/UniFi connectors that own the enforcement plane
Full ladder semantics · /trust →
Field count + sample event auto-derived from src/cybercli/connectors/zeek/vector.vrl at build time. Numbers update the moment the engine's parser changes — no drift.
Close more of the kill chain
Zeek covers 5 of 14 ATT&CK tactics. Pair it with these to widen coverage:
How to connect
- 1 Run Zeek on a box that sees your traffic (SPAN/tap).
- 2 Enable JSON logs.
- 3 Run `cybercli onboard zeek` and point it at the log directory.
- 4 Confirm the log stream in the dashboard's Connectors panel.
sudo apt install zeek
Fully local. Zeek processes your traffic on your hardware; only structured logs become signals — raw packets never leave.