Felix Riesterer: Mittels javascript eintrag in MSSQL Datenbank

Beitrag lesen

Lieber Toast,

switch (request_DB.readyState)

wo kommt die Variable "request_DB" her? Ich sehe sie nirgends definiert. Von Deiner Schreibweise her müsste es eine "globale" Variable sein (nicht gut).

alert("AJAX request ist abgeschlossen hat aber folgenden Fehler:" + request.status);

Wo kommt die Variable "request" her? Ich sehe sie nirgends definiert. Von Deiner Schreibweise her müsste es eine "globale" Variable sein (nicht gut).

$stock = $_POST['stock'];

$lichtnr = $_POST['lichtnr'];

Wozu das Umkopieren? Du verschleierst nur, was in "$stock" und "$lichtnr" steht und woher es gekommen ist! Das ist potenziell gefährlich!!  
  

> `$query = "UPDATE obergeschoss SET Wert_Toggle=1 WHERE [index]=" + $lichtnr;`{:.language-php}  

So, hier ist es passiert. Du hast eine Sicherheitslücke für SQL-Injektionen gebaut. Man sieht der Variablen "$lichtnr" nicht an, dass es sich um ungeprüfte POST-Werte handelt. Stünde dort statt der Variablen `$_POST['lichtnr']`{:.language-php}, müssten sofort Deine Alarmglocken schrillen. Lies bitte den [Artikel zur kontextgerechten Kodierung von Daten](http://wiki.selfhtml.org/wiki/Artikel:Kontextwechsel), um solche Unfälle in Zukunft zu vermeiden!  
  
Liebe Grüße,  
  
Felix Riesterer.

-- 
ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)