{
  "hunt": {
    "meta": {
      "tlp": "clear",
      "hunt": {
        "handoff": "promote-to-detection",
        "trigger": "intel-report",
        "methodology": "model-assisted",
        "applicability": "campaign-specific",
        "justification": "Manufacturing production uptime is the primary target for modern ransomware. Securing the IT-to-OT bridge is the most critical control for preventing a breach in the corporate office from impacting the shop floor."
      },
      "name": "Abuse of Remote Gateways and Third-Party Access",
      "type": "investigation",
      "labels": [
        "hunt",
        "attack.t1133",
        "attack.t1195",
        "attack.t1566",
        "attack.t1572",
        "command and control",
        "discovery",
        "impact",
        "initial access"
      ],
      "series": {
        "slug": "7-key-manufacturing-cybersecurity-trends-for-2027-huntress",
        "index": 1,
        "title": "7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress",
        "total": 2
      },
      "related": [
        {
          "hunt": "ot-ransomware-encryption-indicators",
          "reason": "This hunt focuses on the entry; a follow-on hunt should look for the file-level encryption patterns of the ransomware payload itself.",
          "relation": "follows"
        }
      ],
      "targets": {
        "hunter": {
          "name": "Hunt agent",
          "agent": true
        },
        "analyst": {
          "name": "Tier-2 analyst",
          "role": "analyst"
        },
        "network": {
          "name": "Network telemetry",
          "category": "network",
          "telemetry": [
            "network"
          ]
        },
        "endpoint": {
          "name": "Endpoint telemetry (hb_ surfaces)",
          "category": "endpoint",
          "telemetry": [
            "endpoint"
          ]
        },
        "identity": {
          "name": "Identity / sign-in telemetry",
          "category": "identity",
          "telemetry": [
            "identity"
          ]
        }
      },
      "analysis": "A standard rule alerts on a single login or shell; this hunt correlates a successful third-party login with its preceding foothold and its rare follow-on network connections, providing the context needed to distinguish maintenance from an intrusion.",
      "coverage": [
        {
          "stage": "phishing-initial-foothold",
          "steps": [
            "phishing-foothold"
          ],
          "status": "covered"
        },
        {
          "stage": "third-party-supply-chain-entry",
          "steps": [
            "remote-access-lead",
            "evaluate-lead"
          ],
          "status": "covered"
        },
        {
          "stage": "it-ot-gateway-bridging",
          "steps": [
            "bridge-traversal"
          ],
          "status": "covered"
        },
        {
          "stage": "legacy-system-discovery",
          "reason": "Belongs to another part of the '7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress' series.",
          "status": "out_of_scope"
        },
        {
          "stage": "lateral-protocol-tunneling",
          "reason": "Belongs to another part of the '7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress' series.",
          "status": "out_of_scope"
        },
        {
          "stage": "ot-impact-ransomware",
          "reason": "Belongs to another part of the '7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress' series.",
          "status": "out_of_scope"
        }
      ],
      "scenario": {
        "stages": [
          {
            "name": "Corporate Phishing Foothold",
            "slug": "phishing-initial-foothold",
            "tactic": "initial-access",
            "techniques": [
              "T1566"
            ],
            "observables": [
              "Phishing emails targeting Sales or Finance departments",
              "Execution of malicious attachments on corporate laptops"
            ]
          },
          {
            "name": "Compromised Third-Party Vendor Access",
            "slug": "third-party-supply-chain-entry",
            "tactic": "initial-access",
            "techniques": [
              "T1195"
            ],
            "observables": [
              "Use of stolen credentials from specialized machine integrators or HVAC contractors",
              "Persistent 'always-on' VPN links from vendor networks",
              "Remote management tool logins appearing as routine maintenance"
            ]
          },
          {
            "name": "IT-to-OT Bridge Access",
            "slug": "it-ot-gateway-bridging",
            "tactic": "initial-access",
            "techniques": [
              "T1133"
            ],
            "observables": [
              "Access to Citrix or VPN appliances acting as bridges",
              "Logins to jump servers positioned between corporate and plant networks",
              "Stolen credentials used to cross network segmentation boundaries"
            ]
          },
          {
            "name": "Legacy Industrial Asset Discovery",
            "slug": "legacy-system-discovery",
            "tactic": "discovery",
            "techniques": [
              "T1133"
            ],
            "observables": [
              "Windows 7 and Windows XP systems running as HMIs",
              "Legacy PLCs with hard-coded passwords like '1234' or 'password'",
              "Unencrypted management ports active on legacy execution systems"
            ]
          },
          {
            "name": "Lateral Movement via Tunneling",
            "slug": "lateral-protocol-tunneling",
            "tactic": "command-and-control",
            "techniques": [
              "T1572"
            ],
            "observables": [
              "Encapsulated network traffic traversing segment digital walls",
              "Lateral movement using Telnet (port 23), FTP (port 21), or unencrypted HTTP (port 80)",
              "Connections to Human-Machine Interfaces (HMIs) and Programmable Logic Controllers (PLCs)"
            ]
          },
          {
            "name": "Operational Technology Ransomware Impact",
            "slug": "ot-impact-ransomware",
            "tactic": "impact",
            "techniques": [
              "T1486"
            ],
            "observables": [
              "Encryption of files on Manufacturing Execution Systems (MES)",
              "Manipulation of PLC recipe values or belt speed",
              "Disabling of safety sensors on the plant floor"
            ]
          }
        ],
        "summary": "Attackers target manufacturing environments by gaining a corporate foothold via phishing or compromised third-party vendor VPNs, subsequently pivoting into operational technology (OT) networks through jump servers or poorly segmented bridges. Once inside, they exploit legacy systems and unencrypted protocols (Telnet, HTTP) to manipulate industrial control systems or deploy ransomware that disrupts production uptime and assembly lines."
      },
      "severity": "medium",
      "rationale": "Focus on servers identified as VPN concentrators or IT/OT jump servers. The vendor_accounts list should be populated with the names of external contractors who have remote access privileges.",
      "guardrails": {
        "claims": "no_unsupported",
        "evidence": "citation_required",
        "telemetry": "untrusted",
        "missing_data": "not_benign"
      },
      "hypothesis": "An adversary has breached a manufacturing network by using stolen vendor credentials on a VPN gateway or by exploiting a phishing foothold to traverse an IT-to-OT jump server.",
      "parameters": {
        "scope_hosts": {
          "type": "list[host]",
          "default": [],
          "description": "Specific gateways or jump servers to focus on; populate from the lead step results."
        },
        "interpreters": {
          "type": "list[string]",
          "default": [
            "powershell.exe",
            "cmd.exe",
            "wscript.exe"
          ],
          "description": "System interpreters used in initial foothold scripts."
        },
        "lookback_days": {
          "type": "number",
          "default": "14",
          "description": "Days of history to examine."
        },
        "corporate_apps": {
          "type": "list[string]",
          "default": [
            "outlook.exe",
            "chrome.exe",
            "msedge.exe"
          ],
          "description": "Email and browser processes that might spawn a phishing payload."
        },
        "vendor_accounts": {
          "from": {
            "ref": "incident",
            "kind": "manual",
            "observed": "2026-10-14"
          },
          "type": "list[string]",
          "default": [
            "hvac_admin",
            "integrator_service",
            "vendor_support"
          ],
          "description": "Known vendor or third-party account names."
        },
        "gateway_keywords": {
          "type": "list[string]",
          "default": [
            "vpn-main",
            "gateway-01",
            "jump-server",
            "citrix-ext"
          ],
          "description": "Names of remote access or bridge infrastructure assets."
        },
        "connection_threshold": {
          "type": "number",
          "default": "15",
          "description": "Rare connection count threshold for bridge traversal."
        }
      },
      "provenance": {
        "authors": [
          {
            "org": "huntbase.io",
            "name": "Huntbase hunt generation"
          }
        ],
        "generated": {
          "by": "huntbase-hunt-generation",
          "from": "https://www.huntress.com/blog/manufacturing-cybersecurity-trends",
          "gates": [
            "dry-run",
            "lint"
          ],
          "model": "hb_google/gemini-3-flash-preview"
        }
      },
      "references": [
        {
          "url": "https://www.huntress.com/blog/manufacturing-cybersecurity-trends",
          "name": "7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress"
        }
      ],
      "blind_spots": [
        {
          "id": "limited-gateway-telemetry",
          "risk": "If the gateway is a proprietary appliance with no agent, the hunt can see the sign-in but not the subsequent bridge processes.",
          "stage": "third-party-supply-chain-entry",
          "question": "Whether a sign-in leads to execution on a host with no process logging",
          "requires": "Endpoint agent coverage on the gateway host"
        },
        {
          "id": "always-on-tunnels",
          "risk": "If a tunnel is already established, sign-in logs will not show a new event, and the network activity might blend into existing traffic baselines.",
          "stage": "it-ot-gateway-bridging",
          "question": "If a persistent vendor tunnel is used for silent lateral movement",
          "requires": "Network flow logs with start/end duration"
        }
      ]
    },
    "name": "Abuse of Remote Gateways and Third-Party Access",
    "description": "Manufacturing networks are increasingly targeted through their remote access infrastructure. Adversaries exploit stolen vendor credentials or phishing footholds to traverse the IT-to-OT bridge and halt production. This hunt identifies successful but anomalous sign-ins from third-party accounts. It then fans out to find evidence of the preceding compromise on corporate laptops and subsequent lateral probing from the gateway into the internal network. An agent weighs these results to determine if an intruder has bridged the network segments."
  },
  "nodes": [
    {
      "id": "hypothesis",
      "type": "hypothesis",
      "label": "Hypothesis",
      "config": {
        "tags": [],
        "series": {
          "slug": "7-key-manufacturing-cybersecurity-trends-for-2027-huntress",
          "index": 1,
          "title": "7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress",
          "total": 2
        },
        "coverage": [
          {
            "stage": "phishing-initial-foothold",
            "steps": [
              "phishing-foothold"
            ],
            "status": "covered"
          },
          {
            "stage": "third-party-supply-chain-entry",
            "steps": [
              "remote-access-lead",
              "evaluate-lead"
            ],
            "status": "covered"
          },
          {
            "stage": "it-ot-gateway-bridging",
            "steps": [
              "bridge-traversal"
            ],
            "status": "covered"
          },
          {
            "stage": "legacy-system-discovery",
            "reason": "Belongs to another part of the '7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress' series.",
            "status": "out_of_scope"
          },
          {
            "stage": "lateral-protocol-tunneling",
            "reason": "Belongs to another part of the '7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress' series.",
            "status": "out_of_scope"
          },
          {
            "stage": "ot-impact-ransomware",
            "reason": "Belongs to another part of the '7 Key Manufacturing Cybersecurity Trends for 2027 | Huntress' series.",
            "status": "out_of_scope"
          }
        ],
        "rationale": "An adversary has breached a manufacturing network by using stolen vendor credentials on a VPN gateway or by exploiting a phishing foothold to traverse an IT-to-OT jump server.",
        "blind_spots": [
          {
            "id": "limited-gateway-telemetry",
            "risk": "If the gateway is a proprietary appliance with no agent, the hunt can see the sign-in but not the subsequent bridge processes.",
            "stage": "third-party-supply-chain-entry",
            "question": "Whether a sign-in leads to execution on a host with no process logging",
            "requires": "Endpoint agent coverage on the gateway host"
          },
          {
            "id": "always-on-tunnels",
            "risk": "If a tunnel is already established, sign-in logs will not show a new event, and the network activity might blend into existing traffic baselines.",
            "stage": "it-ot-gateway-bridging",
            "question": "If a persistent vendor tunnel is used for silent lateral movement",
            "requires": "Network flow logs with start/end duration"
          }
        ],
        "scoping_notes": "Focus on servers identified as VPN concentrators or IT/OT jump servers. The vendor_accounts list should be populated with the names of external contractors who have remote access privileges.",
        "beyond_detection": "A standard rule alerts on a single login or shell; this hunt correlates a successful third-party login with its preceding foothold and its rare follow-on network connections, providing the context needed to distinguish maintenance from an intrusion."
      }
    },
    {
      "id": "remote-access-lead",
      "type": "query",
      "label": "Vendor and Gateway Sign-in Lead",
      "config": {
        "dsl": "sqlite",
        "role": "scoping",
        "source": "identity",
        "content": "SELECT device_hostname, actor_user_name, src_endpoint_ip, dst_endpoint_name, logon_type, time FROM hb_auth_signin WHERE status_id = 1 AND ( (instr(',' || '{{vendor_accounts}}' || ',', ',' || (CASE WHEN instr(actor_user_name, '\\') > 0 THEN SUBSTR(LOWER(actor_user_name), instr(actor_user_name, '\\') + 1) ELSE LOWER(actor_user_name) END) || ',') > 0) OR (LOWER(dst_endpoint_name) LIKE '%vpn%' OR LOWER(dst_endpoint_name) LIKE '%gateway%' OR LOWER(dst_endpoint_name) LIKE '%jump%' OR LOWER(dst_endpoint_name) LIKE '%citrix%') OR (instr(',' || '{{gateway_keywords}}' || ',', ',' || LOWER(dst_endpoint_name) || ',') > 0) ) AND time >= datetime('now', '-{{lookback_days}} days')",
        "surface": "hb_auth_signin",
        "description": "Identify successful authentications to gateways from vendor accounts or to specific gateway hostnames, handling domain prefixes and partial matches.",
        "expected_signal": "Rows show successful logins to critical gateways. Silence means no monitored accounts or services were accessed during the window."
      },
      "parents": [
        {
          "id": "hypothesis"
        }
      ],
      "primitive_config": {
        "dsl": "sqlite",
        "role": "scoping",
        "label": "Vendor and Gateway Sign-in Lead",
        "reads": [
          "actor_user_name",
          "device_hostname",
          "dst_endpoint_name",
          "logon_type",
          "src_endpoint_ip",
          "status_id",
          "time"
        ],
        "source": "hb_auth_signin",
        "target": "identity",
        "content": "SELECT device_hostname, actor_user_name, src_endpoint_ip, dst_endpoint_name, logon_type, time FROM hb_auth_signin WHERE status_id = 1 AND ( (instr(',' || '{{vendor_accounts}}' || ',', ',' || (CASE WHEN instr(actor_user_name, '\\') > 0 THEN SUBSTR(LOWER(actor_user_name), instr(actor_user_name, '\\') + 1) ELSE LOWER(actor_user_name) END) || ',') > 0) OR (LOWER(dst_endpoint_name) LIKE '%vpn%' OR LOWER(dst_endpoint_name) LIKE '%gateway%' OR LOWER(dst_endpoint_name) LIKE '%jump%' OR LOWER(dst_endpoint_name) LIKE '%citrix%') OR (instr(',' || '{{gateway_keywords}}' || ',', ',' || LOWER(dst_endpoint_name) || ',') > 0) ) AND time >= datetime('now', '-{{lookback_days}} days')",
        "silence": "not_evidence_of_absence",
        "expected": "Rows show successful logins to critical gateways. Silence means no monitored accounts or services were accessed during the window.",
        "verified": "dry-run",
        "verified_at": "2026-10-15"
      }
    },
    {
      "id": "evaluate-lead",
      "type": "analytic",
      "label": "Evaluate Sign-in Lead",
      "config": {
        "cite": "required",
        "tools": [
          "endpoint",
          "identity",
          "network"
        ],
        "context": [
          "remote-access-lead"
        ],
        "objective": "Determine if any sign-in from the lead query looks like credential abuse (e.g., unusual geolocations or off-hours maintenance).",
        "description": "Filter the initial sign-ins for anomalies in source IP, timing, or account behavior to decide if the gated fan-out is required.",
        "max_iterations": 3,
        "expected_signal": "A list of host-account pairs that warrant deeper investigation.",
        "success_criteria": "Verdicts identifying specific suspicious sessions."
      },
      "parents": [
        {
          "id": "remote-access-lead"
        }
      ]
    },
    {
      "id": "gate-on-access",
      "type": "checkpoint",
      "label": "Gate: Proceed with Fan-out?",
      "config": {
        "fuzzy": true,
        "judge": "hunter",
        "question": "the evaluate-lead verdict identifies at least one suspicious or malicious sign-in",
        "condition": "the evaluate-lead verdict identifies at least one suspicious or malicious sign-in",
        "blind_spot": "limited-gateway-telemetry",
        "confidence": "medium",
        "description": "Restrict expensive evidence gathering to cases where the login lead is truly suspicious.",
        "checkpoint_type": "mandatory"
      },
      "parents": [
        {
          "id": "evaluate-lead"
        }
      ]
    },
    {
      "id": "phishing-foothold",
      "type": "query",
      "label": "Phishing Foothold: Email/Browser Child Processes",
      "config": {
        "dsl": "sqlite",
        "role": "detection-candidate",
        "source": "endpoint",
        "content": "SELECT device_hostname, process_name, process_cmd_line, parent_process_name, user_name, time FROM hb_process_activity WHERE (LOWER(parent_process_name) LIKE '%\\outlook.exe' OR LOWER(parent_process_name) LIKE '%\\chrome.exe' OR LOWER(parent_process_name) LIKE '%\\msedge.exe' OR instr(',' || '{{corporate_apps}}' || ',', ',' || LOWER(parent_process_name) || ',') > 0) AND (LOWER(process_name) LIKE '%\\powershell.exe' OR LOWER(process_name) LIKE '%\\cmd.exe' OR LOWER(process_name) LIKE '%\\wscript.exe' OR instr(',' || '{{interpreters}}' || ',', ',' || LOWER(process_name) || ',') > 0) AND time >= datetime('now', '-{{lookback_days}} days')",
        "surface": "hb_process_activity",
        "description": "Identify potential initial compromise on corporate machines where malicious payloads spawn shells, using partial path matching for robust detection.",
        "expected_signal": "Processes like PowerShell or CMD spawned directly from Outlook or a browser. Silence indicates no obvious script-based payloads ran from common entry apps."
      },
      "parents": [
        {
          "id": "gate-on-access",
          "branch": "on_supports"
        }
      ],
      "primitive_config": {
        "dsl": "sqlite",
        "role": "detection-candidate",
        "label": "Phishing Foothold: Email/Browser Child Processes",
        "reads": [
          "device_hostname",
          "parent_process_name",
          "process_cmd_line",
          "process_name",
          "time",
          "user_name"
        ],
        "source": "hb_process_activity",
        "target": "endpoint",
        "content": "SELECT device_hostname, process_name, process_cmd_line, parent_process_name, user_name, time FROM hb_process_activity WHERE (LOWER(parent_process_name) LIKE '%\\outlook.exe' OR LOWER(parent_process_name) LIKE '%\\chrome.exe' OR LOWER(parent_process_name) LIKE '%\\msedge.exe' OR instr(',' || '{{corporate_apps}}' || ',', ',' || LOWER(parent_process_name) || ',') > 0) AND (LOWER(process_name) LIKE '%\\powershell.exe' OR LOWER(process_name) LIKE '%\\cmd.exe' OR LOWER(process_name) LIKE '%\\wscript.exe' OR instr(',' || '{{interpreters}}' || ',', ',' || LOWER(process_name) || ',') > 0) AND time >= datetime('now', '-{{lookback_days}} days')",
        "silence": "not_evidence_of_absence",
        "expected": "Processes like PowerShell or CMD spawned directly from Outlook or a browser. Silence indicates no obvious script-based payloads ran from common entry apps.",
        "verified": "dry-run",
        "verified_at": "2026-10-15"
      }
    },
    {
      "id": "bridge-traversal",
      "type": "query",
      "label": "Bridge Traversal: Internal Network Probing",
      "config": {
        "dsl": "sqlite",
        "role": "baseline",
        "source": "network",
        "content": "SELECT device_hostname, process_name, dst_endpoint_ip, dst_endpoint_port, COUNT(*) AS connection_count FROM hb_network_connection WHERE ('{{scope_hosts}}' = '' OR instr(',' || '{{scope_hosts}}' || ',', ',' || device_hostname || ',') > 0) AND direction = 'outbound' AND time >= datetime('now', '-{{lookback_days}} days') GROUP BY device_hostname, process_name, dst_endpoint_ip, dst_endpoint_port HAVING connection_count < {{connection_threshold}} ORDER BY connection_count ASC",
        "surface": "hb_network_connection",
        "description": "Detect bridging behavior where a gateway host initiates rare outbound connections to internal segments, using a tunable threshold.",
        "expected_signal": "Rare outbound connections from gateway machines to internal IP addresses. Silence suggests no anomalous probing from the identified gateways."
      },
      "parents": [
        {
          "id": "gate-on-access",
          "branch": "on_supports"
        }
      ],
      "primitive_config": {
        "dsl": "sqlite",
        "role": "baseline",
        "label": "Bridge Traversal: Internal Network Probing",
        "reads": [
          "device_hostname",
          "direction",
          "dst_endpoint_ip",
          "dst_endpoint_port",
          "process_name",
          "time"
        ],
        "source": "hb_network_connection",
        "target": "network",
        "content": "SELECT device_hostname, process_name, dst_endpoint_ip, dst_endpoint_port, COUNT(*) AS connection_count FROM hb_network_connection WHERE ('{{scope_hosts}}' = '' OR instr(',' || '{{scope_hosts}}' || ',', ',' || device_hostname || ',') > 0) AND direction = 'outbound' AND time >= datetime('now', '-{{lookback_days}} days') GROUP BY device_hostname, process_name, dst_endpoint_ip, dst_endpoint_port HAVING connection_count < {{connection_threshold}} ORDER BY connection_count ASC",
        "silence": "not_evidence_of_absence",
        "baseline": {
          "window": "{{lookback_days}}d",
          "compare": "first_seen"
        },
        "expected": "Rare outbound connections from gateway machines to internal IP addresses. Silence suggests no anomalous probing from the identified gateways.",
        "verified": "dry-run",
        "prevalence": {
          "by": "device_hostname",
          "key": [
            "dst_endpoint_ip",
            "dst_endpoint_port"
          ],
          "rare_below": 5
        },
        "verified_at": "2026-10-15"
      }
    },
    {
      "id": "final-triage",
      "type": "analytic",
      "label": "Final Triage: Confirm the Bridge",
      "config": {
        "cite": "required",
        "tools": [
          "endpoint",
          "identity",
          "network"
        ],
        "context": [
          "evaluate-lead",
          "phishing-foothold",
          "bridge-traversal"
        ],
        "objective": "Determine if a compromised account was used to bridge from a corporate foothold into the internal or OT network.",
        "description": "Correlate the suspicious login with the foothold and bridging behavior to confirm a segment crossing.",
        "max_iterations": 5,
        "expected_signal": "A comprehensive per-host verdict citing specific rows from all evidence branches.",
        "success_criteria": "A final verdict of malicious, suspicious, or benign."
      },
      "parents": [
        {
          "id": "phishing-foothold",
          "kind": "merge"
        },
        {
          "id": "bridge-traversal",
          "kind": "merge"
        }
      ]
    },
    {
      "id": "route-on-verdict",
      "type": "checkpoint",
      "label": "Route on Final Verdict",
      "config": {
        "fuzzy": true,
        "judge": "hunter",
        "question": "the final-triage verdict is malicious for at least one host or vendor account",
        "condition": "the final-triage verdict is malicious for at least one host or vendor account",
        "confidence": "high",
        "description": "Direct the hunt toward containment or formal review.",
        "checkpoint_type": "mandatory"
      },
      "parents": [
        {
          "id": "final-triage"
        }
      ]
    },
    {
      "id": "isolate-gateway",
      "type": "action",
      "label": "Isolate Gateway and Revoke Identity",
      "config": {
        "target": "endpoint",
        "description": "Sever the bridge between the adversary and the internal network.",
        "instructions": "Isolate the compromised gateway host and revoke the affected vendor account's sessions in the identity provider.",
        "action_approval": "required"
      },
      "parents": [
        {
          "id": "route-on-verdict",
          "branch": "on_supports"
        }
      ]
    },
    {
      "id": "analyst-review",
      "type": "task",
      "label": "Analyst Post-Mortem",
      "config": {
        "assignee": "analyst",
        "description": "Verify the findings and prepare for detection engineering.",
        "instructions": "Review the correlated timeline; evaluate whether the 'phishing-foothold' query is reliable enough for a permanent detection rule."
      },
      "parents": [
        {
          "id": "gate-on-access",
          "branch": "default"
        },
        {
          "id": "gate-on-access",
          "branch": "on_unavailable"
        },
        {
          "id": "route-on-verdict",
          "branch": "default"
        },
        {
          "id": "route-on-verdict",
          "branch": "on_unavailable"
        },
        {
          "id": "isolate-gateway"
        }
      ]
    },
    {
      "id": "close-out",
      "type": "task",
      "label": "Hunt Close-out",
      "config": {
        "assignee": "analyst",
        "description": "Record results and state coverage gaps.",
        "instructions": "Document the hunt outcome, noting that no suspicious gateway activity was found for the lookback period."
      },
      "parents": [
        {
          "id": "gate-on-access",
          "branch": "on_refutes"
        },
        {
          "id": "route-on-verdict",
          "branch": "on_refutes"
        },
        {
          "id": "analyst-review"
        }
      ]
    }
  ]
}