From 3b1ca05fa55dc915ff8d74d2b99dca13cc51b977 Mon Sep 17 00:00:00 2001 From: jbergner Date: Sun, 26 Apr 2026 20:59:21 +0200 Subject: [PATCH] =?UTF-8?q?Privilegierte=20Benutzer-Accounts=20hinzuf?= =?UTF-8?q?=C3=BCgen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deploy/mariadb/init/001-schema.sql | 34 +- main.go | 602 ++++++++++++++++++++++++++++- 2 files changed, 633 insertions(+), 3 deletions(-) diff --git a/deploy/mariadb/init/001-schema.sql b/deploy/mariadb/init/001-schema.sql index 631c1e4..6d0a9d1 100644 --- a/deploy/mariadb/init/001-schema.sql +++ b/deploy/mariadb/init/001-schema.sql @@ -1768,4 +1768,36 @@ VALUES UPDATE detection_rules SET enabled = 0 -WHERE name LIKE 'v1_%'; \ No newline at end of file +WHERE name LIKE 'v1_%'; + +CREATE TABLE user_host_baseline ( + username VARCHAR(128), + hostname VARCHAR(128), + first_seen TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (username, hostname) +); + +CREATE TABLE IF NOT EXISTS user_privilege_baseline ( + username VARCHAR(255) NOT NULL PRIMARY KEY, + first_seen DATETIME(6) NOT NULL DEFAULT UTC_TIMESTAMP(6), + last_seen DATETIME(6) NOT NULL DEFAULT UTC_TIMESTAMP(6), + seen_count BIGINT NOT NULL DEFAULT 1 +); + +CREATE TABLE IF NOT EXISTS privileged_users ( + username VARCHAR(255) PRIMARY KEY, + reason TEXT NULL, + enabled TINYINT(1) NOT NULL DEFAULT 1, + created_at TIMESTAMP(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), + updated_at TIMESTAMP(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6) +); + +CREATE INDEX idx_privileged_users_enabled +ON privileged_users (enabled); + +INSERT INTO privileged_users (username, reason, enabled) +VALUES +('administrator', 'Built-in Administrator', 1), +('admin', 'Generic admin account', 1) +ON DUPLICATE KEY UPDATE +reason = VALUES(reason); \ No newline at end of file diff --git a/main.go b/main.go index bf65d8d..ea7a659 100644 --- a/main.go +++ b/main.go @@ -515,6 +515,7 @@ a:hover {