fix: DeepSeek audit — header injection + IAM limit + bump 0.5.22

- src/api/routes/entries.js: санитизация filename в /api/v1/entries/export
- ui/routes/export.js: санитизация filename в UI /export
- src/auth.js: лимит 100KB для IAM-ответов
- src/api/routes/entries.js: fallback для пустого allowedIds
This commit is contained in:
2026-06-04 15:48:16 +03:00
parent 58e34042de
commit c1df27d29d
5 changed files with 238 additions and 6 deletions
+1 -1
View File
@@ -25,7 +25,7 @@ function createRouter() {
res.set('Content-Type', 'text/plain; charset=utf-8');
// ?view=1 → inline (просмотр), иначе → attachment (скачивание)
// ?filename=X → своё имя, по умолчанию white-list.txt
const fname = req.query.filename || 'white-list.txt';
const fname = (req.query.filename || 'white-list.txt').replace(/[^\w\-_. ]/g, '_');
const disp = req.query.view === '1' ? 'inline' : 'attachment';
res.set('Content-Disposition', disp + '; filename="' + fname + '"');
res.send(r.data);