Sicherheit: AJAX-Endpunkte und Statistik nur mit Anmeldung
Keiner der AJAX-Endpunkte hat einen Login geprueft. Ohne Anmeldung liessen sich Kunden, Adressen und Rechnungen durchsuchen, und ajax/autosave.php setzt $_POST ungeprueft in SQL (SQL-Injection ohne Login). - incs/connectmysql.php und ajax/auto/connectmysql.php, die alle AJAX-Endpunkte laden, antworten ohne gueltige Session mit 403 - stats.php verlangt eine Anmeldung - db-backup.php und clean_db.php laufen nur noch per Kommandozeile; ueber den Webserver konnte jeder einen Datenbank-Dump anstossen Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,6 +2,12 @@
|
||||
require_once("../../incs/constants.php");
|
||||
session_name(SESSION_NAME);
|
||||
session_start();
|
||||
// Alle AJAX-Endpunkte laden diese Datei: ohne Anmeldung gibt es keine Daten.
|
||||
if(($_SESSION["login"] ?? "") !== "valid")
|
||||
{
|
||||
http_response_code(403);
|
||||
exit("Nicht angemeldet.");
|
||||
}
|
||||
require_once("../../incs/settings.php");
|
||||
$settings=readsettings();
|
||||
if($settings == "valid")
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
<?php
|
||||
// Wartungsskript: nur per Kommandozeile, nie über den Webserver
|
||||
if(PHP_SAPI != "cli")
|
||||
exit;
|
||||
require_once("./incs/constants.php");
|
||||
session_name(SESSION_NAME);
|
||||
session_start();
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
<?php
|
||||
// Nur per Kommandozeile (Cronjob), nie über den Webserver
|
||||
if(PHP_SAPI != "cli")
|
||||
exit;
|
||||
/*
|
||||
* Datenbank-Backup (Cronjob).
|
||||
*
|
||||
|
||||
@@ -2,6 +2,12 @@
|
||||
require_once("../incs/constants.php");
|
||||
session_name(SESSION_NAME);
|
||||
session_start();
|
||||
// Alle AJAX-Endpunkte laden diese Datei: ohne Anmeldung gibt es keine Daten.
|
||||
if(($_SESSION["login"] ?? "") !== "valid")
|
||||
{
|
||||
http_response_code(403);
|
||||
exit("Nicht angemeldet.");
|
||||
}
|
||||
require_once("../incs/settings.php");
|
||||
$settings=readsettings();
|
||||
if($settings == "valid")
|
||||
|
||||
Reference in New Issue
Block a user