Skip to content

Commit d367a26

Browse files
committed
security: Add overrides for vuln deps + docs/SECURITY.md
- Override serialize-javascript, undici, diff, ip to patched versions - Add docs/SECURITY.md (overrides + known npm audit false positive for ip/sonos) - Link to SECURITY.md from README Made-with: Cursor
1 parent ef517f5 commit d367a26

4 files changed

Lines changed: 167 additions & 176 deletions

File tree

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,8 @@ After starting the container, access the setup wizard at:
161161

162162
🎛️ **[Soundcraft Ui24R Integration](docs/SOUNDCRAFT.md)** - Control mixer volume directly from Slack/Discord
163163

164+
🔒 **[Security & dependency notes](docs/SECURITY.md)** - Overrides, vulnerabilities, and known npm audit false positives
165+
164166
### 🎮 Discord Setup
165167

166168
**Create your Discord bot:**

docs/SECURITY.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Security
2+
3+
## Dependency vulnerabilities
4+
5+
We use **npm overrides** in `package.json` to pin security-patched versions of transitive dependencies. No `npm audit fix --force` is used (that would downgrade packages and risk breaking changes).
6+
7+
### Current overrides
8+
9+
| Package | Pinned to | Reason |
10+
|--------|-----------|--------|
11+
| `serialize-javascript` | ^7.0.4 | RCE fix (RegExp.flags / Date.prototype.toISOString) |
12+
| `undici` | ^6.23.0 | Unbounded decompression (Content-Encoding) |
13+
| `diff` | ^8.0.3 | DoS in parsePatch/applyPatch |
14+
| `ip` | ^2.0.1 | SSRF fix in `isPublic` |
15+
16+
### Known npm audit false positive: `ip` (via `sonos`)
17+
18+
**Alert:** “ip SSRF improper categorization in isPublic” (e.g. Dependabot #60)
19+
20+
- **Cause:** The `sonos` package ([node-sonos](https://github.com/bencevans/node-sonos)) depends on `ip`.
21+
- **Actual state:** We override `ip` to **2.0.1**, which includes the fix. `sonos@1.14.3` also ships with `ip@2.0.1`.
22+
- **Why it still appears:** The advisory is written against “all versions of ip when required by sonos”, so npm/Dependabot still report it even though the installed version is patched.
23+
- **Action:** None required. This is a **known false positive**; no extra “force update” or downgrade is needed.
24+
25+
We have **not** run `npm audit fix --force`; that would downgrade e.g. `sonos`, `mocha`, or `discord.js` and could break the app. Only non-breaking, security-patched overrides are used.

0 commit comments

Comments
 (0)