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
docs: update README with Docker deployment, container security, rate limiting
- Add Docker/docker-compose deployment instructions
- Add ratelimit.js and ratelimit.test.js to architecture tree
- Add Dockerfile, docker-compose.yml, CI pipeline to architecture
- Update security section: minimal env for child processes, DNS rebinding
protection, rate limiting, container hardening details
- Fix nuclei template path from /username/ to /opt/
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
├── .github/workflows/ci.yml # CI pipeline (test, lint, audit, scan)
279
297
│
280
298
├── docs/ # Documentation
281
299
│ └── INSTALLATION.md # Detailed setup guide
@@ -289,16 +307,23 @@ discord-osint-assistant/
289
307
For full details, see [SECURITY.md](SECURITY.md).
290
308
291
309
### Built-in Security Features
292
-
-**Safe Command Execution**: All external tools run via `spawn()` with argument arrays — no shell string interpolation. See `utils/process.js`
310
+
-**Safe Command Execution**: All external tools run via `spawn()` with argument arrays and a minimal environment (no secrets leaked to child processes). See `utils/process.js`
293
311
-**Input Validation**: Comprehensive sanitization strips shell metacharacters, newlines, null bytes, and Unicode bypass characters. See `utils/validation.js`
294
-
-**SSRF Protection**: URL-accepting commands validate that targets do not resolve to private/internal IP ranges. See `utils/ssrf.js`
312
+
-**SSRF Protection**: URL-accepting commands validate resolved IPs against private ranges with connect-time DNS rebinding prevention via custom HTTP agents. See `utils/ssrf.js`
295
313
-**Permission System**: Sensitive OSINT commands require elevated Discord permissions (ManageGuild/Administrator). Configurable via `OSINT_ALLOWED_ROLES` env var. See `utils/permissions.js`
314
+
-**Rate Limiting**: Per-user cooldowns (3s/10s/30s by command category) and configurable daily limits. See `utils/ratelimit.js`
296
315
-**Audit Logging**: All command usage is logged with user, guild, and timestamp
297
316
-**Secure Error Handling**: Error responses shown to users are generic; detailed errors are logged server-side only
298
317
318
+
### Container Security
319
+
- Multi-stage Dockerfile with pinned base image and non-root user
0 commit comments