18 augustus
Stefan Esser heeft een heel goed artikel over hoe MySQL en SQL afgeplat kolommen die kunnen leiden tot beveiligingsrisico. Hij gebruikt een goed voorbeeld van een kolom met een breedte van 16 tekens, maar hij iets met 17 tekens. Uiteraard handhaving lengte is een manier om dat te handhaven, zelfs als het bijna nooit gebeurt. Maar een andere zaak kwam aan het achterhoofd. Harkening terug naar de dagen van mijn lezing Rain Forrest Puppy's papers, besefte ik dat vaak de code doet een rechte regex of string matching. Bijvoorbeeld: if ($ username eq "admin") (fail ();) maar als de $ username is "admin" duidelijk zal falen de string match sinds het is niet een exacte match, maar het zal hebben dezelfde netto-effect in de database van het passeren van de controle en waarmee je toegang geeft tot de admin gegevens. Ook opvulling voor de gebruikersnaam zal hetzelfde effect hebben in sommige gevallen - afhankelijk van hoe de SQL-query wordt gebouwd (als het ingekapseld). Anyway, goed artikel, gaan lezen!

































