@clear-capabilities/agentic-security-scanner 0.118.2 → 0.119.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +274 -0
- package/bin/agentic-security.js +78 -1
- package/dist/178.index.js +1 -1
- package/dist/384.index.js +1 -1
- package/dist/415.index.js +90 -0
- package/dist/444.index.js +89 -0
- package/dist/503.index.js +288 -0
- package/dist/637.index.js +15 -1
- package/dist/838.index.js +1 -1
- package/dist/985.index.js +5 -1
- package/dist/agentic-security.mjs +18 -18
- package/dist/agentic-security.mjs.sha256 +1 -1
- package/package.json +13 -8
- package/src/dataflow/CLAUDE.md +1 -1
- package/src/dataflow/catalog.js +50 -11
- package/src/dataflow/engine.js +76 -1
- package/src/dataflow/implicit-flow.js +4 -2
- package/src/dataflow/index.js +9 -4
- package/src/dataflow/proof-gate.js +5 -0
- package/src/dataflow/summaries.js +19 -1
- package/src/engine.js +95 -7
- package/src/ir/parser-go.js +8 -0
- package/src/mcp/tools.js +6 -2
- package/src/posture/fix-history.js +24 -0
- package/src/posture/provenance.js +39 -0
- package/src/posture/sca-verdict.js +130 -0
- package/src/posture/secret-history.js +72 -0
- package/src/pr-delta.js +13 -0
- package/src/report/index.js +50 -0
- package/src/sast/agent-untrusted-flow.js +107 -0
- package/src/sast/api-authz.js +71 -0
- package/src/sast/cross-service.js +98 -0
- package/src/sast/event-entrypoint.js +90 -0
- package/src/sast/iac-terraform.js +107 -0
- package/src/sast/rbac-consistency.js +113 -0
- package/src/sast/wrong-context-sanitizer.js +55 -0
- package/src/sca/image-packages.js +74 -0
- package/src/sca/import-reachability.js +271 -0
- package/src/sca/install-script-analysis.js +82 -0
- package/bin/.agentic-security/findings.json +0 -1907
- package/bin/.agentic-security/last-scan.json +0 -1907
- package/bin/.agentic-security/last-scan.json.sig +0 -1
- package/bin/.agentic-security/scan-history.json +0 -166
- package/bin/.agentic-security/streak.json +0 -20
- package/src/.agentic-security/dpia.md +0 -26
- package/src/.agentic-security/findings.json +0 -117732
- package/src/.agentic-security/last-scan.json +0 -117732
- package/src/.agentic-security/last-scan.json.sig +0 -1
- package/src/.agentic-security/pqc-migration-plan.json +0 -80
- package/src/.agentic-security/pqc-migration-plan.md +0 -32
- package/src/.agentic-security/sbom-history/0775d96ba4cf814520d02760cfb3010760c7684f.json +0 -6
- package/src/.agentic-security/sbom-history/29300441d3460832137a8e51a92b74068cad2f15.json +0 -6
- package/src/.agentic-security/sbom-history/3852ad2aa0e50951bed0c930c29d1861aa13d048.json +0 -6
- package/src/.agentic-security/sbom-history/3d96e2daec97e3226c9679bac6e64a89ca10bfe9.json +0 -6
- package/src/.agentic-security/sbom-history/5f0b136622fce09b469a1a6137c04d5b18652ea4.json +0 -6
- package/src/.agentic-security/sbom-history/64e30595d447b62344d0d9200760269df2095332.json +0 -6
- package/src/.agentic-security/sbom-history/71f3241902c9e7437764e3caa046ba8a3bcdd32a.json +0 -6
- package/src/.agentic-security/sbom-history/99c372cdc33ecc9dde92960b4ffadf7775860e61.json +0 -6
- package/src/.agentic-security/sbom-history/9c93b15e8cf3ff2ddb8cdae92371b82e178b463c.json +0 -6
- package/src/.agentic-security/sbom-history/a3544abf1863d71776b61302ca74d9ead2b26a9f.json +0 -6
- package/src/.agentic-security/sbom-history/dca15abdec43c508aa342db86dc5db8d7f01fbbe.json +0 -6
- package/src/.agentic-security/scan-history.json +0 -12946
- package/src/.agentic-security/streak.json +0 -21
- package/src/.agentic-security/threat-model.json +0 -3702
- package/src/.agentic-security/threat-model.md +0 -118
- package/src/dataflow/.agentic-security/dpia.md +0 -26
- package/src/dataflow/.agentic-security/findings.json +0 -6086
- package/src/dataflow/.agentic-security/last-scan.json +0 -6086
- package/src/dataflow/.agentic-security/last-scan.json.sig +0 -1
- package/src/dataflow/.agentic-security/sbom-history/15d7c4d20f9d968ebec29445c9e9b3fc6f74e6a1.json +0 -6
- package/src/dataflow/.agentic-security/sbom-history/3852ad2aa0e50951bed0c930c29d1861aa13d048.json +0 -6
- package/src/dataflow/.agentic-security/sbom-history/73166872888d9ddcbe98645af818ecc7d8917b07.json +0 -6
- package/src/dataflow/.agentic-security/sbom-history/8869fe64035bec0152d92ece961e9369d8637076.json +0 -6
- package/src/dataflow/.agentic-security/sbom-history/9c93b15e8cf3ff2ddb8cdae92371b82e178b463c.json +0 -6
- package/src/dataflow/.agentic-security/sbom-history/b7ac2dada4a9216ccfe8969fc57f988c83f46975.json +0 -6
- package/src/dataflow/.agentic-security/scan-history.json +0 -250
- package/src/dataflow/.agentic-security/streak.json +0 -21
- package/src/dataflow/.agentic-security/threat-model.json +0 -161
- package/src/dataflow/.agentic-security/threat-model.md +0 -43
- package/src/ir/.agentic-security/dpia.md +0 -26
- package/src/ir/.agentic-security/exploit-bundles.json +0 -77
- package/src/ir/.agentic-security/findings.json +0 -4011
- package/src/ir/.agentic-security/last-scan.json +0 -4011
- package/src/ir/.agentic-security/last-scan.json.sig +0 -1
- package/src/ir/.agentic-security/sbom-history/73166872888d9ddcbe98645af818ecc7d8917b07.json +0 -6
- package/src/ir/.agentic-security/sbom-history/b5f468a158f6a145aedd8680841c106b9809f16b.json +0 -6
- package/src/ir/.agentic-security/scan-history.json +0 -193
- package/src/ir/.agentic-security/streak.json +0 -20
- package/src/ir/.agentic-security/threat-model.json +0 -143
- package/src/ir/.agentic-security/threat-model.md +0 -39
- package/src/mcp/.agentic-security/findings.json +0 -8632
- package/src/mcp/.agentic-security/last-scan.json +0 -8632
- package/src/mcp/.agentic-security/last-scan.json.sig +0 -1
- package/src/mcp/.agentic-security/scan-history.json +0 -331
- package/src/mcp/.agentic-security/streak.json +0 -20
- package/src/posture/.agentic-security/dpia.md +0 -26
- package/src/posture/.agentic-security/findings.json +0 -77181
- package/src/posture/.agentic-security/last-scan.json +0 -77181
- package/src/posture/.agentic-security/last-scan.json.sig +0 -1
- package/src/posture/.agentic-security/pqc-migration-plan.json +0 -65
- package/src/posture/.agentic-security/pqc-migration-plan.md +0 -30
- package/src/posture/.agentic-security/sbom-history/0724c133d2943c87555695b5b2adcfcfc3373a2d.json +0 -6
- package/src/posture/.agentic-security/sbom-history/7d45b5e03804aac084b4a2b4dc8c6f10107d2005.json +0 -6
- package/src/posture/.agentic-security/sbom-history/99c372cdc33ecc9dde92960b4ffadf7775860e61.json +0 -6
- package/src/posture/.agentic-security/sbom-history/b7ac2dada4a9216ccfe8969fc57f988c83f46975.json +0 -6
- package/src/posture/.agentic-security/scan-history.json +0 -8904
- package/src/posture/.agentic-security/streak.json +0 -21
- package/src/posture/.agentic-security/threat-model.json +0 -2038
- package/src/posture/.agentic-security/threat-model.md +0 -73
- package/src/posture/compliance-frameworks/.agentic-security/findings.json +0 -80
- package/src/posture/compliance-frameworks/.agentic-security/last-scan.json +0 -80
- package/src/posture/compliance-frameworks/.agentic-security/last-scan.json.sig +0 -1
- package/src/posture/compliance-frameworks/.agentic-security/scan-history.json +0 -90
- package/src/posture/compliance-frameworks/.agentic-security/streak.json +0 -22
- package/src/report/.agentic-security/dpia.md +0 -26
- package/src/report/.agentic-security/sbom-history/7d45b5e03804aac084b4a2b4dc8c6f10107d2005.json +0 -6
- package/src/report/.agentic-security/sbom-history/f94be839aa6a1011f53da016416a561698b8f338.json +0 -6
- package/src/report/.agentic-security/threat-model.json +0 -7
- package/src/report/.agentic-security/threat-model.md +0 -22
- package/src/sast/.agentic-security/dpia.md +0 -26
- package/src/sast/.agentic-security/findings.json +0 -6154
- package/src/sast/.agentic-security/last-scan.json +0 -6154
- package/src/sast/.agentic-security/last-scan.json.sig +0 -1
- package/src/sast/.agentic-security/pqc-migration-plan.json +0 -65
- package/src/sast/.agentic-security/pqc-migration-plan.md +0 -30
- package/src/sast/.agentic-security/sbom-history/043a7b401c68f5a298c83d4c42e94f118ff2a89a.json +0 -6
- package/src/sast/.agentic-security/sbom-history/0775d96ba4cf814520d02760cfb3010760c7684f.json +0 -6
- package/src/sast/.agentic-security/sbom-history/20d77ad7363a82777d506dedbbb1ecfed52f094a.json +0 -6
- package/src/sast/.agentic-security/sbom-history/29300441d3460832137a8e51a92b74068cad2f15.json +0 -6
- package/src/sast/.agentic-security/sbom-history/3852ad2aa0e50951bed0c930c29d1861aa13d048.json +0 -6
- package/src/sast/.agentic-security/sbom-history/3c6b3205f04e26f7654943d465281d00e0fa395e.json +0 -6
- package/src/sast/.agentic-security/sbom-history/3d96e2daec97e3226c9679bac6e64a89ca10bfe9.json +0 -6
- package/src/sast/.agentic-security/sbom-history/5282502e090013219eb006f7e02d8c983bc29c8e.json +0 -6
- package/src/sast/.agentic-security/sbom-history/5f0b136622fce09b469a1a6137c04d5b18652ea4.json +0 -6
- package/src/sast/.agentic-security/sbom-history/64e30595d447b62344d0d9200760269df2095332.json +0 -6
- package/src/sast/.agentic-security/sbom-history/71f3241902c9e7437764e3caa046ba8a3bcdd32a.json +0 -6
- package/src/sast/.agentic-security/sbom-history/73514b485d4770f3c5ee57d87338bccd1c61d8b7.json +0 -6
- package/src/sast/.agentic-security/sbom-history/96fa584fc3134512237d58aac63d6f3778b0cbcb.json +0 -6
- package/src/sast/.agentic-security/sbom-history/99c372cdc33ecc9dde92960b4ffadf7775860e61.json +0 -6
- package/src/sast/.agentic-security/sbom-history/a3544abf1863d71776b61302ca74d9ead2b26a9f.json +0 -6
- package/src/sast/.agentic-security/sbom-history/a4a34ab8b3d758de2adc8c3dc3e42d4cb0db00a3.json +0 -6
- package/src/sast/.agentic-security/sbom-history/ac236ec3602cfc8fb133f389ec3687e409084673.json +0 -6
- package/src/sast/.agentic-security/sbom-history/b57b3e1292f1f9f0de6c5a34a436e330c78008a3.json +0 -6
- package/src/sast/.agentic-security/sbom-history/dca15abdec43c508aa342db86dc5db8d7f01fbbe.json +0 -6
- package/src/sast/.agentic-security/sbom-history/dcbfd4935922dd165093c08a1003c338eed937c5.json +0 -6
- package/src/sast/.agentic-security/sbom-history/fa017f725615b0293814344c8ef7dfeb06775ca0.json +0 -6
- package/src/sast/.agentic-security/scan-history.json +0 -941
- package/src/sast/.agentic-security/streak.json +0 -22
- package/src/sast/.agentic-security/threat-model.json +0 -816
- package/src/sast/.agentic-security/threat-model.md +0 -91
- package/src/sca/.agentic-security/findings.json +0 -7460
- package/src/sca/.agentic-security/last-scan.json +0 -7460
- package/src/sca/.agentic-security/last-scan.json.sig +0 -1
- package/src/sca/.agentic-security/scan-history.json +0 -113
- package/src/sca/.agentic-security/streak.json +0 -21
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
# Threat Model (auto-generated)
|
|
2
|
-
|
|
3
|
-
Generated by agentic-security on 2026-05-31.
|
|
4
|
-
|
|
5
|
-
This threat model is derived from static analysis of the current codebase and is regenerated on every scan. It is intended as a working artifact, not a finished compliance document.
|
|
6
|
-
|
|
7
|
-
## Entities + boundaries
|
|
8
|
-
|
|
9
|
-
```mermaid
|
|
10
|
-
flowchart TB
|
|
11
|
-
subgraph External
|
|
12
|
-
route_GET__api_users_2["http-route: GET /api/users/2"]
|
|
13
|
-
route_GET__api_admin_users["http-route: GET /api/admin/users"]
|
|
14
|
-
route_GET__api_health["http-route: GET /api/health"]
|
|
15
|
-
end
|
|
16
|
-
subgraph Application
|
|
17
|
-
end
|
|
18
|
-
External --> route_GET__api_users_2
|
|
19
|
-
External --> route_GET__api_admin_users
|
|
20
|
-
External --> route_GET__api_health
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## Assets
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
## STRIDE threats
|
|
27
|
-
|
|
28
|
-
### Tampering (148)
|
|
29
|
-
|
|
30
|
-
- [medium] **dos-sync-io** (CWE-400) at `deploy-platform.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
31
|
-
- [low] **mass-assignment** (CWE-915) at `integrity.js:undefined` — Mass Assignment (req.body Direct to Model)
|
|
32
|
-
- [low] **dos-sync-io** (CWE-400) at `agents-memory.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
33
|
-
- [low] **dos-sync-io** (CWE-400) at `api-contract.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
34
|
-
- [low] **dos-sync-io** (CWE-400) at `auditor-walkthrough.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
35
|
-
- [low] **dos-sync-io** (CWE-400) at `auth-posture-import.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
36
|
-
- [low] **dos-sync-io** (CWE-400) at `blast-radius.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
37
|
-
- [low] **dos-sync-io** (CWE-400) at `calibration-drift.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
38
|
-
- [low] **dos-sync-io** (CWE-400) at `calibration.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
39
|
-
- [low] **dos-sync-io** (CWE-400) at `compliance-policy.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
40
|
-
- [low] **dos-sync-io** (CWE-400) at `cross-repo-memory.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
41
|
-
- [low] **dos-sync-io** (CWE-400) at `custom-rules.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
42
|
-
- [low] **dos-sync-io** (CWE-400) at `cve-alert-daemon.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
43
|
-
- [low] **dos-sync-io** (CWE-400) at `cve-lookup.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
44
|
-
- [low] **dos-sync-io** (CWE-400) at `dep-add-guard.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
45
|
-
- [low] **dos-sync-io** (CWE-400) at `deterministic.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
46
|
-
- [low] **dos-sync-io** (CWE-400) at `epss.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
47
|
-
- [low] **dos-sync-io** (CWE-400) at `exploitability-probability.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
48
|
-
- [low] **dos-sync-io** (CWE-400) at `feature-flags.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
49
|
-
- [low] **dos-sync-io** (CWE-400) at `federated-learning.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
50
|
-
- [low] **dos-sync-io** (CWE-400) at `findings-memory.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
51
|
-
- [low] **dos-sync-io** (CWE-400) at `fix-history.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
52
|
-
- [low] **dos-sync-io** (CWE-400) at `fix-plan.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
53
|
-
- [low] **dos-sync-io** (CWE-400) at `fix-style-mirror.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
54
|
-
- [low] **dos-sync-io** (CWE-400) at `fix-verify-loop.js:undefined` — Synchronous Blocking I/O (DoS Risk in Server Context)
|
|
55
|
-
- … and 123 more
|
|
56
|
-
|
|
57
|
-
### Information Disclosure (5)
|
|
58
|
-
|
|
59
|
-
- [low] **ssrf** (CWE-918) at `attack-playbooks.js:72` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
60
|
-
- [low] **ssrf** (CWE-918) at `defender-agent.js:41` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
61
|
-
- [low] **ssrf** (CWE-918) at `flow-narration.js:24` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
62
|
-
- [low] **pqc-migration** (CWE-327) at `rule-pack-signing.js:187` — Pre-quantum ED25519 (ed25519) — replace with ML-DSA-65 before CRQC arrives
|
|
63
|
-
- [low] **ssrf** (CWE-918) at `verifier.js:55` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
64
|
-
|
|
65
|
-
### Elevation of Privilege (5)
|
|
66
|
-
|
|
67
|
-
- [low] **ssrf** (CWE-918) at `attack-playbooks.js:72` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
68
|
-
- [low] **prototype-pollution** (CWE-1321) at `adversarial-self-test.js:60` — Prototype Pollution: Direct write to __proto__ / constructor.prototype
|
|
69
|
-
- [low] **ssrf** (CWE-918) at `defender-agent.js:41` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
70
|
-
- [low] **ssrf** (CWE-918) at `flow-narration.js:24` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
71
|
-
- [low] **ssrf** (CWE-918) at `verifier.js:55` — SSRF: explicit reference to cloud instance-metadata endpoint
|
|
72
|
-
|
|
73
|
-
## Attack trees
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"scanId": "aeb3cf41-7bb6-49c6-b4ae-b126e5afd726",
|
|
3
|
-
"startedAt": "2026-05-29T21:02:56.188Z",
|
|
4
|
-
"durationMs": 15,
|
|
5
|
-
"scanned": {
|
|
6
|
-
"files": 0,
|
|
7
|
-
"lines": 0
|
|
8
|
-
},
|
|
9
|
-
"findings": [],
|
|
10
|
-
"bundles": [],
|
|
11
|
-
"routes": [],
|
|
12
|
-
"components": [],
|
|
13
|
-
"suppressedCount": 0,
|
|
14
|
-
"blastRadiusSignals": {
|
|
15
|
-
"industry": "generic",
|
|
16
|
-
"industryConfidence": "low",
|
|
17
|
-
"jurisdictions": [],
|
|
18
|
-
"controls": [],
|
|
19
|
-
"estimatedUsers": 50,
|
|
20
|
-
"revenueIndicator": "pre-revenue",
|
|
21
|
-
"hasStripe": false,
|
|
22
|
-
"hasAuth": false,
|
|
23
|
-
"hasUserTable": false,
|
|
24
|
-
"hasPII": false,
|
|
25
|
-
"hasPHI": false,
|
|
26
|
-
"hasS3": false
|
|
27
|
-
},
|
|
28
|
-
"_v3": {
|
|
29
|
-
"counterfactual": {
|
|
30
|
-
"spofControls": [],
|
|
31
|
-
"note": "no-controls-detected"
|
|
32
|
-
},
|
|
33
|
-
"threatModel": {
|
|
34
|
-
"summary": {
|
|
35
|
-
"assetCount": 0,
|
|
36
|
-
"boundaryCount": 0,
|
|
37
|
-
"strideCounts": {
|
|
38
|
-
"spoofing": 0,
|
|
39
|
-
"tampering": 0,
|
|
40
|
-
"repudiation": 0,
|
|
41
|
-
"informationDisclosure": 0,
|
|
42
|
-
"denialOfService": 0,
|
|
43
|
-
"elevationOfPrivilege": 0
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
"assets": [],
|
|
47
|
-
"trustBoundaries": [],
|
|
48
|
-
"stride": {
|
|
49
|
-
"spoofing": [],
|
|
50
|
-
"tampering": [],
|
|
51
|
-
"repudiation": [],
|
|
52
|
-
"informationDisclosure": [],
|
|
53
|
-
"denialOfService": [],
|
|
54
|
-
"elevationOfPrivilege": []
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
"trustBoundaryDiagram": {
|
|
58
|
-
"mermaid": "flowchart LR\n INTERNET((Internet))\n APP[\"Application\"]\n classDef sev_critical fill:#ffcccc,stroke:#a00,stroke-width:2px;\n classDef sev_high fill:#ffe0b2,stroke:#c60,stroke-width:2px;\n classDef sev_medium fill:#fff3cd,stroke:#a80;\n classDef sev_low fill:#e8eaf6,stroke:#557;",
|
|
59
|
-
"nodes": [
|
|
60
|
-
{
|
|
61
|
-
"id": "INTERNET",
|
|
62
|
-
"kind": "external",
|
|
63
|
-
"label": "Internet"
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"id": "APP",
|
|
67
|
-
"kind": "app",
|
|
68
|
-
"label": "Application"
|
|
69
|
-
}
|
|
70
|
-
],
|
|
71
|
-
"edges": [],
|
|
72
|
-
"decorations": []
|
|
73
|
-
},
|
|
74
|
-
"calibrationDrift": {
|
|
75
|
-
"alarms": [],
|
|
76
|
-
"note": "no-feedback-data"
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
"annotatorErrors": []
|
|
80
|
-
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"scanId": "aeb3cf41-7bb6-49c6-b4ae-b126e5afd726",
|
|
3
|
-
"startedAt": "2026-05-29T21:02:56.188Z",
|
|
4
|
-
"durationMs": 15,
|
|
5
|
-
"scanned": {
|
|
6
|
-
"files": 0,
|
|
7
|
-
"lines": 0
|
|
8
|
-
},
|
|
9
|
-
"findings": [],
|
|
10
|
-
"bundles": [],
|
|
11
|
-
"routes": [],
|
|
12
|
-
"components": [],
|
|
13
|
-
"suppressedCount": 0,
|
|
14
|
-
"blastRadiusSignals": {
|
|
15
|
-
"industry": "generic",
|
|
16
|
-
"industryConfidence": "low",
|
|
17
|
-
"jurisdictions": [],
|
|
18
|
-
"controls": [],
|
|
19
|
-
"estimatedUsers": 50,
|
|
20
|
-
"revenueIndicator": "pre-revenue",
|
|
21
|
-
"hasStripe": false,
|
|
22
|
-
"hasAuth": false,
|
|
23
|
-
"hasUserTable": false,
|
|
24
|
-
"hasPII": false,
|
|
25
|
-
"hasPHI": false,
|
|
26
|
-
"hasS3": false
|
|
27
|
-
},
|
|
28
|
-
"_v3": {
|
|
29
|
-
"counterfactual": {
|
|
30
|
-
"spofControls": [],
|
|
31
|
-
"note": "no-controls-detected"
|
|
32
|
-
},
|
|
33
|
-
"threatModel": {
|
|
34
|
-
"summary": {
|
|
35
|
-
"assetCount": 0,
|
|
36
|
-
"boundaryCount": 0,
|
|
37
|
-
"strideCounts": {
|
|
38
|
-
"spoofing": 0,
|
|
39
|
-
"tampering": 0,
|
|
40
|
-
"repudiation": 0,
|
|
41
|
-
"informationDisclosure": 0,
|
|
42
|
-
"denialOfService": 0,
|
|
43
|
-
"elevationOfPrivilege": 0
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
"assets": [],
|
|
47
|
-
"trustBoundaries": [],
|
|
48
|
-
"stride": {
|
|
49
|
-
"spoofing": [],
|
|
50
|
-
"tampering": [],
|
|
51
|
-
"repudiation": [],
|
|
52
|
-
"informationDisclosure": [],
|
|
53
|
-
"denialOfService": [],
|
|
54
|
-
"elevationOfPrivilege": []
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
"trustBoundaryDiagram": {
|
|
58
|
-
"mermaid": "flowchart LR\n INTERNET((Internet))\n APP[\"Application\"]\n classDef sev_critical fill:#ffcccc,stroke:#a00,stroke-width:2px;\n classDef sev_high fill:#ffe0b2,stroke:#c60,stroke-width:2px;\n classDef sev_medium fill:#fff3cd,stroke:#a80;\n classDef sev_low fill:#e8eaf6,stroke:#557;",
|
|
59
|
-
"nodes": [
|
|
60
|
-
{
|
|
61
|
-
"id": "INTERNET",
|
|
62
|
-
"kind": "external",
|
|
63
|
-
"label": "Internet"
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"id": "APP",
|
|
67
|
-
"kind": "app",
|
|
68
|
-
"label": "Application"
|
|
69
|
-
}
|
|
70
|
-
],
|
|
71
|
-
"edges": [],
|
|
72
|
-
"decorations": []
|
|
73
|
-
},
|
|
74
|
-
"calibrationDrift": {
|
|
75
|
-
"alarms": [],
|
|
76
|
-
"note": "no-feedback-data"
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
"annotatorErrors": []
|
|
80
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
ccd53b45945cf534ddf095b46bb3a987246676e48f0308cf01946295f9d3e448
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"timestamp": "2026-05-29T21:01:01.146Z",
|
|
4
|
-
"label": "scan",
|
|
5
|
-
"total": 0,
|
|
6
|
-
"critical": 0,
|
|
7
|
-
"high": 0,
|
|
8
|
-
"medium": 0,
|
|
9
|
-
"low": 0,
|
|
10
|
-
"kev": 0,
|
|
11
|
-
"ids": []
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"timestamp": "2026-05-29T21:01:20.024Z",
|
|
15
|
-
"label": "scan",
|
|
16
|
-
"total": 0,
|
|
17
|
-
"critical": 0,
|
|
18
|
-
"high": 0,
|
|
19
|
-
"medium": 0,
|
|
20
|
-
"low": 0,
|
|
21
|
-
"kev": 0,
|
|
22
|
-
"ids": []
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"timestamp": "2026-05-29T21:01:41.003Z",
|
|
26
|
-
"label": "scan",
|
|
27
|
-
"total": 0,
|
|
28
|
-
"critical": 0,
|
|
29
|
-
"high": 0,
|
|
30
|
-
"medium": 0,
|
|
31
|
-
"low": 0,
|
|
32
|
-
"kev": 0,
|
|
33
|
-
"ids": []
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"timestamp": "2026-05-29T21:01:56.122Z",
|
|
37
|
-
"label": "scan",
|
|
38
|
-
"total": 0,
|
|
39
|
-
"critical": 0,
|
|
40
|
-
"high": 0,
|
|
41
|
-
"medium": 0,
|
|
42
|
-
"low": 0,
|
|
43
|
-
"kev": 0,
|
|
44
|
-
"ids": []
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"timestamp": "2026-05-29T21:02:10.982Z",
|
|
48
|
-
"label": "scan",
|
|
49
|
-
"total": 0,
|
|
50
|
-
"critical": 0,
|
|
51
|
-
"high": 0,
|
|
52
|
-
"medium": 0,
|
|
53
|
-
"low": 0,
|
|
54
|
-
"kev": 0,
|
|
55
|
-
"ids": []
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"timestamp": "2026-05-29T21:02:27.759Z",
|
|
59
|
-
"label": "scan",
|
|
60
|
-
"total": 0,
|
|
61
|
-
"critical": 0,
|
|
62
|
-
"high": 0,
|
|
63
|
-
"medium": 0,
|
|
64
|
-
"low": 0,
|
|
65
|
-
"kev": 0,
|
|
66
|
-
"ids": []
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"timestamp": "2026-05-29T21:02:44.397Z",
|
|
70
|
-
"label": "scan",
|
|
71
|
-
"total": 0,
|
|
72
|
-
"critical": 0,
|
|
73
|
-
"high": 0,
|
|
74
|
-
"medium": 0,
|
|
75
|
-
"low": 0,
|
|
76
|
-
"kev": 0,
|
|
77
|
-
"ids": []
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"timestamp": "2026-05-29T21:02:56.203Z",
|
|
81
|
-
"label": "scan",
|
|
82
|
-
"total": 0,
|
|
83
|
-
"critical": 0,
|
|
84
|
-
"high": 0,
|
|
85
|
-
"medium": 0,
|
|
86
|
-
"low": 0,
|
|
87
|
-
"kev": 0,
|
|
88
|
-
"ids": []
|
|
89
|
-
}
|
|
90
|
-
]
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"firstScanDate": "2026-05-29T21:01:01.152Z",
|
|
3
|
-
"lastScanDate": "2026-05-29T21:02:56.210Z",
|
|
4
|
-
"totalScans": 8,
|
|
5
|
-
"daysCleanCritical": 1,
|
|
6
|
-
"lastCleanDate": "2026-05-29",
|
|
7
|
-
"lastCriticalDate": null,
|
|
8
|
-
"hasEverHadCritical": false,
|
|
9
|
-
"bestDaysCleanCritical": 1,
|
|
10
|
-
"totalFindingsAtFirstScan": 0,
|
|
11
|
-
"totalFindingsAtLastScan": 0,
|
|
12
|
-
"totalFixesInferred": 0,
|
|
13
|
-
"lastGrade": "A+",
|
|
14
|
-
"bestGrade": "A+",
|
|
15
|
-
"launchCheckPassedAt": null,
|
|
16
|
-
"achievements": [
|
|
17
|
-
"first-scan",
|
|
18
|
-
"grade-a",
|
|
19
|
-
"grade-a-plus"
|
|
20
|
-
],
|
|
21
|
-
"previousGrade": "A+"
|
|
22
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# Data Protection Impact Assessment (DPIA)
|
|
2
|
-
|
|
3
|
-
Generated by agentic-security scanner on 2026-05-31.
|
|
4
|
-
|
|
5
|
-
This is an automated DPIA scaffold derived from static analysis.
|
|
6
|
-
It must be reviewed and completed by a privacy officer before use.
|
|
7
|
-
|
|
8
|
-
## Data classes identified
|
|
9
|
-
|
|
10
|
-
## Privacy-related findings
|
|
11
|
-
|
|
12
|
-
| Severity | File:Line | Class → Sink | Description |
|
|
13
|
-
|---|---|---|---|
|
|
14
|
-
|
|
15
|
-
## Regulatory framework mapping
|
|
16
|
-
|
|
17
|
-
- **GDPR Art. 35** — DPIA required when processing is likely to result in high risk to data subjects.
|
|
18
|
-
- **CCPA §1798.130** — Notice + access rights for collected personal information.
|
|
19
|
-
|
|
20
|
-
## Reviewer checklist
|
|
21
|
-
|
|
22
|
-
- [ ] Confirm each PII field's collection has a documented lawful basis
|
|
23
|
-
- [ ] Confirm retention period for each class is documented
|
|
24
|
-
- [ ] Confirm DSAR (data subject access request) workflow exists
|
|
25
|
-
- [ ] Confirm encryption at rest + in transit for each class
|
|
26
|
-
- [ ] Confirm logging of PII access for audit (where applicable)
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
# Threat Model (auto-generated)
|
|
2
|
-
|
|
3
|
-
Generated by agentic-security on 2026-05-31.
|
|
4
|
-
|
|
5
|
-
This threat model is derived from static analysis of the current codebase and is regenerated on every scan. It is intended as a working artifact, not a finished compliance document.
|
|
6
|
-
|
|
7
|
-
## Entities + boundaries
|
|
8
|
-
|
|
9
|
-
```mermaid
|
|
10
|
-
flowchart TB
|
|
11
|
-
subgraph External
|
|
12
|
-
end
|
|
13
|
-
subgraph Application
|
|
14
|
-
end
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Assets
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
## STRIDE threats
|
|
21
|
-
|
|
22
|
-
## Attack trees
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# Data Protection Impact Assessment (DPIA)
|
|
2
|
-
|
|
3
|
-
Generated by agentic-security scanner on 2026-06-01.
|
|
4
|
-
|
|
5
|
-
This is an automated DPIA scaffold derived from static analysis.
|
|
6
|
-
It must be reviewed and completed by a privacy officer before use.
|
|
7
|
-
|
|
8
|
-
## Data classes identified
|
|
9
|
-
|
|
10
|
-
## Privacy-related findings
|
|
11
|
-
|
|
12
|
-
| Severity | File:Line | Class → Sink | Description |
|
|
13
|
-
|---|---|---|---|
|
|
14
|
-
|
|
15
|
-
## Regulatory framework mapping
|
|
16
|
-
|
|
17
|
-
- **GDPR Art. 35** — DPIA required when processing is likely to result in high risk to data subjects.
|
|
18
|
-
- **CCPA §1798.130** — Notice + access rights for collected personal information.
|
|
19
|
-
|
|
20
|
-
## Reviewer checklist
|
|
21
|
-
|
|
22
|
-
- [ ] Confirm each PII field's collection has a documented lawful basis
|
|
23
|
-
- [ ] Confirm retention period for each class is documented
|
|
24
|
-
- [ ] Confirm DSAR (data subject access request) workflow exists
|
|
25
|
-
- [ ] Confirm encryption at rest + in transit for each class
|
|
26
|
-
- [ ] Confirm logging of PII access for audit (where applicable)
|