38 integrations. Every config file, every field, every provider.
How ZelC Config Works

ZelC commands like firewall block ip and edr isolate host are provider-agnostic. Your playbook never mentions Palo Alto or CrowdStrike directly. Instead, a config file tells ZelC which backend to use. Swap vendors by changing one line — zero playbook changes.

When you run zelc init myproject, ZelC generates this structure:

myproject/ ├── zelc.toml -- master config (which integrations are on/off) ├── .zelc.env -- secrets (API keys, tokens) — NEVER committed to git ├── .gitignore -- auto-ignores .zelc.env and evidence/ ├── integrations/ │ ├── firewall.toml -- which firewall? Palo Alto, Fortinet, iptables... │ ├── edr.toml -- which EDR? CrowdStrike, Defender, SentinelOne... │ ├── iam.toml -- which IdP? Okta, Entra ID, LDAP... │ ├── aws.toml -- AWS credentials and service config │ ├── zelfire.toml -- Zelfire SOC platform config │ ├── zelxdr.toml -- ZelXDR detection config │ └── ... (38 config files) ├── src/ │ └── main.zelc └── evidence/

The flow at runtime:

1. zelc run src/main.zelc starts execution

2. ZelC reads zelc.toml to see which integrations are enabled

3. ZelC loads .zelc.env and injects secrets into the environment

4. For each enabled integration, ZelC reads its config from integrations/

5. When your playbook says firewall block ip "1.2.3.4", ZelC checks the provider

6. ZelC checks exclude_ranges — if the IP is in a protected range, the action is refused

7. ZelC calls the correct vendor API using the credentials from .zelc.env

8. If an integration is disabled, ZelC uses a mock adapter that logs what would happen

Secrets are never stored in config files. Every sensitive value uses the _env suffix pattern. For example, api_key_env = "PAN_API_KEY" tells ZelC to read the actual key from the environment variable PAN_API_KEY, which lives in .zelc.env or your secrets manager.

Safety exclusions are hard limits. Each integration has exclusion lists (exclude_ranges, exclude_hosts, exclude_users) that can never be overridden by playbook code. Only editing the config file changes this.

