Skip to content
Last updated: Sep 25, 2026

Coverage & Assessment Methodology ​

OwnerClassificationVersionEffectiveNext reviewStatus
Sekhar PrakashInternal1.12026-06-252026-11-27Active

This page exists to answer one question continuously: "what are we still not looking at?" Gaps should be visible here, not discovered reactively. It tracks:

  • Which assessment methods have been run.
  • How the 20 domains map to recognized frameworks.
  • Where coverage is still thin.

Why a posture can look "done" but isn't ​

  • The iteration-1 findings came primarily from a manual code review.
  • That method finds logic/authorization/injection flaws but is blind to whole categories:
    • known-CVE dependencies
    • leaked secrets
    • image vulns
    • cloud misconfig
  • Each method not yet run is a source of "surprise" gaps. The fix is to run every lens and keep this matrix honest.

Progress: 5 of 9 lenses run:

  • manual review

  • SCA/dependencies

  • container image

  • secret scanning

  • IaC

  • Remaining four (current blind spots) — expect new findings as each is run:

    • SAST
    • DAST
    • CSPM
    • the independent pentest
  • Highest-value next steps: SAST and the pentest — also the two that need a tooling/vendor decision.

Assessment-method coverage ​

LensWhat it catchesToolingStatus
Manual code reviewLogic, authz, injection, design flawsHuman🟢 done (iteration 1)
SCA — dependenciesKnown-CVE vulnerable packagesbun audit / Snyk OSS🟠 166 found as of 2026-09-15 — blitz 5 (F-29, down from 97), blitz-ui 161 (F-30, ⚠️ up from 93; 4 critical). Counts are authoritative vs the committed lockfiles (F-36); see the register for per-repo detail. Dependabot enabled but blind to bun.lock — sees only 8 (xlsx/SheetJS, see caveat below). bun audit now runs weekly, non-blocking in each repo's Dependency Health workflow; it is not a merge gate. Full CI control state: Control Register. Programme tracking: fin-infra#40
SAST — codeVulnerable code patterns at scaleCodeQL / Semgrep🔴 never run
Secret scanningLeaked keys (incl. git history)gitleaks + GitHub secret scanning🟠 ran ad-hoc (history: blitz 39 hits, blitz-ui 8, fin-infra 0 — one real GCP key committed in both repos (same credential, verified by hash — F-34/F-35) → rotate once; rest mostly generated/template FPs); not in CI (blitz#1019, blitz-ui#668)
IaC scanningAWS/Terraform misconfigtfsec / checkov / Snyk IaC🟠 ran ad-hoc (Snyk IaC: 0 critical/high, 3 medium — SG open-ingress ×2, RDS IAM auth off); deeper tfsec/checkov + CI pending (fin-infra#40)
Container image scanOS/base-image CVEsTrivy / Grype / docker scout🟠 ran ad-hoc (base images: oven/bun:slim 1C/7H, debian:bookworm-slim 1C/2H — openssl/glibc/perl; images unpinned); not in CI (fin-infra#35)
DAST — runtimeExposed-surface / runtime bugsOWASP ZAP🔴 never run
Cloud posture (CSPM)Live AWS misconfigProwler / Security Hub🔴 not enabled (pre-prod)
Independent penetration testWhat all internal methods miss3rd-party firm🔴 not scheduled (fin-infra#39)

Dependabot caveat (re-checked 2026-08-06) — do not treat as SCA coverage

  • Enabled on all three repos, but Dependabot does not parse bun.lock — it only reads package.json manifests.
  • So it surfaces 8 alerts (blitz 4, blitz-ui 4, fin-infra 0), all the same two xlsx/SheetJS advisories — GHSA-5pgg-2g8v-p4x9 (ReDoS) and GHSA-4r6h-8v6p-xvw6 (prototype pollution), both High — versus 166 from bun audit against the full committed tree (2026-09-15).
  • Gaps to close: (1) no dependabot.yml in any repo → no update schedule / auto security-update PRs; (2) the xlsx alerts have no clean npm upgrade (SheetJS moved fixes to their own CDN) → repin to the vendor CDN build or migrate off xlsx.
  • Tracked under the SCA program (fin-infra#40); authoritative SCA numbers remain F-29/F-30.

Domain → framework mapping ​

Confirms the 20 domains aren't ad hoc — they cover the recognized control sets. Use when answering a SOC 2 / ISO / customer questionnaire.

#DomainSOC 2 (TSC)ISO 27001:2022CIS v8OWASP
1Governance & RiskCC1, CC3A.517—
2Data Security & PrivacyC1, PA.5.34, A.8.10-123—
3Edge & NetworkCC6.6A.8.20-2212, 13—
4IAM (incl. RBAC)CC6.1-3A.5.15-18, A.8.55, 6A01, A07
5Application SecurityCC7.1, CC8.1A.8.25-2816A03, A04
6API SecurityCC6.6, CC7.1A.8.2616API Top 10
7Tenant IsolationCC6.1A.8.43, 4A01
8Supply ChainCC7.1, CC8.1A.8.28-302, 16A06, A08
9Cloud & InfraCC6, CC7A.8.94, 12A05
10Container & RuntimeCC7.1A.8.94A05
11Monitoring & DetectionCC7.2-3A.8.15-168A09
12Incident ResponseCC7.4-5A.5.24-2817—
13Business Continuity & DRA1A.5.29-30, A.8.13-1411—
14Secure SDLC & DevSecOpsCC8.1A.8.25-3116—
15Compliance & AuditCC2, CC4A.5.31-36——
16Financial Data IntegrityPI1A.8.3—A08
17Business LogicPI1A.8.26—A04
18Vendor & Sub-processor RiskCC9.2A.5.19-2315—
19Endpoint SecurityCC6.7A.8.1, A.8.71, 4, 10—
20People & AwarenessCC1.4, CC2A.6.1-814—

Known residual / thin areas (watchlist) ​

Even at 20 domains, these are partially-covered and worth explicit attention before a SOC 2 / enterprise review — listed so they're not "missed".

  • Cryptography standard — approved algorithms, TLS versions, key lifecycle (spread across Domains 2 & 9; no single standard).
  • Change management / secure-config baselines — CIS benchmarks for containers/OS (touched by Domain 14/22-equivalent; not formalized).
  • Continuous CSPM — beyond Day-1 detection (Domain 9/11); conformance packs not enabled (pre-prod).
  • Data inventory / RoPA — DPDP record of processing + data-flow map (partial in Domains 2 & 18).
  • Backup integrity / ransomware recovery testing — restore drills not evidenced (Domain 13).

How completeness is maintained ​

  1. Run the unrun lenses (SAST, DAST, CSPM) and wire the run ones (SCA, secret, IaC, image) into CI — tracked in fin-infra#40. Each ad-hoc 🟠 becomes 🟢 once gated in CI.
  2. The pentest (fin-infra#39) is the backstop for whatever internal methods miss.
  3. SOC 2 readiness mapping (above) is re-checked each review; any control with no home becomes a new domain or finding.
  4. This page is updated every quarterly review and whenever a new assessment method is run.

Revision history ​

VersionDateAuthorChange
1.02026-06-25Sekhar PrakashAssessment-method matrix and domain-to-framework mapping established.
1.12026-08-06Sekhar PrakashSCA/Dependabot coverage re-checked; lens progress updated.

Finaisse Internal — Confidential. Not for external distribution.

Finaisse Internal — Confidential. Access-restricted; not for external distribution.