← back to 1930swallpaper
fix: block .bak-* backup leaks from static root + remove stale public/index.html.bak
d5553e565b78fdb2310051499b3c84b6a58abbc6 · 2026-05-30 21:34:04 -0700 · SteveStudio2
Regex in bak-block middleware only matched .bak. or .bak$ but missed
.bak-<timestamp> filenames. Widened to .bak([.-]|$) so dated backup
files (e.g. index.html.bak-20260526152130) are also blocked with 404.
Deleted the offending file from public/ (was untracked, served raw HTML).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Files touched
M package-lock.jsonM server.js
Diff
commit d5553e565b78fdb2310051499b3c84b6a58abbc6
Author: SteveStudio2 <stevestudio2@SteveStacStudio.lan>
Date: Sat May 30 21:34:04 2026 -0700
fix: block .bak-* backup leaks from static root + remove stale public/index.html.bak
Regex in bak-block middleware only matched .bak. or .bak$ but missed
.bak-<timestamp> filenames. Widened to .bak([.-]|$) so dated backup
files (e.g. index.html.bak-20260526152130) are also blocked with 404.
Deleted the offending file from public/ (was untracked, served raw HTML).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---
package-lock.json | 13 +++++++++++++
server.js | 2 +-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/package-lock.json b/package-lock.json
index be561c8..5c33dad 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,6 +8,7 @@
"name": "1930swallpaper",
"version": "0.1.0",
"dependencies": {
+ "dotenv": "^17.4.2",
"express": "^4.21.0",
"helmet": "^8.1.0"
}
@@ -172,6 +173,18 @@
"npm": "1.2.8000 || >= 1.4.16"
}
},
+ "node_modules/dotenv": {
+ "version": "17.4.2",
+ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.4.2.tgz",
+ "integrity": "sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw==",
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://dotenvx.com"
+ }
+ },
"node_modules/dunder-proto": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
diff --git a/server.js b/server.js
index e9575ce..44e4275 100644
--- a/server.js
+++ b/server.js
@@ -150,7 +150,7 @@ require('./_universal-auth')(app, { siteName: "1930swallpaper" });
// Never serve editor/snapshot artifacts from the static root.
app.use((req, res, next) => {
- if (/\.bak(\.|$)|\.pre-/i.test(req.path)) {
+ if (/\.bak([.-]|$)|\.pre-/i.test(req.path)) {
return res.status(404).send('Not found');
}
next();
← fe78668 feat(fleet): theme1/theme2 query-param-gated toggle on catal
·
back to 1930swallpaper
·
Redirect legacy .html page URLs to canonical clean paths (30 bdf4480 →