A PLC/SPS device is two layers — the control application and the device it
runs on (firmware/OS + reachable runtime services). Previously PlcSps offered
only PlcControlLogic, so a CODESYS-on-Yocto device's firmware and network
attack surface was invisible.
- scan_matrix: PlcSps now offers FirmwareStatic + Sbom + Cve (require a firmware
image) and Dast (require a running endpoint, e.g. WebVisu), and
supports_pentest(PlcSps) is now true. Control-logic stays default-on; the
device-level scans are offered but opt-in (default-off) — firmware-image
SBOM/CVE execution is shared with the firmware families and still landing
(#151/#128), so they must not silently auto-run.
- orchestrator: the PLC branch no longer early-returns, so a PLC device with a
reachable endpoint also runs DAST (the wired path) after the control-logic scan.
Part of the CODESYS-on-Yocto coverage tracker (#167). Closes#164.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>