You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: SECURITY.md
+21Lines changed: 21 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -112,6 +112,27 @@ This section documents the attack surface, trust boundaries, and identified thre
112
112
-`BOOKSTACK_BASE_URL` is operator-supplied at deployment time; it is not accepted from end users or MCP clients
113
113
- Operators are responsible for ensuring the URL points to a legitimate BookStack instance
114
114
115
+
## Vulnerability and License Remediation Policy
116
+
117
+
### Vulnerability remediation thresholds
118
+
119
+
| Severity | Enforcement | Remediation target |
120
+
|----------|-------------|-------------------|
121
+
|**CRITICAL**| Blocks release — Trivy gate fails with `--exit-code 1`| Must be resolved before any new release is published |
122
+
|**HIGH**| Fails CI — `npm audit --audit-level=high` blocks merge | Must be resolved within 30 days of discovery |
123
+
|**MEDIUM**| Flagged by OSV Scanner and Trivy (SARIF uploaded to GitHub Security tab) | Addressed via Dependabot PRs on a best-effort basis |
124
+
|**LOW**| Flagged by scanners | Addressed via Dependabot PRs on a best-effort basis |
125
+
126
+
Vulnerabilities in dependencies that do not affect the deployed product are documented in [`vex.json`](vex.json) with a machine-readable justification and are excluded from gate failures (see [VEX Document](#vex-document) below).
127
+
128
+
### License policy
129
+
130
+
-**Runtime dependencies** (shipped in the Docker image and via npm): only OSI-approved permissive licenses are permitted — MIT, Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, and equivalents.
131
+
-**Development dependencies** (build tools, test frameworks, type definitions): same permissive licenses preferred; copyleft licenses (GPL, LGPL) are acceptable since dev dependencies are not distributed.
132
+
-**This project** is licensed under MIT.
133
+
134
+
New dependencies must be reviewed for license compatibility before being added. Incompatible licenses must be flagged and either replaced or explicitly approved.
135
+
115
136
## VEX Document
116
137
117
138
A [VEX (Vulnerability Exploitability eXchange)](https://openvex.dev/) document is maintained at [`vex.json`](vex.json) in OpenVEX format. When a vulnerability scanner reports a CVE in a dependency that does not affect this project — for example, a vulnerable code path that is never called, or a CVE present only in a development dependency not shipped in the Docker image — a statement is added to `vex.json` with a machine-readable justification.
0 commit comments