Skip to content

Security Defect Management

The management-of-security-related-issues practice (62443-4-1 Practice 6, DM-1…DM-6) for Cloud-Native DCS. SECURITY.md is the public-facing summary. This document is the internal procedure.

Intake (DM-1)

Security-related issues are received and tracked to closure from every source the practice names:

Source Channel
External reporters / researchers GitHub Security Advisories (private), per SECURITY.md — never public issues
Third-party component suppliers Dependabot alerts, govulncheck findings, Trivy scan results
Internal development and testing GitHub issues labeled area: security; review-digest findings (#483)
Product users (integrators, asset owners, maintenance) Security Advisories or the support channel, triaged into the same tracker
Independent V&V engagement Engagement report items, filed as tracked issues on receipt

Every intake lands as a tracked item with a unique ID (advisory or issue number). Nothing is handled out-of-band.

Review and triage (DM-2)

Within the SECURITY.md acknowledgment window (72 h) each report is assessed for: applicability to the product (affected versions), verifiability (reproduction or refutation, with a refuted report closed and the evidence recorded), and the threats that trigger it (mapped to the threat model, where a threat the model lacks triggers a threat-model update per SR-2).

Assessment (DM-3)

Verified issues are scored and analyzed:

  • Severity: CVSS v3.1 base score, adjusted by the product security context (an issue reachable only from the control zone scores the attack vector accordingly).
  • Impact analysis against the discovered context, the documented security context, and the defense-in-depth layers (which layers contain it, and whether any single-layer failure exposes it).
  • Version sweep: all supported versions checked (currently the single supported line per SECURITY.md).
  • Root cause, recorded on the tracking issue and evaluated for a preventing gate (SM-13).

Disposition and residual-risk threshold (DM-4)

Acceptable residual risk: an issue may be closed without a fix only if its context-adjusted CVSS is below 4.0 (Low) AND it is contained by at least one independent defense-in-depth layer AND the disposition is recorded with rationale. Everything at or above 4.0 gets one of: fix (design change, added capability, compensating mechanism, or feature removal), a remediation plan with a target release, or a documented deferral with reason and risk, reviewed each release cycle until closed. When a fix lands, sibling products/versions and any third-party component supplier are informed as applicable, and the prevent-recurrence question (new gate? new test?) is answered on the issue before closure.

Disclosure (DM-5)

Reportable issues (per the DM-4 disposition) are disclosed via a GitHub Security Advisory containing: description, CVSS score, affected versions, and the resolution (patched version or mitigation), following the SECURITY.md timeline (patch target ≤ 90 days). For third-party-component vulnerabilities we track the upstream disclosure and do not front-run it, while preparing the dependency bump per update management.

Periodic review (DM-6)

At least annually, folded into the release retrospective, the issues handled since the last review are examined for completeness of the process (was every intake tracked to closure? were dispositions recorded? did fixes generate prevention gates?). The review record is a review-digest-style issue tagged sdl-dm6. Its first instance is the ML3 evidence starting point.