Felix Riesterer: Variable aus PHP Session in MySQL suchen

Beitrag lesen

Liebe(r) benutzer19,

ich sehe da ein paar grundlegende Probleme, die auch sicherheitsrelevant sind!

$_SESSION["username"] = $_POST["username"];

Man sieht $_SESSION['username'] später nicht mehr an, dass hier eine Benutzereingabe unbehandelt geblieben ist und daher für SQL potenziell bösartig sein kann.

<div class="abstand_oben">
  <input type="text" formaction ="bereits_angemeldet.php"   name="username" placeholder="Benutzername" required><br>
</div>

Wie man Formularelemente korrekt verwendet, findest Du in unserem Wiki: Formulare/Beschriftungen mit label

$userid = mysql_query($mysqli, "SELECT ACCOUNTID from accounts  WHERE USERNAME = '$_SESSION['username']) .' " ); 

Hier sehen wir, wie ein ursprünglicher $_POST-Wert, also eine Benutzereingabe(!!), auf Umwegen (über ein Umkopieren nach $_SESSION) in seiner unbehandelten Form direkt in eine SQL-Query eingefügt wird. Da fehlt die unerlässliche kontext-gerechte Behandlung!

Man kann nur von Glück reden, dass Dein Code so noch nicht lauffähig ist, sonst wäre diese Sicherheitslücke ausnutzbar.

Liebe Grüße

Felix Riesterer