Explorar el Código

forgot to remove the procedure

root hace 5 meses
padre
commit
a862387ff7
Se han modificado 1 ficheros con 0 adiciones y 43 borrados
  1. 0 43
      html/login.php

+ 0 - 43
html/login.php

@@ -5,49 +5,6 @@ require_once ($_SERVER['DOCUMENT_ROOT']."/inc/languages/" . HTML_LANG . ".php");
 
 $error = '';
 
-function getSafeRedirectUrl(string $default = '/'): string {
-    $url = filter_input(INPUT_GET, 'redirect_url', FILTER_SANITIZE_URL) 
-        ?? filter_input(INPUT_POST, 'redirect_url', FILTER_SANITIZE_URL) 
-        ?? $default;
-
-    $decodedUrl = urldecode($url);
-    // Проверяем:
-    // 1. URL начинается с `/` (но не `//` или `http://`)
-    // 2. Содержит только разрешённые символы (a-z, 0-9, -, _, /, ?, =, &, ., ~)
-    if (!preg_match('/^\/(?!\/)[a-z0-9\-_\/?=&.~]*$/i', $decodedUrl)) {
-        return $default;
-    }
-
-    // Проверяем:
-    // 1. Начинается с /, не содержит //, ~, %00
-    // 2. Разрешённые символы: a-z, 0-9, -, _, /, ?, =, &, .
-    // 3. Допустимые форматы:
-    //    - /path/          (слэш на конце)
-    //    - /path           (без слэша)
-    //    - /file.html      (только .html)
-    //    - /script.php     (только .php)
-    //    - Любой вариант с параметрами (?id=1)
-    if (!preg_match(
-        '/^\/'                      // Начинается с /
-        . '(?!\/)'                  // Не //
-        . '[a-z0-9\-_\/?=&.]*'      // Разрешённые символы
-        . '(?:\/'                   // Варианты окончаний:
-          . '|\.(html|php)(?:\?[a-z0-9\-_=&]*)?'  // .html/.php (+ параметры)
-          . '|(?:\?[a-z0-9\-_=&]*)?' // Или параметры без расширения
-        . ')$/i', 
-        $decodedUrl
-    )) {
-        return $default;
-    }
-
-    // Дополнительная защита: явно блокируем /config/, /vendor/ и т.д.
-    if (preg_match('/(^|\/)(cfg|inc|log|sessions|tmp)(\/|$)/i', $decodedUrl)) {
-        return $default;
-    }
-
-    return $url;
-}
-
 // Использование
 $redirect_url = getSafeRedirectUrl(DEFAULT_PAGE);