Instanzname in die Config, Setup-Luecke geschlossen
Instanz: - $instanz in der externen Config bestimmt INSTANZ, UPLOADS_PATH und SESSION_NAME. Der Verzeichnisname waehlt nur noch die Config-Datei aus und ist Fallback, solange $instanz fehlt. - savePDF() schreibt nicht mehr fest nach DOCUMENT_ROOT."kunden", sondern in das Verzeichnis, das es auch aufraeumt. .gitkeep wird nicht mehr mitgeloescht. Sicherheit: - index.php?action=setup war ohne Login auch bei gueltiger Config erreichbar. rebuild-settings.php schrieb $_POST ungeprueft als PHP-Code in die Config (Codeausfuehrung, sofern die Datei schreibbar war). - Setup nur noch ohne gueltige Config, firststart.php und rebuild-settings.php pruefen das zusaetzlich selbst. - Config-Werte werden per var_export() maskiert. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -46,8 +46,13 @@ if($version == -1)
|
||||
|
||||
|
||||
$settings=readsettings();
|
||||
// Die Ersteinrichtung schreibt die Config neu und kann die Datenbank leeren.
|
||||
// Sie läuft ohne Login und darf deshalb nur erreichbar sein, solange es
|
||||
// noch keine gültige Config gibt.
|
||||
if($settings != "valid")
|
||||
$action = "setup";
|
||||
else if($action == "setup")
|
||||
$action = "";
|
||||
|
||||
if($settings == "valid" && $action != "setup")
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user