6 Commits

Author SHA1 Message Date
Lorenzo Venerandi
65b12d16bd feat: enhance dashboard documentation and add new images for improved visualization 2026-03-10 11:00:47 +01:00
Lorenzo Venerandi
2e4e494636 docs: add comprehensive documentation for API, backups, canary token, dashboard, honeypot, reverse proxy, and wordlist customization 2026-03-01 21:20:33 +01:00
Lorenzo Venerandi
44235b232c docs: add architecture documentation for Krawl project 2026-02-17 14:34:48 +01:00
carnivuth
813c4b80d0 added configuration variable documentation and filename documentation 2026-02-02 14:54:36 +01:00
carnivuth
ee46887761 added documentation on firewall structure 2026-02-02 14:44:33 +01:00
Phillip Tarrant
f1c142c53d feat: add SQLite persistent storage for request logging
- Add SQLAlchemy-based database layer for persistent storage
  - Create models for access_logs, credential_attempts, attack_detections, ip_stats
  - Include fields for future GeoIP and reputation enrichment
  - Implement sanitization utilities to protect against malicious payloads
  - Fix XSS vulnerability in dashboard template (HTML escape all user data)
  - Add DATABASE_PATH and DATABASE_RETENTION_DAYS config options
  - Dual storage: in-memory for dashboard performance + SQLite for persistence

  New files:
  - src/models.py - SQLAlchemy ORM models
  - src/database.py - DatabaseManager singleton
  - src/sanitizer.py - Input sanitization and HTML escaping
  - requirements.txt - SQLAlchemy dependency

  Security protections:
  - Parameterized queries via SQLAlchemy ORM
  - Field length limits to prevent storage exhaustion
  - Null byte and control character stripping
  - HTML escaping on dashboard output
2025-12-28 10:43:32 -06:00