Commit Graph

37 Commits

Author SHA1 Message Date
Lorenzo Venerandi
4442bcc406 feat: enhance logging for authentication events 2026-03-09 17:54:47 +01:00
Lorenzo Venerandi
18536f0706 feat: implement FastAPI authentication with password protection for admin panel 2026-03-06 22:19:59 +01:00
Lorenzo Venerandi
755de7f231 feat: add password configuration for dashboard access 2026-03-06 18:29:12 +01:00
Lorenzo Venerandi
e1c1b4d953 chore: update Dockerfile and requirements for Python 3.13, enhance error handling in config and tracker modules 2026-03-01 21:52:27 +01:00
Lorenzo Venerandi
fbc757f0a6 feat: Enhance logging configuration to support dynamic log levels 2026-03-01 17:36:29 +01:00
Lorenzo Venerandi
a0b8a65ba6 fix: set default values for exports_path and backups_path in configuration 2026-02-23 20:42:55 +01:00
carnivuth
d9d7766929 linted code 2026-02-22 16:01:46 +01:00
carnivuth
d8220b2429 added parameter in config file to disable backup job 2026-02-22 16:01:39 +01:00
carnivuth
7621932602 added task dump krawl data and adjusted configuration files 2026-02-05 17:26:06 +01:00
carnivuth
3345ad1ac2 removed old default value 2026-02-03 13:56:48 +01:00
carnivuth
35c8a90013 addd exports path configuration variable and default values, restored old filename 2026-02-02 14:19:40 +01:00
carnivuth
5b94142599 linted code 2026-01-30 13:19:37 +01:00
carnivuth
04549cc57c added api endpoint to list public malicious ips 2026-01-29 23:22:39 +01:00
Lorenzo Venerandi
b253828cd7 Feat/release 1.0.0 (#63)
* Feat: update Kubernetes manifests for Krawl deployment and improve resource labels

* Feat: update version to 1.0.0 in Helm chart and related files; add timezone to README

* Feat: enhance configuration options for handling malicious IPs and update dashboard secret path

* Fix: standardize boolean value handling in environment configuration
2026-01-29 14:32:10 +01:00
Lorenzo Venerandi
e93bcb959a Doc/updated documentation (#60)
* added documentation, updated repo pointer in the dashboard, added dashboard link highlighting and mionor fixes

* added doc

* added logo to dashboard

* Fixed dashboard attack chart

* Enhance fake data generation with varied request counts for better visualization

* Add automatic migrations and support for latitude/longitude in IP stats

* Update Helm chart version to 0.2.2 and add timezone configuration option

---------

Co-authored-by: BlessedRebuS <patrick.difa@gmail.com>
2026-01-29 11:55:06 +01:00
Lorenzo Venerandi
8c76f6c847 Feat/deployment update (#56)
* feat: update analyzer thresholds and add crawl configuration options

* feat: update Helm chart version and add README for installation instructions

* feat: update installation instructions in README and add Docker support

* feat: update deployment manifests and configuration for improved service handling and analyzer settings

* feat: add API endpoint for paginated IP retrieval and enhance dashboard visualization with category filters

* feat: update configuration for Krawl service to use external config file

* feat: refactor code for improved readability and consistency across multiple files

* feat: remove Flake8, Pylint, and test steps from PR checks workflow
2026-01-26 12:36:22 +01:00
Lorenzo Venerandi
130e81ad64 Feat/dashboard improvements (#55)
* fixed external ip resoultion

* added dashboard logic division, filtering capabilities, geoip map, attacker stats

* refactor: replace print statements with applogger for error logging in DatabaseManager

* feat: add click listeners for IP cells in dashboard tables to fetch and display stats

---------

Co-authored-by: BlessedRebuS <patrick.difa@gmail.com>
2026-01-25 22:50:27 +01:00
Patrick Di Fazio
c7fe588bc4 fixed external ip resoultion (#54) 2026-01-25 01:19:30 +01:00
BlessedRebuS
14d616fae3 added ip logging memory improvements, added local ip and public ip exlusion 2026-01-24 23:28:10 +01:00
Lorenzo Venerandi
4addf41a5b Add logging for environment variable overrides in config 2026-01-23 22:26:14 +01:00
Lorenzo Venerandi
4450d3a4e3 Linted code iwht black tool 2026-01-23 22:00:21 +01:00
leonardobambini
4e4c370b72 added site depth limit mechanism (#48)
* added site depth limit mechanism

* modified max pages limit and ban duration seconds

---------

Co-authored-by: Leonardo Bambini <lbambini@Leonardos-MacBook-Air.local>
Co-authored-by: BlessedRebuS <patrick.difa@gmail.com>
2026-01-23 21:33:32 +01:00
Lorenzo Venerandi
223883a781 Configuration override from environment variable (#47)
* Add environment variable override for config fields

Introduces functions to override configuration fields from environment variables, allowing dynamic configuration without modifying YAML files. The environment variable names are generated from field names, and type conversion is handled for int, float, and tuple fields.

* update chart version to 0.1.4

* Update README.md to enhance environment variable configuration details and improve overall clarity
2026-01-23 17:34:23 +01:00
carnivuth
9d9a718aec feat:removed manual timezone management, delegate timezone configuration to execution environment
removed code that manages timezone setup from config file, krawl now
obeys to the environment configuration
2026-01-17 18:06:09 +01:00
Patrick Di Fazio
bd8c326918 tuned weights 2026-01-05 16:54:43 +01:00
Leonardo Bambini
bf02fdb351 modified default analyzer values 2026-01-05 10:01:51 +01:00
Leonardo Bambini
ff98a77e1a parametrized into config.yaml + bug fix 2026-01-04 22:20:10 +01:00
Patrick Di Fazio
354f8bf895 Fix indentation for server_header in config.py 2025-12-30 00:24:36 +01:00
Patrick Di Fazio
12dcf5ba39 Merge branch 'dev' into feat/randomized-server-header 2025-12-30 00:14:14 +01:00
Patrick Di Fazio
8a645c22e6 Merge branch 'dev' into feat/randomized-server-header 2025-12-30 00:02:44 +01:00
Patrick Di Fazio
06ffa2c480 Added wordlists and server header logic to helm 2025-12-29 23:57:37 +01:00
Leonardo Bambini
c2c43ac985 Added randomized server header and changed behavior of SERVER_HEADER env var 2025-12-29 18:51:37 +01:00
Phillip Tarrant
6487cb493d Merge branch 'dev' into feat/sqlite3-storage 2025-12-28 11:08:10 -06: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
Patrick Di Fazio
6556e17f91 Added timezone env variable handling 2025-12-28 17:07:18 +01:00
Phillip Tarrant
16aca9bba6 Add configurable HTTP Server header for deception
Add SERVER_HEADER environment variable to customize the HTTP Server
  response header, defaulting to Apache/2.2.22 (Ubuntu). This allows the
  honeypot to masquerade as different web servers to attract attackers.

  - Add server_header field to Config dataclass
  - Override version_string() in Handler to return configured header
  - Update documentation and all deployment configs
2025-12-26 07:53:05 -06:00
BlessedRebuS
076b2de584 First commit 2025-12-14 19:08:01 +01:00