From 74509fbc7733669116a248ba5e500da6cd3267f0 Mon Sep 17 00:00:00 2001 From: Troy grunt Date: Fri, 13 Feb 2026 23:05:18 +0100 Subject: [PATCH] =?UTF-8?q?download=20nur=20mit=20g=C3=BCltiger=20uui?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- www/admin.php | 1 - www/download.php | 8 +++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/www/admin.php b/www/admin.php index b7924f9..a8d01e4 100644 --- a/www/admin.php +++ b/www/admin.php @@ -885,5 +885,4 @@ $identities = $sql->get("SELECT * FROM identities ORDER BY id DESC"); //TODO anzeige von einer gelöschten oder leeren datei ausblenden, bei vollzogenem löschvorgang -//TODO prüfen ob dateien nur mit korrektem uuid herunterladbar sind ?> diff --git a/www/download.php b/www/download.php index 5009777..b841e47 100644 --- a/www/download.php +++ b/www/download.php @@ -6,13 +6,19 @@ require '_func.php'; * Eingaben prüfen */ $fileId = isset($_GET['id']) ? (int)$_GET['id'] : 0; -$uuid = $_GET['uuid'] ?? null; +$uuid = trim($_GET['uuid'] ?? ''); if ($fileId <= 0 || !$uuid) { http_response_code(400); exit('Ungültige Anfrage'); } +if (!preg_match('/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i', $uuid)) { + http_response_code(400); + exit('Ungültige Anfrage'); + //TODO fehlgeschlagener zugriff als fehlerhafte anmeldung ansehen und bei wiederholung ip sperren +} + /** * Token validieren */