You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement an adapter boundary through which Azazel-Deception can observe
external network-device state and describe bounded deception exposure changes.
It must make Edge/Nexus integration first-class without becoming a generic
firewall/switch/SDN control framework.
Adapter classes and rollout
Phase A: read-only NetworkObservationAdapter
firewall/router session and policy-event observation
DNS/NDR observation
switch/VLAN/segment capability observation
Phase B: dry-run ExposureAdapter
validates an ExposureChangeProposal against declared adapter capabilities
renders a non-executing provider change preview and rollback preview
Phase C: approved bounded adapter
applies only an independently approved, signed, expiring decision/lease
observes postcondition, reports DeviceChangeObservation, and withdraws on
expiry, health loss, or explicit termination
No Phase B/C adapter is enabled by default. Each provider adapter supports one
declared capability subset, e.g. redirect to a named isolated decoy segment,
temporary DNS response selection, or observe-only mirror input. It may not
accept arbitrary routes, firewall expression text, device scripts, VLAN IDs,
or general configuration objects from a package, M.I.O., or external API.
Required inputs and binding
An enabled exposure action requires all of:
a verified Deception package/environment identity and isolation profile;
an allowed adapter capability and target scope reference;
The adapter binds decision, package digest, environment, adapter identity,
target-scope reference, generation, and expiry. Any mismatch, replay, stale
state, failed attestation, or missing management failsafe rejects the action.
Isolation and observation invariants
A decoy has no route to protected production assets; its egress is denied by
default.
Device adapters never expose Edge/Nexus management, runtime sockets, or
credentials to an attacker-facing network.
A provider acknowledgement is an execution fact only. The adapter must
independently observe the declared postcondition before reporting it as
observed.
Decoy interaction, source-device telemetry, and Knowledge inference remain
separate evidence classes with coverage/confounder fields.
Emergency stop/lease expiry withdraws only the adapter-owned bounded change;
it preserves evidence and never performs an unbounded device reset.
Operational records
Persist append-only records for capability discovery, proposal validation,
approval binding, pre-change snapshot digest, apply receipt, observed
postcondition, heartbeat, expiry/withdrawal, failure, and reset evidence.
Every record includes device-adapter identity/version, environment/package,
decision/lease reference, observation window, evidence refs, and limitations.
Dry-run reference adapter proves capability mismatch, stale proposal,
wrong decision/environment binding, and rollback-preview behavior.
A fake device adapter proves provider receipt is not postcondition proof.
HIL proves isolation, decoy egress denial, management-path preservation,
expiry withdrawal, restart/reconciliation, and evidence preservation for each
enabled provider capability.
Device loss, route drift, heartbeat failure, exhausted resource budget,
and rollback failure fail closed and visibly degrade/terminate exposure.
Edge/Nexus absence never permits a Deception adapter to self-authorize.
Parent program: Azazel#83
Depends on: Azazel-Fabric external interoperability profile, Deception#35,
Azazel-Edge#325/#358
Purpose
Implement an adapter boundary through which Azazel-Deception can observe
external network-device state and describe bounded deception exposure changes.
It must make Edge/Nexus integration first-class without becoming a generic
firewall/switch/SDN control framework.
Adapter classes and rollout
No Phase B/C adapter is enabled by default. Each provider adapter supports one
declared capability subset, e.g. redirect to a named isolated decoy segment,
temporary DNS response selection, or observe-only mirror input. It may not
accept arbitrary routes, firewall expression text, device scripts, VLAN IDs,
or general configuration objects from a package, M.I.O., or external API.
Required inputs and binding
An enabled exposure action requires all of:
Fabric's descriptive contract;
change;
The adapter binds decision, package digest, environment, adapter identity,
target-scope reference, generation, and expiry. Any mismatch, replay, stale
state, failed attestation, or missing management failsafe rejects the action.
Isolation and observation invariants
default.
credentials to an attacker-facing network.
independently observe the declared postcondition before reporting it as
observed.
separate evidence classes with coverage/confounder fields.
it preserves evidence and never performs an unbounded device reset.
Operational records
Persist append-only records for capability discovery, proposal validation,
approval binding, pre-change snapshot digest, apply receipt, observed
postcondition, heartbeat, expiry/withdrawal, failure, and reset evidence.
Every record includes device-adapter identity/version, environment/package,
decision/lease reference, observation window, evidence refs, and limitations.
Test and HIL gates
selectors, and authority fields.
wrong decision/environment binding, and rollback-preview behavior.
expiry withdrawal, restart/reconciliation, and evidence preservation for each
enabled provider capability.
and rollback failure fail closed and visibly degrade/terminate exposure.