Skip to content

Commit 1e9b05e

Browse files
Add SECURITY.md — responsible-disclosure policy
Org-wide security policy covering all JavaScriptSolidServer projects (individual repos may override with their own SECURITY.md). - Reporting: prefer private GitHub Security Advisory; fallback email - What to include: repo/version, threat model, repro, suggested fix, disclosure timeline - Response expectations: ack 7d, assessment 14d, coordinated disclosure window ~90d (negotiable) - Scope: auth/authz, SSRF, WAC bypass, crypto correctness, supply chain, DoS - Out of scope: 3rd-party dep issues, self-XSS, non-sensitive static paths, attacker-needs-root scenarios - AGPL-3.0 §5(a) compliance explicitly noted as not a security issue (separate path via CONTRIBUTING)
1 parent afde24a commit 1e9b05e

1 file changed

Lines changed: 83 additions & 0 deletions

File tree

SECURITY.md

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# Security Policy
2+
3+
This document describes how to report security issues for projects in
4+
the JavaScriptSolidServer organisation. Individual repositories may
5+
publish their own `SECURITY.md` with project-specific contact paths or
6+
scope; when they do, that overrides this one.
7+
8+
## Reporting a vulnerability
9+
10+
Please report security vulnerabilities **privately**, not via public
11+
GitHub issues.
12+
13+
**Preferred contact:** open a [private security advisory][advisory] on
14+
the affected repository. GitHub's Security Advisories let you discuss
15+
the issue with maintainers in a private channel and coordinate a fix.
16+
17+
**Alternative:** email `melvincarvalho@gmail.com` with subject prefix
18+
`[JSS SECURITY]` and a description of the issue. PGP-encrypted email is
19+
welcome; key fingerprint available on request.
20+
21+
[advisory]: https://docs.github.com/en/code-security/security-advisories/working-with-repository-security-advisories/creating-a-repository-security-advisory
22+
23+
## What to include
24+
25+
- Affected repository and version (commit SHA or release tag)
26+
- Description of the vulnerability and the threat model it enables
27+
- Steps to reproduce (proof of concept where applicable)
28+
- Suggested mitigation, if you have one
29+
- Whether you intend to disclose publicly, and on what timeline
30+
31+
## Response expectations
32+
33+
- **Acknowledgement:** within 7 days of receipt
34+
- **Initial assessment:** within 14 days
35+
- **Coordinated disclosure window:** typically 90 days from initial
36+
report, longer if the issue requires substantial protocol or
37+
infrastructure changes. Shorter windows are negotiable for low-
38+
complexity issues.
39+
40+
We may publish an advisory crediting the reporter, with their consent.
41+
42+
## Scope
43+
44+
In scope for security disclosure:
45+
46+
- **Authentication and authorisation** — Solid-OIDC, NIP-98, WAC, JWT
47+
verification, DID resolution, profile-side verification methods
48+
- **Server-side request forgery (SSRF)** — request paths that take
49+
user-controlled URLs or follow redirects
50+
- **Data integrity / WAC bypass** — paths that allow reading or
51+
writing resources without correct ACL evaluation
52+
- **Cryptographic correctness** — Schnorr signature verification, CID
53+
v1 multikey handling, hash usage
54+
- **Supply chain** — dependency confusion, malicious package
55+
publication, account compromise vectors
56+
- **Denial of service** — server-side resource exhaustion via crafted
57+
requests, oversized payloads, etc.
58+
59+
Out of scope (please do not file as security):
60+
61+
- Issues in third-party dependencies — file with the upstream project
62+
unless the issue is specific to how a JSS repository uses the
63+
dependency
64+
- Self-XSS in the data browser via pasting attacker-controlled content
65+
into the user's own pod (the user is the attacker)
66+
- Missing security headers on static asset paths where the asset
67+
itself is non-sensitive
68+
- Anything requiring physical access or root on the user's own machine
69+
70+
## AGPL-3.0 §5(a) compliance
71+
72+
License-compliance issues on downstream forks (missing modification
73+
notice on deployed modified versions) are **not** security issues. See
74+
the relevant repository's `CONTRIBUTING.md` *"Forks and downstream
75+
distribution"* section for the standard path, or open an issue against
76+
the upstream repository for compliance discussion.
77+
78+
## Acknowledgements
79+
80+
Researchers who report security issues responsibly will be credited in
81+
the relevant advisory unless they prefer to remain anonymous. We
82+
appreciate the work it takes to find and report these issues
83+
constructively.

0 commit comments

Comments
 (0)