zelc.toml — Master Project Config
zelc.toml
The master configuration file at the root of every ZelC project. Controls project metadata, safety enforcement levels, and which integrations are enabled. When an integration is set to true, ZelC loads its config from integrations/<name>.toml. When set to false, ZelC uses a mock adapter that logs what would happen without making real API calls. Safe to commit to git — contains no secrets.
-- ══════════════════════════════════════════════════════════════ -- zelc.toml — ZelC Project Configuration -- Generated by: zelc init -- Documentation: https://rocheston.com/zelc -- ══════════════════════════════════════════════════════════════ [project] name = "my-soc-playbooks" version = "1.0.0" author = "SOC Team" description = "Security automation playbooks" zelc_version = "1.2" -- ══════════════════════════════════════════════════════════════ -- SAFETY SETTINGS -- ══════════════════════════════════════════════════════════════ [safety] -- strict: kinetic verbs outside do blocks = compile error -- warn: kinetic verbs outside do blocks = warning -- off: no enforcement (not recommended) kinetic_enforcement = "strict" -- strict: tainted data in kinetic actions = compile error -- warn: tainted data in kinetic actions = warning -- off: no taint tracking taint_tracking = "warn" -- Maximum number of targets a single do block can affect -- Physics engine rejects playbooks that exceed this max_blast_radius = 10 -- ══════════════════════════════════════════════════════════════ -- INTEGRATIONS -- Each integration has its own config file in integrations/ -- Set true to load the integration, false to use mock adapter -- Mock adapter logs what would happen without making real API calls -- ══════════════════════════════════════════════════════════════ [integrations] firewall = true -- integrations/firewall.toml edr = true -- integrations/edr.toml iam = true -- integrations/iam.toml aws = true -- integrations/aws.toml azure = false -- integrations/azure.toml gcloud = false -- integrations/gcloud.toml siem = true -- integrations/siem.toml notifications = true -- integrations/notifications.toml (slack, teams, email, pager) tickets = true -- integrations/tickets.toml rosecoin = true -- integrations/rosecoin.toml aina = true -- integrations/aina.toml noodles = true -- integrations/noodles.toml vines = false -- integrations/vines.toml threat_intel = true -- integrations/threat_intel.toml docker = true -- integrations/docker.toml kubernetes = false -- integrations/kubernetes.toml github = true -- integrations/github.toml linux = true -- integrations/linux.toml dns = false -- integrations/dns.toml crypto = true -- integrations/crypto.toml rcf = true -- integrations/rcf.toml evidence = true -- integrations/evidence.toml
.zelc.env — Secrets File
.zelc.env (gitignored)
Environment variables file containing API keys, tokens, and passwords. Automatically loaded by zelc run and injected into the process environment. NEVER commit this file to git. Each variable is referenced by name in integration configs using the _env suffix pattern.
# ══════════════════════════════════════════════════════════════ # .zelc.env — ZelC Secrets File # ⚠️ DO NOT COMMIT THIS FILE TO GIT # Add to .gitignore: .zelc.env # ══════════════════════════════════════════════════════════════ # Firewall # PAN_API_KEY= # FORTINET_API_KEY= # CHECKPOINT_API_KEY= # EDR # CS_CLIENT_ID= # CS_CLIENT_SECRET= # MDE_CLIENT_ID= # MDE_CLIENT_SECRET= # S1_API_KEY= # Identity (IAM) # OKTA_API_KEY= # ENTRA_CLIENT_ID= # ENTRA_CLIENT_SECRET= # LDAP_BIND_DN= # LDAP_BIND_PASS= # AWS # AWS_ACCESS_KEY_ID= # AWS_SECRET_ACCESS_KEY= # AWS_SESSION_TOKEN= # Azure # AZURE_CLIENT_ID= # AZURE_CLIENT_SECRET= # Google Cloud # (uses credentials file from gcloud.toml) # SIEM # SPLUNK_TOKEN= # SPLUNK_HEC_TOKEN= # ELASTIC_API_KEY= # QRADAR_TOKEN= # Notifications # SLACK_BOT_TOKEN= # SLACK_WEBHOOK_URL= # TEAMS_WEBHOOK_URL= # SMTP_USER= # SMTP_PASS= # PD_ROUTING_KEY= # OPSGENIE_API_KEY= # Ticketing # JIRA_API_KEY= # SNOW_USER= # SNOW_PASS= # Rosecoin # ROSECOIN_SIGNING_KEY= # AINA # AINA_API_KEY= # Vulnerability Vines # VINES_API_KEY= # Threat Intelligence # VT_API_KEY= # OTX_API_KEY= # RF_API_KEY= # HA_API_KEY= # Docker Registry # DOCKER_REGISTRY_TOKEN= # GitHub / GitLab # GITHUB_TOKEN= # GITLAB_TOKEN= # COSIGN_KEY= # Crypto # ZELC_SIGNING_KEY= # Webhooks # WEBHOOK_SOC_DASHBOARD= # WEBHOOK_CUSTOM_SIEM=
Third-Party Integrations
AINA (AI Security Agent)
integrations/aina.toml
ZelC commands: aina ask, aina explain, aina decide, aina risk_score, aina simulate, aina guard, aina check
Configures the AINA AI agent for all AI commands: aina ask, aina explain, aina decide, aina risk_score, aina extract_ioc, aina simulate, aina guard prompt, and more. Includes guardrails that limit autonomous actions, confidence thresholds, prohibited actions, prompt injection defense, PII scanning of outputs, and context window management.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: AINA (AI Security Agent) -- Maps to: aina ask, aina explain, aina decide, aina risk_score, etc. -- ══════════════════════════════════════════════════════════════ [api] url = "https://aina.rocheston.com/v1" api_key_env = "AINA_API_KEY" model = "aina-security-v2" timeout_seconds = 60 max_retries = 2 -- For self-hosted AINA: -- url = "http://localhost:8000/v1" [guardrails] -- Maximum actions AINA can take per decision max_actions_per_decision = 5 -- Minimum confidence to auto-execute (0.0 - 1.0) confidence_threshold = 0.85 -- Require human approval for critical actions? require_human_approval = false -- Always dry-run before executing? dry_run_first = true -- Actions AINA can never execute autonomously prohibited_autonomous = [ "system.shutdown", "data.delete", "aws.terminate_instance", "iam.delete_user" ] [prompt_safety] -- aina guard prompt settings block_injection_patterns = true block_jailbreak_attempts = true log_blocked_prompts = true max_prompt_length = 10000 [output_safety] -- aina check output settings scan_for_pii = true scan_for_hallucinations = true redact_pii_in_response = true [context] -- How much context to send with each AINA call include_event_data = true include_evidence_log = true include_playbook_history = true max_context_tokens = 8000 [memory] -- AINA memory persistence across calls within an incident enabled = true max_entries = 100 persist_to_disk = false
AWS (Amazon Web Services)
integrations/aws.toml
ZelC commands: aws rotate, aws s3, aws ec2, aws cloudtrail, aws waf, aws security_group
Configures authentication and service-specific settings for all AWS commands. Supports multiple auth methods: CLI profile, environment variables, IAM role, and SSO. Includes EC2 snapshot forensics, S3 public access blocking, IAM key rotation, CloudTrail audit, WAF blocklists, GuardDuty, and Security Hub.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: AWS -- Maps to: aws rotate, aws s3, aws ec2, aws cloudtrail, aws waf -- ══════════════════════════════════════════════════════════════ -- Authentication method -- Options: profile | env | iam_role | sso auth_method = "profile" -- ┌──────────────────────────────────────────┐ -- │ AUTHENTICATION │ -- └──────────────────────────────────────────┘ [credentials] -- Method 1: AWS CLI profile (recommended for local dev) profile = "soc-prod" -- Method 2: Environment variables -- access_key_env = "AWS_ACCESS_KEY_ID" -- secret_key_env = "AWS_SECRET_ACCESS_KEY" -- session_token_env = "AWS_SESSION_TOKEN" -- Method 3: IAM Role (for EC2/Lambda) -- role_arn = "arn:aws:iam::123456789:role/zelc-soc-role" -- Method 4: SSO -- sso_start_url = "https://acme.awsapps.com/start" -- sso_region = "us-east-1" -- sso_account_id = "123456789012" -- sso_role_name = "SOCOperator" -- ┌──────────────────────────────────────────┐ -- │ GENERAL SETTINGS │ -- └──────────────────────────────────────────┘ [defaults] region = "us-east-1" output_format = "json" max_retries = 3 timeout_seconds = 30 -- ┌──────────────────────────────────────────┐ -- │ EC2 (aws ec2 snapshot, etc.) │ -- └──────────────────────────────────────────┘ [ec2] default_vpc = "vpc-abc123" snapshot_tag_prefix = "zelc-forensic-" snapshot_retention_days = 90 -- Security group used for isolation isolation_security_group = "sg-isolate-000" -- ┌──────────────────────────────────────────┐ -- │ S3 (aws s3 block_public, etc.) │ -- └──────────────────────────────────────────┘ [s3] evidence_bucket = "acme-zelc-evidence" evidence_prefix = "evidence/" encryption = "AES256" -- Buckets that should never have public access removed -- (in case they're intentionally public like a CDN) exclude_buckets = ["acme-public-assets"] -- ┌──────────────────────────────────────────┐ -- │ IAM (aws rotate keys, etc.) │ -- └──────────────────────────────────────────┘ [iam] -- Users whose keys should never be rotated exclude_users = ["terraform-ci", "monitoring-readonly"] -- Create new key before deleting old (graceful rotation) graceful_rotation = true -- Notify user via email when keys are rotated notify_on_rotation = true -- ┌──────────────────────────────────────────┐ -- │ CLOUDTRAIL │ -- └──────────────────────────────────────────┘ [cloudtrail] trail_name = "management-trail" s3_bucket = "acme-cloudtrail-logs" enable_log_validation = true is_multi_region = true -- ┌──────────────────────────────────────────┐ -- │ WAF │ -- └──────────────────────────────────────────┘ [waf] web_acl_name = "production-acl" web_acl_id = "xxxx-xxxx-xxxx" ip_set_name = "zelc-blocklist" ip_set_id = "xxxx-xxxx-xxxx" scope = "REGIONAL" -- ┌──────────────────────────────────────────┐ -- │ GUARDDUTY │ -- └──────────────────────────────────────────┘ [guardduty] detector_id = "xxxx" auto_archive_low = true -- ┌──────────────────────────────────────────┐ -- │ SECURITY HUB │ -- └──────────────────────────────────────────┘ [securityhub] enabled = true standards = ["aws-foundational", "cis-aws", "pci-dss"]
Azure (Microsoft Cloud)
integrations/azure.toml
ZelC commands: azure ad, azure nsg, azure sentinel, azure keyvault
Configures credentials and service settings for Azure. Uses a single Service Principal for authentication across Entra ID user blocking, NSG deny rules, Sentinel alert injection, and Key Vault lockdown.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Azure -- Maps to: azure ad, azure nsg, azure sentinel, azure keyvault -- ══════════════════════════════════════════════════════════════ [credentials] tenant_id = "xxxx-xxxx-xxxx" subscription_id = "xxxx-xxxx-xxxx" client_id_env = "AZURE_CLIENT_ID" client_secret_env = "AZURE_CLIENT_SECRET" -- Or use managed identity: -- use_managed_identity = true [defaults] resource_group = "prod-security" location = "eastus" [entra] -- Used by: azure ad block_user api_url = "https://graph.microsoft.com/v1.0" [nsg] -- Used by: azure nsg deny default_nsg = "prod-nsg" priority_start = 100 priority_increment = 10 rule_prefix = "zelc-auto-" [sentinel] -- Used by: azure sentinel alert workspace_name = "soc-workspace" workspace_id = "xxxx-xxxx-xxxx" resource_group = "soc-rg" [keyvault] -- Used by: azure keyvault lock default_vault = "prod-keyvault" network_acl_default = "Deny"
Cryptography & Key Management
integrations/crypto.toml
ZelC commands: crypto encrypt, crypto sign, crypto hash, crypto random, secret mask, pqc encrypt, pqc sign
Configures cryptographic operations including algorithm defaults (AES-256-GCM, Ed25519, Kyber), HSM integration, key store location, post-quantum hybrid mode, and PII masking regex patterns for AWS keys, credit cards, and Slack tokens.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Cryptography & Key Management -- Maps to: crypto encrypt, crypto sign, crypto hash, secret mask, pqc -- ══════════════════════════════════════════════════════════════ [defaults] encryption_algorithm = "aes-256-gcm" signing_algorithm = "ed25519" hash_algorithm = "sha256" [keys] -- Where to store generated keys key_store = "~/.zelc/keys" -- HSM integration hsm_enabled = false -- hsm_provider = "yubihsm" -- hsm_connector_url = "http://localhost:12345" [signing] -- Identity key for "sign artifact" identity_key_env = "ZELC_SIGNING_KEY" -- Or file path: -- identity_key_file = "~/.zelc/keys/signing.key" -- Key algorithm algorithm = "ed25519" [pqc] -- Post-quantum defaults encrypt_algorithm = "kyber-768" -- kyber-512 | kyber-768 | kyber-1024 sign_algorithm = "dilithium3" -- dilithium2 | dilithium3 | dilithium5 -- Hybrid mode (classical + PQC) hybrid_mode = false -- hybrid_classical = "rsa-4096" [masking] -- Patterns for "secret mask" patterns = [ "AKIA[0-9A-Z]{16}", -- AWS access key "sk-[a-zA-Z0-9]{48}", -- OpenAI API key "xoxb-[0-9]{11}-[0-9]{11}-[a-zA-Z0-9]{24}", -- Slack bot token "[0-9]{4}[- ]?[0-9]{4}[- ]?[0-9]{4}[- ]?[0-9]{4}", -- Credit card "[A-Za-z0-9+/]{40,}={0,2}" -- Base64 encoded secrets ] replacement = "********"
DNS
integrations/dns.toml
ZelC commands: dns resolve
Configures DNS resolution. Supports system resolver with custom nameservers, Cloudflare API for DNS management, and AWS Route53.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: DNS -- Maps to: dns resolve -- ══════════════════════════════════════════════════════════════ -- Options: cloudflare | route53 | azure_dns | google_dns | system | mock provider = "system" [system] -- Uses system resolver nameservers = ["8.8.8.8", "1.1.1.1"] timeout_seconds = 5 [cloudflare] api_key_env = "CF_API_KEY" zone_id = "xxxx" email = "[email protected]" [route53] -- Uses aws.toml credentials hosted_zone_id = "Z1234567890"
Docker
integrations/docker.toml
ZelC commands: docker stop, docker image scan, docker logs
Configures Docker runtime access for container management. Supports local socket and remote Docker host with TLS. Image scanning via Trivy, Grype, Snyk, or Prisma Cloud. Safety exclusions prevent stopping monitoring agents and log collectors.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Docker -- Maps to: docker stop, docker image scan, docker logs -- ══════════════════════════════════════════════════════════════ [runtime] socket = "/var/run/docker.sock" -- For remote Docker: -- host = "tcp://docker-host.acme.com:2376" -- tls_verify = true -- tls_cert_path = "~/.docker/certs" [registry] url = "registry.acme.com" token_env = "DOCKER_REGISTRY_TOKEN" -- Or username/password: -- username_env = "DOCKER_USER" -- password_env = "DOCKER_PASS" [scanning] -- For "docker image scan" -- Options: trivy | grype | snyk | prisma | mock scanner = "trivy" fail_on_severity = "critical" -- critical | high | medium | low ignore_unfixed = true [safety] -- Containers that can never be stopped exclude_containers = ["monitoring-agent", "log-collector"]
EDR (Endpoint Detection & Response)
integrations/edr.toml
ZelC commands: edr isolate, edr kill, edr quarantine
Controls which EDR platform is called for endpoint containment. Supports CrowdStrike Falcon, Microsoft Defender for Endpoint, SentinelOne, VMware Carbon Black, and Palo Alto Cortex XDR. The exclude_hosts safety net prevents isolation of critical infrastructure like domain controllers.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: EDR (Endpoint Detection & Response) -- Maps to: edr isolate, edr kill, edr quarantine -- ══════════════════════════════════════════════════════════════ -- Which EDR backend does ZelC use? -- Options: crowdstrike | defender | sentinelone | carbon_black | -- cortex_xdr | trellix | mock provider = "crowdstrike" -- Default behavior default_isolation_mode = "strict_network_quarantine" allow_process_kill = true allow_file_quarantine = true -- Hosts that can NEVER be isolated (safety net) exclude_hosts = [ "domain-controller-01", "ca-server", "dns-primary" ] -- ┌──────────────────────────────────────────┐ -- │ CROWDSTRIKE FALCON │ -- └──────────────────────────────────────────┘ [crowdstrike] api_url = "https://api.crowdstrike.com" client_id_env = "CS_CLIENT_ID" client_secret_env = "CS_CLIENT_SECRET" member_cid = "" -- for MSSP multi-tenant base_url_region = "us-1" -- us-1 | us-2 | eu-1 | us-gov-1 -- RTR (Real Time Response) settings rtr_enabled = true rtr_admin_enabled = false -- admin commands (more dangerous) -- Containment settings containment_action = "contain" -- contain | lift_containment -- ┌──────────────────────────────────────────┐ -- │ MICROSOFT DEFENDER FOR ENDPOINT │ -- └──────────────────────────────────────────┘ [defender] tenant_id = "xxxx-xxxx-xxxx" client_id_env = "MDE_CLIENT_ID" client_secret_env = "MDE_CLIENT_SECRET" api_url = "https://api.securitycenter.microsoft.com" isolation_type = "Full" -- Full | Selective -- Live Response settings live_response_enabled = true -- ┌──────────────────────────────────────────┐ -- │ SENTINELONE │ -- └──────────────────────────────────────────┘ [sentinelone] api_url = "https://acme.sentinelone.net" api_key_env = "S1_API_KEY" account_id = "" site_id = "" -- Network quarantine settings disconnect_from_network = true -- ┌──────────────────────────────────────────┐ -- │ VMWARE CARBON BLACK │ -- └──────────────────────────────────────────┘ [carbon_black] api_url = "https://defense.conferdeploy.net" api_id_env = "CB_API_ID" api_key_env = "CB_API_KEY" org_key = "xxxx" -- Quarantine = isolate device -- Ban hash = quarantine file -- ┌──────────────────────────────────────────┐ -- │ PALO ALTO CORTEX XDR │ -- └──────────────────────────────────────────┘ [cortex_xdr] api_url = "https://api-acme.xdr.us.paloaltonetworks.com" api_key_env = "CORTEX_API_KEY" api_key_id = "1" security_level = "advanced" -- standard | advanced
Evidence & Retention
integrations/evidence.toml
ZelC commands: evidence record, proof make, audit log, export report, hash verify, sign artifact
Configures evidence handling including SHA-256/Blake3 hashing, Merkle tree construction, chain of custody tracking, automatic Rosecoin anchoring, retention policies (365 days default), export to S3/Azure Blob/GCS, compliance auto-tagging, digital signing, and tamper detection alerts.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Evidence & Retention -- Maps to: evidence record, proof make, audit log, export report -- ══════════════════════════════════════════════════════════════ [storage] -- Where evidence packs are stored locally output_dir = "./evidence" -- Archive old evidence archive_dir = "./evidence/archive" [format] -- Default export format for "export report" default_format = "json" -- json | html | pdf -- Include raw data in evidence records? include_raw_data = true -- Pretty print JSON? pretty_json = true [hashing] -- Algorithm for evidence record hashes algorithm = "sha256" -- sha256 | sha384 | sha512 | blake3 -- Hash the entire record or just the details? hash_scope = "full_record" -- full_record | details_only -- Include timestamp in hash input? include_timestamp = true [merkle_tree] -- Build merkle tree for evidence packs? enabled = true -- Algorithm for merkle tree algorithm = "sha256" [chain_of_custody] -- Track who/what touched each evidence record enabled = true -- Actor identity for automated records actor_name = "ZelC Runtime v1.2" -- Record the playbook name that generated the evidence include_playbook_name = true -- Record the host that executed the playbook include_hostname = true [blockchain] -- Auto-anchor to Rosecoin? (requires rosecoin.toml) auto_anchor = true -- Anchor individual records or just the final pack? anchor_mode = "pack" -- record | pack | both -- Wait for confirmation? wait_for_confirmation = false [retention] -- How long to keep evidence locally retention_days = 365 -- Archive after this many days (move to archive_dir) archive_after_days = 90 -- Delete after retention period? auto_delete = false -- Legal hold override (never delete) legal_hold = false [export] -- Auto-export after every playbook run? auto_export = true -- Export destination -- Options: local | s3 | azure_blob | gcs destination = "local" [export.s3] -- If destination = "s3" bucket = "acme-zelc-evidence" prefix = "evidence/" region = "us-east-1" encryption = "AES256" -- Uses aws.toml credentials [export.azure_blob] -- If destination = "azure_blob" container = "zelc-evidence" -- Uses azure.toml credentials [compliance] -- Auto-tag evidence with compliance controls? -- Requires rcf.toml auto_tag = true -- Include compliance mapping in export? include_mapping = true [signing] -- Digitally sign evidence packs? enabled = true -- Uses crypto.toml signing key -- Sign individual records or just the pack? sign_mode = "pack" -- record | pack | both [notifications] -- Notify when evidence pack is generated? notify_on_export = false -- Notify when evidence fails integrity check? notify_on_tampering = true tampering_alert_severity = "critical"
Firewall
integrations/firewall.toml
ZelC commands: firewall block ip, firewall allow ip, firewall deny
Controls which firewall backend is called when ZelC blocks or allows traffic. Supports Palo Alto Networks, Fortinet FortiGate, Check Point, Cisco ASA, AWS Security Groups, AWS WAF, Azure NSG, and Linux iptables/nftables/ufw. The exclude_ranges safety net prevents accidental blocking of internal infrastructure.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Firewall -- Maps to: firewall block ip, firewall allow ip, firewall deny -- ══════════════════════════════════════════════════════════════ -- Which firewall backend does ZelC use? -- Options: paloalto | fortinet | checkpoint | cisco_asa | aws_sg | -- aws_waf | azure_nsg | gcloud_firewall | iptables | nftables | ufw | mock provider = "paloalto" -- Default behavior default_action = "drop" default_duration = "2 hours" log_all_actions = true -- IP ranges that can NEVER be blocked (safety net) -- These override any playbook command exclude_ranges = [ "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16", "127.0.0.1", "0.0.0.0/0" ] -- ┌──────────────────────────────────────────┐ -- │ PALO ALTO NETWORKS │ -- └──────────────────────────────────────────┘ [paloalto] api_url = "https://firewall.acme.com/api" api_key_env = "PAN_API_KEY" vsys = "vsys1" zone_source = "untrust" zone_destination = "trust" rule_prefix = "zelc-auto-" device_group = "shared" -- Panorama only log_profile = "default" commit_after_change = true -- For HA pairs: -- ha_peer_url = "https://firewall-standby.acme.com/api" -- ┌──────────────────────────────────────────┐ -- │ FORTINET FORTIGATE │ -- └──────────────────────────────────────────┘ [fortinet] api_url = "https://fortigate.acme.com/api/v2" api_key_env = "FORTINET_API_KEY" vdom = "root" interface_in = "wan1" interface_out = "lan" address_group = "zelc-blocklist" policy_name_prefix = "zelc-auto-" install_after_change = true -- ┌──────────────────────────────────────────┐ -- │ CHECK POINT │ -- └──────────────────────────────────────────┘ [checkpoint] api_url = "https://checkpoint-mgmt.acme.com/web_api" api_key_env = "CHECKPOINT_API_KEY" domain = "acme" layer = "Network" install_policy_after = true target_gateway = "corp-gateway" -- ┌──────────────────────────────────────────┐ -- │ CISCO ASA │ -- └──────────────────────────────────────────┘ [cisco_asa] api_url = "https://asa.acme.com/api" username_env = "ASA_USER" password_env = "ASA_PASS" interface = "outside" access_list = "zelc-deny" -- ┌──────────────────────────────────────────┐ -- │ AWS SECURITY GROUPS │ -- └──────────────────────────────────────────┘ [aws_sg] region = "us-east-1" security_group_id = "sg-0abc123def456" -- Credentials from [aws] integration or env vars -- Uses aws.toml for authentication -- ┌──────────────────────────────────────────┐ -- │ AWS WAF │ -- └──────────────────────────────────────────┘ [aws_waf] region = "us-east-1" ip_set_name = "zelc-blocklist" ip_set_id = "xxxx-xxxx-xxxx" web_acl_name = "production-acl" scope = "REGIONAL" -- REGIONAL | CLOUDFRONT -- ┌──────────────────────────────────────────┐ -- │ AZURE NSG │ -- └──────────────────────────────────────────┘ [azure_nsg] resource_group = "prod-networking" nsg_name = "prod-nsg" priority_start = 100 -- Credentials from [azure] integration -- ┌──────────────────────────────────────────┐ -- │ IPTABLES / NFTABLES / UFW (Linux) │ -- └──────────────────────────────────────────┘ [iptables] chain = "INPUT" target = "DROP" -- Requires SSH access configured in linux.toml [nftables] table = "inet filter" chain = "input" -- Requires SSH access configured in linux.toml [ufw] -- Requires SSH access configured in linux.toml
Google Cloud Platform
integrations/gcloud.toml
ZelC commands: gcloud iam, gcloud storage, gcloud compute
Configures authentication and service settings for GCP. Supports service account key files, application default credentials, and workload identity. Safety exclusions prevent accidental shutdown of bastion hosts and VPN gateways.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Google Cloud -- Maps to: gcloud iam, gcloud storage, gcloud compute -- ══════════════════════════════════════════════════════════════ [credentials] project = "acme-security-prod" credentials_file = "~/.gcloud/soc-key.json" -- Or use application default credentials: -- use_adc = true -- Or workload identity: -- use_workload_identity = true [defaults] region = "us-central1" zone = "us-central1-a" [compute] -- Used by: gcloud compute stop -- VMs that can never be stopped exclude_instances = ["bastion-host", "vpn-gateway"] [storage] -- Used by: gcloud storage private evidence_bucket = "acme-zelc-evidence" -- Buckets that are intentionally public exclude_buckets = ["acme-public-cdn"] [iam] -- Used by: gcloud iam disable -- Service accounts that can never be disabled exclude_accounts = ["[email protected]"] [scc] -- Security Command Center organization_id = "123456789"
GitHub / GitLab
integrations/github.toml
ZelC commands: github scan, github block, github open, github comment, gitlab pipeline, sbom generate
Configures repository access for secret scanning, merge blocking, issue creation, PR commenting, pipeline stopping, and SBOM generation. Includes artifact signing via Cosign/Sigstore.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: GitHub / GitLab -- Maps to: github scan, github block merge, sbom generate -- ══════════════════════════════════════════════════════════════ [github] token_env = "GITHUB_TOKEN" api_url = "https://api.github.com" -- or GitHub Enterprise URL org = "acme-corp" default_repo = "acme-corp/main-app" -- For secret scanning secret_scan_patterns = ["AWS", "AZURE", "GCP", "SLACK", "GITHUB", "PRIVATE_KEY"] [gitlab] token_env = "GITLAB_TOKEN" api_url = "https://gitlab.acme.com/api/v4" -- or gitlab.com: -- api_url = "https://gitlab.com/api/v4" default_project = "acme/main-app" [sbom] -- For "sbom generate" format = "spdx" -- spdx | cyclonedx output_dir = "./sbom" -- Tool: syft | trivy | grype generator = "syft" [signing] -- For "crypto sign artifact" -- Options: cosign | sigstore | gpg method = "cosign" key_env = "COSIGN_KEY" -- Keyless signing via Sigstore: -- keyless = true -- fulcio_url = "https://fulcio.sigstore.dev" -- rekor_url = "https://rekor.sigstore.dev"
IAM (Identity & Access Management)
integrations/iam.toml
ZelC commands: iam lock, iam unlock, iam revoke, iam enable, iam reset
Controls which identity provider is called for user management. Supports Okta, Microsoft Entra ID (Azure AD), Ping Identity, and LDAP/Active Directory. The exclude_users safety net protects break-glass and service accounts.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: IAM (Identity & Access Management) -- Maps to: iam lock, iam unlock, iam revoke, iam enable, iam reset -- ══════════════════════════════════════════════════════════════ -- Which identity provider does ZelC use? -- Options: okta | entra | ping | onelogin | auth0 | jumpcloud | ldap | mock provider = "okta" -- Safety exclude_users = ["admin", "break-glass", "soc-service-account"] -- ┌──────────────────────────────────────────┐ -- │ OKTA │ -- └──────────────────────────────────────────┘ [okta] api_url = "https://acme.okta.com/api/v1" api_key_env = "OKTA_API_KEY" -- User lifecycle suspend_on_lock = true clear_sessions_on_revoke = true force_mfa_on_unlock = true -- ┌──────────────────────────────────────────┐ -- │ MICROSOFT ENTRA ID (Azure AD) │ -- └──────────────────────────────────────────┘ [entra] tenant_id = "xxxx-xxxx-xxxx" client_id_env = "ENTRA_CLIENT_ID" client_secret_env = "ENTRA_CLIENT_SECRET" api_url = "https://graph.microsoft.com/v1.0" -- Block sign-in on lock disable_account_on_lock = true -- Revoke all refresh tokens on revoke revoke_all_tokens = true -- ┌──────────────────────────────────────────┐ -- │ PING IDENTITY │ -- └──────────────────────────────────────────┘ [ping] api_url = "https://api.pingone.com/v1" environment_id = "xxxx" client_id_env = "PING_CLIENT_ID" client_secret_env = "PING_CLIENT_SECRET" -- ┌──────────────────────────────────────────┐ -- │ LDAP / ACTIVE DIRECTORY │ -- └──────────────────────────────────────────┘ [ldap] server = "ldap://dc01.acme.local:389" bind_dn_env = "LDAP_BIND_DN" bind_password_env = "LDAP_BIND_PASS" base_dn = "DC=acme,DC=local" user_search_base = "OU=Users,DC=acme,DC=local" tls_enabled = true -- Lock = set userAccountControl flag -- Revoke = reset password + disable
Kubernetes
integrations/kubernetes.toml
ZelC commands: kube isolate, kube delete, helm rollback
Configures Kubernetes cluster access including kubeconfig path, context selection, NetworkPolicy templates for pod isolation, and safety exclusions that protect kube-system, monitoring, and service mesh namespaces.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Kubernetes -- Maps to: kube isolate, kube delete, helm rollback -- ══════════════════════════════════════════════════════════════ [cluster] kubeconfig = "~/.kube/config" context = "prod-cluster" default_namespace = "default" [safety] -- Namespaces that can never have pods deleted/isolated exclude_namespaces = ["kube-system", "monitoring", "istio-system"] -- Pods that can never be killed exclude_pods = ["coredns", "metrics-server"] -- Max pods affected per action max_pods_per_action = 10 [isolation] -- NetworkPolicy template for "kube isolate pod" deny_all_ingress = true deny_all_egress = true allow_dns = true -- allow DNS even when isolated label_prefix = "zelc-isolated" [helm] -- For "helm rollback" max_history = 10 timeout_seconds = 300
Linux System Administration
integrations/linux.toml
ZelC commands: linux service, linux firewall, linux user, linux cron, linux file, linux kill
Configures SSH access for all Linux commands. Supports named host groups (web_servers, db_servers) with different SSH users. Safety exclusions protect root, sshd, and critical services from accidental lockout.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Linux System Administration -- Maps to: linux service, linux firewall, linux user, linux cron, linux file -- ══════════════════════════════════════════════════════════════ [ssh] default_user = "soc-admin" key_file = "~/.ssh/soc_key" -- Or password (not recommended): -- password_env = "SSH_PASS" port = 22 timeout_seconds = 10 known_hosts_file = "~/.ssh/known_hosts" strict_host_checking = true [targets] -- Default hosts for linux commands -- Can be overridden per command default = ["10.0.1.10", "10.0.1.11"] -- Named groups [targets.web_servers] hosts = ["10.0.1.10", "10.0.1.11", "10.0.1.12"] user = "www-admin" [targets.db_servers] hosts = ["10.0.2.10", "10.0.2.11"] user = "db-admin" [firewall] -- Backend for "linux firewall block" backend = "nftables" -- iptables | nftables | ufw chain = "input" default_action = "drop" [safety] -- Users that can never be locked exclude_users = ["root", "soc-admin", "monitoring"] -- Services that can never be stopped exclude_services = ["sshd", "docker", "kubelet"] -- Paths that can never be chmod'd exclude_paths = ["/etc/ssh", "/boot"]
Noodles (Reporting & Dashboards)
integrations/noodles.toml
ZelC commands: noodles build, noodles export, noodles timeline, noodles generate
Configures the Noodles reporting engine including output directory, branding (company name, logo, Gruvbox theme), report templates (incident, compliance, evidence pack), and chart library selection.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Noodles (Reporting & Dashboards) -- Maps to: noodles build, noodles export, noodles timeline -- ══════════════════════════════════════════════════════════════ [output] dir = "./reports" default_format = "pdf" -- pdf | html | json [branding] company_name = "Acme Corp" logo_path = "./assets/logo.png" primary_color = "#fe8019" theme = "gruvbox-dark" -- gruvbox-dark | gruvbox-light | corporate | minimal [templates] incident_report = "default" -- default | executive | detailed | legal compliance_report = "default" evidence_pack_report = "default" [charts] default_chart_library = "chartjs" -- chartjs | plotly default_width = 800 default_height = 400
Notifications (Slack, Teams, Email, PagerDuty)
integrations/notifications.toml
ZelC commands: notify slack, notify teams, notify email, pager trigger, webhook to
Configures all notification channels with severity-based routing (critical alerts to #soc-critical, low alerts to #soc-info), rate limiting, adaptive cards for Teams, PagerDuty escalation policies with auto-resolve timers, OpsGenie, and generic webhooks.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Notifications -- Maps to: notify slack, notify teams, notify email, pager trigger, webhook -- ══════════════════════════════════════════════════════════════ -- ┌──────────────────────────────────────────┐ -- │ SLACK │ -- └──────────────────────────────────────────┘ [slack] enabled = true bot_token_env = "SLACK_BOT_TOKEN" -- Or webhook (simpler, no bot required): -- webhook_env = "SLACK_WEBHOOK_URL" default_channel = "#soc-alerts" username = "ZelC SOC" icon_emoji = ":shield:" -- Channel routing by severity critical_channel = "#soc-critical" high_channel = "#soc-alerts" low_channel = "#soc-info" -- Rate limiting max_messages_per_minute = 30 -- ┌──────────────────────────────────────────┐ -- │ MICROSOFT TEAMS │ -- └──────────────────────────────────────────┘ [teams] enabled = false webhook_env = "TEAMS_WEBHOOK_URL" default_channel = "Security Operations" -- Adaptive Card formatting use_adaptive_cards = true -- Power Automate integration -- power_automate_url_env = "TEAMS_PA_URL" -- ┌──────────────────────────────────────────┐ -- │ EMAIL (SMTP) │ -- └──────────────────────────────────────────┘ [email] enabled = true smtp_host = "smtp.acme.com" smtp_port = 587 smtp_tls = true smtp_user_env = "SMTP_USER" smtp_pass_env = "SMTP_PASS" from_address = "[email protected]" from_name = "ZelC SOC" -- Default recipients default_to = ["[email protected]"] critical_to = ["[email protected]", "[email protected]"] -- Attach evidence reports to critical emails attach_evidence = true -- ┌──────────────────────────────────────────┐ -- │ PAGERDUTY │ -- └──────────────────────────────────────────┘ [pagerduty] enabled = true routing_key_env = "PD_ROUTING_KEY" -- Or API key for more control: -- api_key_env = "PD_API_KEY" default_severity = "critical" -- Escalation settings escalation_policy_id = "PXXXXXX" auto_resolve_after = "4 hours" -- Dedup key prefix dedup_prefix = "zelc-" -- ┌──────────────────────────────────────────┐ -- │ OPSGENIE │ -- └──────────────────────────────────────────┘ [opsgenie] enabled = false api_key_env = "OPSGENIE_API_KEY" api_url = "https://api.opsgenie.com/v2" team = "soc-team" -- ┌──────────────────────────────────────────┐ -- │ GENERIC WEBHOOKS │ -- └──────────────────────────────────────────┘ [webhooks] -- Named webhooks that can be called from ZelC -- webhook to "soc-dashboard" body { ... } [webhooks.soc-dashboard] url_env = "WEBHOOK_SOC_DASHBOARD" method = "POST" content_type = "application/json" headers = { "X-Source" = "ZelC" } timeout_seconds = 10 retry_count = 3 [webhooks.custom-siem] url_env = "WEBHOOK_CUSTOM_SIEM" method = "POST" content_type = "application/json"
RCF (Compliance Framework)
integrations/rcf.toml
ZelC commands: rcf map, rcf drift, rcf gap, rcf verify
Configures compliance mapping across NIST-800-53, SOC2, ISO 27001, HIPAA, PCI-DSS, GDPR, CCPA, FedRAMP, CMMC, CIS, and DPDP. Includes auto-mapping of actions to controls, baseline drift detection, gap analysis reports, attestation signing, and evidence freshness requirements.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: RCF (Rocheston Compliance Framework) -- Maps to: rcf map, rcf drift, rcf gap, rcf verify -- ══════════════════════════════════════════════════════════════ [frameworks] -- Which compliance frameworks are active for this project? -- ZelC auto-maps actions to controls from these frameworks active = ["NIST-800-53", "SOC2", "ISO27001"] -- All supported: NIST-800-53 | SOC2 | ISO27001 | HIPAA | PCI-DSS | -- GDPR | CCPA | FedRAMP | CMMC | CIS | DPDP [auto_mapping] -- Automatically tag evidence with compliance controls? enabled = true -- Include all active frameworks or just primary? map_all_frameworks = true -- Primary framework (used when only one mapping is needed) primary_framework = "NIST-800-53" [baseline] -- Golden standard for "rcf drift check" version = "v1.0" baseline_file = "./compliance/baseline.json" -- Auto-generate baseline from current state? auto_generate = false -- Check interval for continuous drift detection drift_check_interval = "6 hours" -- Alert on drift? alert_on_drift = true alert_severity = "high" [gap_analysis] -- Output settings for "rcf gap report" output_dir = "./compliance/reports" format = "html" -- html | pdf | json include_recommendations = true include_evidence_links = true -- Group by framework or by control family? group_by = "framework" -- framework | control_family | status [attestation] -- Who signs off on compliance attestations? attestor_name = "SOC Manager" attestor_email = "[email protected]" -- Auto-sign with ZelC identity key? auto_sign = false -- Require manual review before attestation? require_review = true -- Attestation validity period validity_period = "90 days" [evidence_requirements] -- Minimum evidence freshness for a control to be "satisfied" max_evidence_age = "30 days" -- Require blockchain anchor for evidence to count? require_rosecoin_anchor = true -- Minimum evidence records per control min_records_per_control = 1 [custom_controls] -- Define custom control mappings beyond the built-in database -- Example: map a custom action to a control -- [custom_controls.mappings] -- "acme.vpn.enforce_mfa" = ["NIST-IA-2", "SOC2-CC6.1"] -- "acme.backup.verify" = ["NIST-CP-9", "ISO-A.12.3.1"]
Rosecoin (Blockchain Evidence)
integrations/rosecoin.toml
ZelC commands: rosecoin anchor, rosecoin verify, rosecoin notarize
Configures the Rosecoin blockchain node for evidence anchoring, verification, and notarization. Includes wallet address, signing key, batch anchoring to save transaction fees, offline queueing when the node is unreachable, and verification caching.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Rosecoin (Blockchain Evidence) -- Maps to: rosecoin anchor, rosecoin verify, rosecoin notarize -- ══════════════════════════════════════════════════════════════ [node] -- Rosecoin node RPC endpoint url = "https://rosecoin.rocheston.com/rpc" -- For local development: -- url = "http://localhost:9333" timeout_seconds = 30 max_retries = 3 [wallet] address = "rc1_acme_soc_2026" signing_key_env = "ROSECOIN_SIGNING_KEY" -- Key derivation path (if using HD wallet) -- derivation_path = "m/44'/999'/0'/0/0" [evidence] -- Automatically anchor every evidence pack? auto_anchor = true -- Include full evidence details or just merkle root? anchor_mode = "merkle_root" -- merkle_root | full_hash | both -- Minimum batch size before anchoring (saves tx fees) batch_size = 1 -- Maximum wait time before flushing batch batch_timeout = "5 minutes" [offline] -- Queue transactions locally if node is unreachable queue_enabled = true queue_dir = "~/.zelc/pending_anchors" -- Auto-retry interval retry_interval = "10 minutes" max_queue_size = 1000 [verification] -- Explorer URL for generating proof links explorer_url = "https://explorer.rosecoin.rocheston.com" -- Cache verification results cache_duration = "24 hours"
SIEM
integrations/siem.toml
ZelC commands: zelfire ingest, zelfire correlate
Controls where events are ingested from and exported to. Supports Splunk (with HEC ingestion), Elastic SIEM, Microsoft Sentinel, IBM QRadar, and Google Chronicle. Each provider has its own authentication and endpoint configuration.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: SIEM -- Maps to: zelfire ingest, zelfire correlate -- ══════════════════════════════════════════════════════════════ -- Options: splunk | elastic | sentinel | qradar | chronicle | sumo | mock provider = "splunk" -- ┌──────────────────────────────────────────┐ -- │ SPLUNK │ -- └──────────────────────────────────────────┘ [splunk] api_url = "https://splunk.acme.com:8089" api_key_env = "SPLUNK_TOKEN" default_index = "security" default_sourcetype = "zelc:events" search_earliest = "-24h" search_latest = "now" -- HEC (HTTP Event Collector) for ingesting hec_url = "https://splunk.acme.com:8088" hec_token_env = "SPLUNK_HEC_TOKEN" -- ┌──────────────────────────────────────────┐ -- │ ELASTIC SIEM │ -- └──────────────────────────────────────────┘ [elastic] api_url = "https://elastic.acme.com:9200" api_key_env = "ELASTIC_API_KEY" index_pattern = "security-*" kibana_url = "https://kibana.acme.com:5601" -- Cloud ID for Elastic Cloud -- cloud_id = "deployment:xxxxx" -- ┌──────────────────────────────────────────┐ -- │ MICROSOFT SENTINEL │ -- └──────────────────────────────────────────┘ [sentinel] -- Uses azure.toml credentials workspace_id = "xxxx-xxxx-xxxx" resource_group = "soc-rg" -- ┌──────────────────────────────────────────┐ -- │ IBM QRADAR │ -- └──────────────────────────────────────────┘ [qradar] api_url = "https://qradar.acme.com/api" api_key_env = "QRADAR_TOKEN" version = "19.0" -- ┌──────────────────────────────────────────┐ -- │ GOOGLE CHRONICLE │ -- └──────────────────────────────────────────┘ [chronicle] api_url = "https://backstory.googleapis.com" -- Uses gcloud.toml credentials customer_id = "xxxx"
Threat Intelligence
integrations/threat_intel.toml
ZelC commands: threat lookup, malware detonate, yara scan, threat feed ingest
Configures threat intelligence sources for IP/hash lookups, sandbox detonation, YARA scanning, and STIX/TAXII feed ingestion. Supports VirusTotal, AlienVault OTX, Recorded Future, Mandiant, Hybrid Analysis, ANY.RUN, and auto-updating YARA rules.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Threat Intelligence -- Maps to: threat lookup, malware detonate, yara scan, feed ingest -- ══════════════════════════════════════════════════════════════ -- Primary provider for "threat lookup ip" and "threat lookup hash" -- Options: virustotal | alienvault | recordedfuture | mandiant | crowdstrike_intel | mock provider = "virustotal" [virustotal] api_key_env = "VT_API_KEY" api_url = "https://www.virustotal.com/api/v3" rate_limit_per_minute = 4 -- free tier = 4, premium = 500 [alienvault] api_key_env = "OTX_API_KEY" api_url = "https://otx.alienvault.com/api/v1" [recordedfuture] api_key_env = "RF_API_KEY" api_url = "https://api.recordedfuture.com/v2" [sandbox] -- For "malware detonate file" -- Options: any_run | joe_sandbox | cuckoo | hybrid_analysis provider = "hybrid_analysis" api_key_env = "HA_API_KEY" api_url = "https://www.hybrid-analysis.com/api/v2" environment_id = "120" -- Windows 10 64-bit timeout_seconds = 300 [yara] rules_dir = "./yara_rules" auto_update = true update_source = "https://github.com/Yara-Rules/rules" [feeds] -- STIX/TAXII feed sources for "threat feed ingest" [feeds.abuse_ch] url = "https://feodotracker.abuse.ch/downloads/ipblocklist.csv" format = "csv" refresh = "1 hour" [feeds.emerging_threats] url = "https://rules.emergingthreats.net/blockrules/compromised-ips.txt" format = "text" refresh = "6 hours" [cache] enabled = true duration = "24 hours" max_entries = 100000
Ticketing (Jira, ServiceNow)
integrations/tickets.toml
ZelC commands: ticket open, ticket close, ticket update
Controls where incident tickets are created and managed. Supports Jira Cloud/Server and ServiceNow with auto-assignment by severity and evidence attachment.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Ticketing -- Maps to: ticket open, ticket close, ticket update -- ══════════════════════════════════════════════════════════════ -- Options: jira | servicenow | zendesk | freshdesk | linear | mock provider = "jira" [jira] api_url = "https://acme.atlassian.net" email = "[email protected]" api_key_env = "JIRA_API_KEY" project_key = "SOC" default_issue_type = "Incident" default_priority = "High" -- Custom fields mapping custom_fields = { "customfield_10001" = "Security Incident" } -- Auto-assign based on severity critical_assignee = "soc-lead" -- Link to evidence attach_evidence = true [servicenow] api_url = "https://acme.service-now.com/api/now" username_env = "SNOW_USER" password_env = "SNOW_PASS" table = "incident" assignment_group = "SOC" caller_id = "zelc-automation"
Rocheston Product Suite
ZelAccess — Zero Trust Network Access
integrations/zelaccess.toml
ZelC commands: zelaccess grant, zelaccess revoke, zelaccess verify, zelaccess policy
Rocheston ZTNA platform. Enforces default-deny access posture with continuous verification, device health checks, MFA requirements, microsegmentation, and risk-adaptive authentication. Blocks jailbroken devices and unmanaged endpoints.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelAccess -- Rocheston Zero Trust Network Access (ZTNA) -- Maps to: zelaccess grant, zelaccess revoke, zelaccess verify, zelaccess policy -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelaccess.rocheston.com/api" api_key_env = "ZELACCESS_API_KEY" [policy] -- Default access posture default_deny = true -- Zero Trust: deny unless explicitly granted -- Continuous verification interval reverification_interval = "15 minutes" -- Require device health check? require_device_health = true -- Require MFA for all access? require_mfa = true -- Session timeout session_timeout = "8 hours" [device_trust] -- Minimum device trust score to grant access (0-100) min_trust_score = 70 -- Required device attributes require_encryption = true require_updated_os = true require_edr_running = true -- Block jailbroken/rooted devices block_jailbroken = true [microsegmentation] -- Network segments and access levels enabled = true -- Default segment policy default_segment_policy = "deny_all" [logging] log_all_access_decisions = true log_denied_attempts = true export_to_siem = true
ZelCloud — Cloud Security Posture
integrations/zelcloud.toml
ZelC commands: zelcloud scan, zelcloud drift, zelcloud posture, zelcloud remediate
Rocheston CSPM platform. Scans AWS, Azure, and GCP accounts against CIS, NIST, and SOC2 benchmarks. Detects configuration drift, calculates posture scores, and optionally auto-remediates critical misconfigurations.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelCloud -- Rocheston Cloud Security Posture Management (CSPM) -- Maps to: zelcloud scan, zelcloud drift, zelcloud posture, zelcloud remediate -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelcloud.rocheston.com/api" api_key_env = "ZELCLOUD_API_KEY" [cloud_accounts] -- Connected cloud accounts for posture scanning [cloud_accounts.aws] enabled = true -- Uses aws.toml credentials account_ids = ["123456789012"] [cloud_accounts.azure] enabled = false -- Uses azure.toml credentials subscription_ids = ["xxxx-xxxx-xxxx"] [cloud_accounts.gcp] enabled = false -- Uses gcloud.toml credentials project_ids = ["acme-prod"] [scanning] -- Scan schedule schedule = "daily" -- hourly | daily | weekly | manual -- Benchmarks to evaluate against benchmarks = ["CIS", "NIST", "SOC2"] -- Auto-remediate misconfigurations? auto_remediate = false -- Severity threshold for auto-remediation auto_remediate_threshold = "critical" [drift] -- Baseline for drift detection baseline_snapshot = "latest" -- Alert on drift? alert_on_drift = true alert_severity = "high" [posture] -- Overall posture score settings score_weights = { security = 40, compliance = 30, operational = 30 } -- Minimum passing score passing_score = 70
ZelCode — Secure Code Analysis
integrations/zelcode.toml
ZelC commands: zelcode scan, zelcode review, zelcode fix, zelcode gate
Rocheston code security platform. Performs SAST, SCA, secrets detection, and IaC scanning across Python, JavaScript, Java, Go, Rust, ZelC, and Terraform. Integrates into CI/CD as a merge gate. Uses AINA for AI-powered fix suggestions. Outputs SARIF for IDE integration.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelCode -- Rocheston Secure Code Analysis Platform -- Maps to: zelcode scan, zelcode review, zelcode fix, zelcode gate -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelcode.rocheston.com/api" api_key_env = "ZELCODE_API_KEY" [scanning] -- Analysis types sast = true -- Static Application Security Testing dast = false -- Dynamic Application Security Testing sca = true -- Software Composition Analysis (dependencies) secrets = true -- Hardcoded secret detection iac = true -- Infrastructure as Code scanning (Terraform, K8s YAML) -- Languages supported languages = ["python", "javascript", "java", "go", "rust", "zelc", "terraform", "yaml"] -- Scan on every commit? scan_on_commit = true [rules] -- Rule sets owasp_top_10 = true sans_top_25 = true custom_rules_dir = "./zelcode_rules" -- Severity threshold to fail the build fail_on_severity = "high" -- critical | high | medium | low -- Ignore known false positives ignore_file = ".zelcodeignore" [fix] -- Auto-fix suggestions suggest_fixes = true -- Use AINA to generate fix recommendations? use_aina = true -- Auto-apply safe fixes (whitespace, import ordering)? auto_fix_safe = true -- Auto-apply security fixes? auto_fix_security = false -- Too risky for auto-apply [gate] -- CI/CD pipeline gating enabled = true -- Block merge if critical issues found? block_merge_on_critical = true -- Block deploy if high issues found? block_deploy_on_high = true -- Grace period for existing issues grace_period = "7 days" [reporting] output_dir = "./code_security_reports" format = "html" include_code_snippets = true include_fix_suggestions = true -- SARIF output for IDE integration sarif_output = true
ZelDrift — Configuration Drift Detection
integrations/zeldrift.toml
ZelC commands: zeldrift scan, zeldrift baseline, zeldrift compare, zeldrift remediate
Rocheston drift detection engine. Continuously monitors firewall rules, security groups, IAM policies, Kubernetes configs, and OS configurations against a golden baseline. Alerts on unauthorized changes and optionally auto-remediates.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelDrift -- Rocheston Configuration Drift Detection Engine -- Maps to: zeldrift scan, zeldrift baseline, zeldrift compare, zeldrift remediate -- ══════════════════════════════════════════════════════════════ [api] url = "https://zeldrift.rocheston.com/api" api_key_env = "ZELDRIFT_API_KEY" [baseline] -- Golden standard configuration baseline version = "v1.0" baseline_file = "./baselines/golden_config.json" -- Auto-snapshot baseline on first run? auto_generate = true [scanning] -- What to scan for drift scan_targets = ["firewall_rules", "security_groups", "iam_policies", "k8s_configs", "os_configs"] -- Schedule schedule = "hourly" -- realtime | hourly | daily | weekly -- Exclude known-changing configs exclude_patterns = ["*.log", "*.tmp", "session_*"] [drift_response] -- What happens when drift is detected alert_severity = "high" auto_remediate = false -- Revert to baseline automatically? -- Require approval before remediation? require_approval = true -- Create ticket on drift? auto_ticket = true [reporting] output_dir = "./drift_reports" format = "html" include_diff = true -- Show exact changes between baseline and current include_timeline = true -- Show when drift occurred
ZelExploits — Exploit Intelligence
integrations/zelexploits.toml
ZelC commands: zelexploits lookup, zelexploits track, zelexploits prioritize, zelexploits alert
Rocheston exploit tracking platform. Monitors the exploit lifecycle from POC to weaponized to in-the-wild. Tracks NVD, CISA KEV, ExploitDB, GitHub POCs, Metasploit, and Nuclei templates. Correlates with your asset inventory to alert when your stack is affected. Uses AINA for impact prediction.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelExploits -- Rocheston Exploit Intelligence & Weaponization Tracking -- Maps to: zelexploits lookup, zelexploits track, zelexploits prioritize, zelexploits alert -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelexploits.rocheston.com/api" api_key_env = "ZELEXPLOITS_API_KEY" [intelligence] -- Track exploit maturity lifecycle track_lifecycle = true -- POC → weaponized → in-the-wild → commodity -- Sources to monitor sources = ["nvd", "cisa_kev", "exploit_db", "github_poc", "metasploit", "nuclei"] -- Auto-correlate with your asset inventory? correlate_with_assets = true -- Use AINA for impact prediction? ai_impact_prediction = true [alerting] -- Alert when a CVE affecting your stack gets a public exploit alert_on_weaponization = true alert_severity = "critical" -- Alert when CISA adds to KEV (Known Exploited Vulnerabilities) alert_on_kev = true -- Alert lead time goal (hours between exploit release and your patch) target_lead_time = 24 [prioritization] -- Priority factors factor_exploit_maturity = true -- Is there a working exploit? factor_asset_exposure = true -- Is the asset internet-facing? factor_asset_criticality = true -- How important is this asset? factor_compensating_controls = true -- Do we have mitigations in place? -- Use AINA to calculate composite priority score? use_aina = true [tracking] -- Track patch status track_patch_status = true -- SLA compliance monitoring sla_monitoring = true -- Sync with ZelScan results sync_with_zelscan = true
Zelfire — SOC Platform
integrations/zelfire.toml
ZelC commands: zelfire ingest, zelfire correlate, zelfire contain, zelfire close
Rocheston unified SOC platform combining SIEM, XDR, and SOAR. Ingests events from all sources, correlates with AINA AI engine, auto-maps to MITRE ATT&CK, manages incident lifecycle with SLA timers, and provides real-time SOC dashboards. The nerve center of the Rocheston security stack.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Zelfire -- Rocheston SOC Platform (SIEM + XDR + SOAR unified) -- Maps to: zelfire ingest, zelfire correlate, zelfire contain, zelfire close -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelfire.rocheston.com/api" api_key_env = "ZELFIRE_API_KEY" [ingestion] -- Event sources sources = ["siem", "edr", "cloud", "identity", "network", "email"] -- Ingestion rate limit max_events_per_second = 10000 -- Parsing auto_parse = true normalize_fields = true enrich_with_threat_intel = true [correlation] -- Correlation engine settings engine = "aina" -- rule_based | statistical | aina (AI-powered) -- Correlation window time_window = "30 minutes" -- Minimum events to trigger an incident min_events = 3 -- MITRE ATT&CK mapping auto_mitre_map = true [incidents] -- Incident lifecycle auto_create = true -- Auto-assign based on type assignment_rules_dir = "./zelfire_rules" -- Default severity default_severity = "medium" -- SLA timers sla_critical = "15 minutes" sla_high = "1 hour" sla_medium = "4 hours" sla_low = "24 hours" [containment] -- Automated containment auto_contain = false auto_contain_confidence = 95 -- Containment playbook default_playbook = "contain_and_investigate" [dashboard] -- Real-time SOC dashboard refresh_interval = "10 seconds" default_view = "operations" -- operations | executive | analyst | hunting -- Widget layout widgets = ["active_incidents", "alert_queue", "mitre_heatmap", "sla_tracker"] [retention] -- Event retention raw_events = "90 days" incidents = "365 days" evidence = "7 years"
ZelKill — Threat Neutralization
integrations/zelkill.toml
ZelC commands: zelkill terminate, zelkill contain, zelkill eradicate, zelkill sweep
Rocheston threat neutralization engine. Surgical, aggressive, or scorched-earth response modes. Auto-isolates hosts, blocks IPs, kills processes, removes persistence mechanisms, quarantines artifacts, and sweeps the network for lateral movement. Hard safety exclusions protect domain controllers and critical infrastructure.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelKill -- Rocheston Threat Neutralization Engine -- Maps to: zelkill terminate, zelkill contain, zelkill eradicate, zelkill sweep -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelkill.rocheston.com/api" api_key_env = "ZELKILL_API_KEY" [execution] -- Kill chain execution mode mode = "surgical" -- surgical | aggressive | scorched_earth -- Require confirmation before kinetic action? require_confirmation = true -- Maximum blast radius (hosts affected per action) max_blast_radius = 5 -- Dry run first? dry_run_first = true [containment] -- Immediate containment actions auto_isolate = true -- Auto-isolate on confirmed threat auto_block_ip = true -- Auto-block attacker IP auto_kill_process = true -- Auto-kill malicious processes -- Containment timeout (revert if no follow-up) containment_timeout = "4 hours" [eradication] -- Deep clean actions remove_persistence = true -- Remove registry keys, scheduled tasks, cron jobs quarantine_artifacts = true -- Move malware to secure vault -- Verify eradication verify_clean = true -- Re-scan after eradication verification_timeout = "30 minutes" [sweep] -- Network-wide sweep for lateral movement auto_sweep = true -- Sweep network after containment sweep_scope = "subnet" -- host | subnet | vlan | enterprise -- IOC types to sweep for sweep_for = ["file_hash", "ip", "domain", "process_name", "registry_key"] [safety] -- Hosts that can NEVER be killed/contained exclude_hosts = ["domain-controller", "ca-server", "backup-server"] -- Processes that can NEVER be killed exclude_processes = ["sshd", "docker", "kubelet", "lsass.exe"] -- Users that can NEVER be locked exclude_users = ["admin", "break-glass"]
ZelMap — Attack Surface Mapping
integrations/zelmap.toml
ZelC commands: zelmap discover, zelmap inventory, zelmap expose, zelmap monitor
Rocheston attack surface discovery platform. Passive DNS enumeration, certificate transparency monitoring, port scanning, subdomain discovery, and cloud asset inventory. Continuously monitors for new exposures and shadow IT. Auto-classifies assets by criticality.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelMap -- Rocheston Attack Surface Mapping & Asset Discovery -- Maps to: zelmap discover, zelmap inventory, zelmap expose, zelmap monitor -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelmap.rocheston.com/api" api_key_env = "ZELMAP_API_KEY" [discovery] -- Discovery methods passive_dns = true -- Passive DNS enumeration certificate_transparency = true -- CT log monitoring port_scanning = true -- Active port scanning subdomain_enumeration = true -- Subdomain discovery cloud_inventory = true -- Cloud asset enumeration -- Scan targets (domains and IP ranges) domains = ["acme.com", "acme.io"] ip_ranges = ["203.0.113.0/24"] -- Excluded from scanning exclude = ["internal.acme.com"] [monitoring] -- Continuous attack surface monitoring enabled = true check_interval = "6 hours" -- Alert on new assets alert_on_new_asset = true -- Alert on exposed services alert_on_exposure = true alert_severity = "high" [inventory] -- Asset classification auto_classify = true -- Auto-classify by service type -- Criticality tagging auto_tag_criticality = true -- Sync with CMDB? sync_cmdb = false [exposure] -- What counts as an exposure exposed_ports = [22, 23, 3389, 445, 1433, 3306, 5432, 6379, 27017] -- Alert on shadow IT (unknown assets) alert_shadow_it = true
ZelPosture — Security Posture Management
integrations/zelposture.toml
ZelC commands: zelposture score, zelposture assess, zelposture benchmark, zelposture report
Rocheston posture management platform. Assesses network, endpoint, cloud, identity, application, and data security against NIST CSF, CIS, and MITRE D3FEND. Calculates a weighted posture score (0-100), benchmarks against industry peers, and generates AI-powered remediation roadmaps.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelPosture -- Rocheston Security Posture Management -- Maps to: zelposture score, zelposture assess, zelposture benchmark, zelposture report -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelposture.rocheston.com/api" api_key_env = "ZELPOSTURE_API_KEY" [assessment] -- Assessment scope scope = ["network", "endpoint", "cloud", "identity", "application", "data"] -- Frameworks to assess against frameworks = ["NIST-CSF", "CIS", "MITRE-DEFEND"] -- Schedule schedule = "daily" [scoring] -- Posture score calculation (0-100) method = "weighted" -- weighted | simple_average -- Category weights weights = { network = 20, endpoint = 20, cloud = 20, identity = 15, application = 15, data = 10 } -- Minimum passing score passing_score = 75 -- Alert if score drops below threshold alert_below = 60 alert_severity = "critical" [benchmarking] -- Compare against industry peers peer_comparison = true industry = "technology" company_size = "enterprise" [recommendations] -- AI-powered recommendations via AINA use_aina = true -- Prioritize by impact prioritize_by = "risk_reduction" -- risk_reduction | cost | effort -- Maximum recommendations per assessment max_recommendations = 20 [reporting] output_dir = "./posture_reports" format = "pdf" include_trend = true include_peer_comparison = true include_remediation_roadmap = true
ZelRank — Security Rating
integrations/zelrank.toml
ZelC commands: zelrank score, zelrank benchmark, zelrank compare, zelrank report
Rocheston security rating and benchmarking platform. Scores your organization across network, application, endpoint, identity, cloud, and compliance. Benchmarks against industry peers by vertical and company size. Continuous monitoring with drop alerts.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelRank -- Rocheston Security Rating & Benchmarking Platform -- Maps to: zelrank score, zelrank benchmark, zelrank compare, zelrank report -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelrank.rocheston.com/api" api_key_env = "ZELRANK_API_KEY" [scoring] -- Organization being scored org_name = "Acme Corp" org_domain = "acme.com" -- Scoring categories categories = ["network", "application", "endpoint", "identity", "cloud", "compliance"] -- Benchmark against benchmark_industry = "financial_services" -- tech | financial_services | healthcare | government | retail benchmark_size = "enterprise" -- startup | mid_market | enterprise [monitoring] -- Continuous monitoring enabled = true check_interval = "daily" -- Alert if score drops alert_on_drop = true alert_threshold = 10 -- alert if score drops by this many points [reporting] output_dir = "./security_ratings" format = "pdf" include_peer_comparison = true include_trend_analysis = true
ZelScan — Vulnerability Scanner
integrations/zelscan.toml
ZelC commands: zelscan scan, zelscan report, zelscan track, zelscan prioritize
Rocheston vulnerability scanner. Full, quick, targeted, and compliance scan modes with port range 1-65535. Uses AINA for AI-powered prioritization factoring in threat intelligence, asset criticality, and business impact. SLA tracking per severity with auto-ticketing.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelScan -- Rocheston Vulnerability Scanner -- Maps to: zelscan scan, zelscan report, zelscan track, zelscan prioritize -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelscan.rocheston.com/api" api_key_env = "ZELSCAN_API_KEY" [scanning] -- Scan types scan_type = "full" -- full | quick | targeted | compliance -- Targets default_targets = ["10.0.0.0/16"] exclude_targets = ["10.0.0.1"] -- Scheduling schedule = "weekly" -- hourly | daily | weekly | monthly | manual -- Port range port_range = "1-65535" -- Service detection service_detection = true os_detection = true [prioritization] -- Use AINA AI to prioritize vulnerabilities by business impact? ai_prioritization = true -- Factor in threat intelligence (is this CVE actively exploited?) factor_threat_intel = true -- Factor in asset criticality factor_asset_criticality = true [sla] -- Remediation SLA by severity critical_days = 7 high_days = 30 medium_days = 90 low_days = 180 [reporting] output_dir = "./vulnerability_reports" format = "pdf" include_remediation_steps = true include_cvss_scores = true group_by = "severity" -- severity | host | cve | service [integration] -- Auto-create tickets for new vulnerabilities? auto_ticket = true auto_ticket_severity = "high" -- create tickets for high and above -- Sync with Vines? sync_with_vines = true
ZelSOAR — Security Orchestration
integrations/zelsoar.toml
ZelC commands: zelsoar run, zelsoar trigger, zelsoar schedule, zelsoar playbook
Rocheston SOAR platform. Orchestrates playbook execution across all integrations with event-driven triggers from SIEM, email, webhooks, and cron schedules. Human-in-the-loop approval for dangerous actions. Tracks MTTD, MTTR, and playbook success rates.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelSOAR -- Rocheston Security Orchestration, Automation & Response -- Maps to: zelsoar run, zelsoar trigger, zelsoar schedule, zelsoar playbook -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelsoar.rocheston.com/api" api_key_env = "ZELSOAR_API_KEY" [orchestration] -- Playbook directories playbook_dir = "./playbooks" -- Maximum concurrent playbook executions max_concurrent = 10 -- Default timeout per playbook default_timeout = "30 minutes" -- Retry failed actions retry_on_failure = true max_retries = 3 retry_delay = "30 seconds" [triggers] -- Event sources that trigger playbooks siem_alerts = true -- Trigger from SIEM alerts email_alerts = true -- Trigger from email webhook_triggers = true -- Trigger from HTTP webhooks scheduled = true -- Cron-based triggers manual = true -- Manual execution [approval] -- Human-in-the-loop settings require_approval_for = ["isolate", "delete", "block_user", "rotate_keys"] approval_channel = "slack" -- slack | teams | email approval_timeout = "15 minutes" -- Auto-approve if no response within timeout? auto_approve_on_timeout = false [metrics] -- Track MTTD, MTTR, and playbook success rates enabled = true export_to_noodles = true dashboard_refresh = "5 minutes"
ZelTester — Penetration Testing
integrations/zeltester.toml
ZelC commands: zeltester scan, zeltester exploit, zeltester report
Rocheston automated penetration testing platform. Full, quick, stealth, and compliance scan profiles. Safe mode verifies exploits without execution. Auto-generates remediation reports with evidence. Safety exclusions prevent testing production-critical systems.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelTester -- Rocheston Automated Penetration Testing Platform -- Maps to: zeltester scan, zeltester exploit, zeltester report -- ══════════════════════════════════════════════════════════════ [api] url = "https://zeltester.rocheston.com/api" api_key_env = "ZELTESTER_API_KEY" timeout_seconds = 300 [scanning] -- Default scan profile profile = "full" -- full | quick | stealth | compliance -- Target scope default_targets = ["10.0.0.0/16"] -- Excluded from all scans (safety net) exclude_targets = ["10.0.0.1", "10.0.0.2"] -- Maximum concurrent scan threads max_threads = 10 -- Auto-generate report after scan auto_report = true [exploit] -- Allow automated exploitation? auto_exploit = false -- DANGEROUS: only enable in lab environments -- Safe mode: verify exploits but don't execute safe_mode = true -- Maximum exploit severity to auto-run max_auto_severity = "medium" -- low | medium | high | critical [reporting] output_dir = "./pentest_reports" format = "pdf" -- pdf | html | json include_remediation = true include_evidence = true
ZelWall — Web Application Firewall
integrations/zelwall.toml
ZelC commands: zelwall block, zelwall allow, zelwall rules, zelwall report
Rocheston WAF. OWASP Core Rule Set with SQL injection, XSS, command injection, path traversal, and file inclusion protection. Rate limiting, auto-sync blocklist from ZelC firewall actions, and auto-block IPs with high threat intel scores.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelWall -- Rocheston Web Application Firewall -- Maps to: zelwall block, zelwall allow, zelwall rules, zelwall report -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelwall.rocheston.com/api" api_key_env = "ZELWALL_API_KEY" [defaults] -- Default action for unmatched requests default_action = "allow" -- allow | block | challenge -- Rate limiting rate_limit_enabled = true rate_limit_requests = 100 rate_limit_window = "1 minute" [rules] -- Rule sets to enable owasp_core = true -- OWASP Core Rule Set sql_injection = true xss = true command_injection = true path_traversal = true file_inclusion = true -- Custom rules directory custom_rules_dir = "./zelwall_rules" [blocklist] -- Auto-sync blocklist from ZelC firewall actions? sync_from_firewall = true -- Auto-block IPs with high threat intel scores? auto_block_threshold = 80 [logging] log_all_requests = false log_blocked_requests = true log_format = "json" export_to_siem = true
ZelXDR — Extended Detection & Response
integrations/zelxdr.toml
ZelC commands: zelxdr detect, zelxdr correlate, zelxdr hunt, zelxdr investigate, zelxdr contain
Rocheston XDR platform. Ingests telemetry from endpoint, network, cloud, identity, email, and web. AINA-powered detection with MITRE ATT&CK mapping. Auto-investigates high severity incidents, builds timelines, and collects forensics. Threat hunting with scheduled queries.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelXDR -- Rocheston Extended Detection & Response Platform -- Maps to: zelxdr detect, zelxdr correlate, zelxdr hunt, zelxdr investigate, zelxdr contain -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelxdr.rocheston.com/api" api_key_env = "ZELXDR_API_KEY" [data_sources] -- Which telemetry feeds into ZelXDR endpoint = true -- EDR telemetry network = true -- network flow data cloud = true -- cloud audit logs identity = true -- identity provider logs email = true -- email gateway logs web = true -- web proxy logs [detection] -- Detection engine settings use_aina = true -- AI-powered detection via AINA -- MITRE ATT&CK mapping mitre_mapping = true -- Correlation window correlation_window = "30 minutes" -- Minimum alerts to trigger an incident min_alerts_for_incident = 3 -- Auto-investigate high severity? auto_investigate = true [response] -- Automated response settings auto_contain = false -- Auto-isolate on confirmed threat? auto_contain_threshold = 95 -- Confidence threshold for auto-containment -- Playbook execution default_playbook = "investigate_and_contain" -- Require human approval? require_approval_above = "high" [hunting] -- Threat hunting settings hunt_schedule = "daily" -- Hunt queries directory queries_dir = "./hunt_queries" -- Retain hunt results results_retention = "90 days" [investigation] -- Investigation workspace workspace_dir = "./investigations" -- Auto-collect forensics auto_collect_forensics = true -- Timeline generation auto_timeline = true
ZelZero-Trust — Policy Engine
integrations/zelzerotrust.toml
ZelC commands: zelzt verify, zelzt enforce, zelzt policy, zelzt score, zelzt segment
Rocheston Zero Trust policy engine. Default-deny posture with continuous verification every 10 minutes. Enforces least privilege, device compliance (encryption, patched OS, EDR agent), location-based access, risk-adaptive authentication, microsegmentation, and behavior analytics via AINA. Maturity assessment against CISA Zero Trust Maturity Model.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: ZelZero-Trust -- Rocheston Zero Trust Policy Engine -- Maps to: zelzt verify, zelzt enforce, zelzt policy, zelzt score, zelzt segment -- ══════════════════════════════════════════════════════════════ [api] url = "https://zelzt.rocheston.com/api" api_key_env = "ZELZT_API_KEY" [policy] -- Core Zero Trust principles default_posture = "deny_all" -- deny_all | verify_then_allow -- Never trust, always verify continuous_verification = true verification_interval = "10 minutes" -- Least privilege enforcement enforce_least_privilege = true [identity] -- Identity verification requirements require_mfa = true require_device_compliance = true require_location_check = true -- Trusted locations (bypass location check) trusted_locations = ["office_hq", "vpn_pool"] -- Risk-adaptive authentication risk_adaptive = true -- Step up auth for risky behavior [device] -- Device trust requirements min_trust_score = 75 require_encryption = true require_patched_os = true require_edr_agent = true -- Block unmanaged devices? block_unmanaged = true [network] -- Microsegmentation microsegmentation = true -- Default segment policy default_segment_access = "deny" -- Segment definitions loaded from segments_config = "./zerotrust/segments.toml" [monitoring] -- Continuous monitoring and anomaly detection behavior_analytics = true -- Use AINA for anomaly detection use_aina = true -- Alert on policy violations alert_on_violation = true alert_severity = "high" [reporting] -- Zero Trust maturity score maturity_assessment = true maturity_framework = "CISA_ZTMM" -- CISA Zero Trust Maturity Model output_dir = "./zerotrust_reports"
Vulnerability Vines AI
integrations/vines.toml
ZelC commands: vines scan, vines report, vines track
Rocheston vulnerability intelligence platform. Automated vulnerability scanning with AI-powered prioritization, scan scheduling, severity-based auto-ticketing, SLA timers for remediation tracking, and optional auto-quarantine of critically vulnerable hosts. Integrates with ZelScan for deep scanning and AINA for impact analysis.
-- ══════════════════════════════════════════════════════════════ -- ZelC Integration: Vulnerability Vines -- Rocheston Vulnerability Intelligence Platform -- Maps to: vines scan, vines report, vines track -- ══════════════════════════════════════════════════════════════ [api] url = "https://vines.rocheston.com/api" api_key_env = "VINES_API_KEY" [scanning] auto_scan = true scan_schedule = "daily" -- hourly | daily | weekly | manual scan_targets = ["10.0.0.0/16"] exclude_targets = ["10.0.0.1"] max_concurrent_scans = 5 [severity_thresholds] -- Auto-create tickets for vulnerabilities above this level auto_ticket_severity = "high" -- critical | high | medium | low -- Auto-block hosts with critical unpatched vulns auto_quarantine_critical = false -- Days before escalation sla_critical = 7 sla_high = 30 sla_medium = 90 [reporting] output_dir = "./vulnerability_reports" format = "pdf" include_remediation = true