Skip to content

Security: fraware/SCOPE

Security

SECURITY.md

Security Policy

Supported versions

Version Supported Notes
2.2.x Yes Current institutional hardening line (scope-protocol + contracts 2.2.0)
1.0.x Yes Prior stable line; security fixes backported when feasible
0.11.x Best effort Workflow release
0.10.x Best effort Upgrade recommended
0.9.x and earlier No Unsupported

Report issues against the latest supported release on main.

Reporting a vulnerability (private disclosure)

Report security issues privately via GitHub Security Advisories:

https://github.com/fraware/SCOPE/security/advisories/new

Do not open public issues for undisclosed vulnerabilities. Include reproduction steps, affected version / commit, and impact. Maintainers will acknowledge and coordinate a fix before any public disclosure.

Threat model version pin

Field Value
Threat model document docs/threat_model.md
Threat model version scope-threat-model-v2.2-as08
Normative non-claims ADR-0001
Pilot release boundaries ADR-0010

Security reviews for this release must cite threat_model_version = scope-threat-model-v2.2-as08 (or a later ADR that supersedes it).

v2.2 / institutional pilot security model

SCOPE records human review authority and bounded grant use. It builds on schema validation, canonical hashing, hash-chained ledger events, explicit expiration checks, and fail-closed behavior for unknown scopes, invalid roles, forbidden queue transitions, incomplete independence blocks, and unauthorized pilot modes.

Cryptography and signing

  • Ed25519 signatures on decisions and grants when production signing is enabled
  • Signing assurance levels (SAL0–SAL4) with KMS reference adapter (--signing-provider kms)
  • Combined scope_trust_root_hash ties policy and reviewer registry integrity into PCS export provenance
  • Frozen packets and deep-frozen grants reject in-place mutation after finalize

Identity

  • Identity assurance levels (IAL0–IAL4); production mode rejects IAL0 unless SCOPE_ALLOW_DEV_IAL0
  • Pluggable OIDC and SAML providers (scope/identity_providers.py)
  • SCIM/LDAP RBAC sync via scope rbac sync
  • Live IdP certification remains external (see Definition of Done)

Ledger and delivery

  • Local hash-chained JSONL / SQLite / Postgres ledger with WORM and verified remote sink options
  • Delivery modes: best_effort, at_least_once, fail_closed
  • Live WORM Object Lock and remote ledger authority remain external

AKTA review contract

  • Frozen at scope-akta-review-v1.0; consumers branch on summary.status

Workflow

  • Tenant-isolated review queues via authenticated principal binding
  • Pilot review_mode enforcement: shadow / read-only modes cannot authorize
  • Append-only outcome links; decisions are never rewritten after outcomes

Known limits

  • SAML verification requires external sidecar or pre-verified assertions in reference adapter
  • Email notifications require institutional SMTP wiring
  • Reviewer judgment and physical lab safety remain out of scope
  • Quality metrics are process/calibration aids, not scientific ground truth

Offline verification (no live Postgres)

python scripts/run_institutional_offline_gates.py

See docs/threat_model.md, docs/trusted_boundary.md, docs/compatibility_matrix.md, docs/limitations.md, docs/definition_of_done.md, docs/adr/, and docs/runbooks/.

There aren't any published security advisories