image

Uitslag prijsvraag workshop veilig programmeren

zaterdag 6 september 2008, 13:48 door Redactie, 6 reacties

Zelfs voor lezers van Security.nl valt het niet mee om veilig te programmeren, zo blijkt uit de uitslag van de prijsvraag. Deelnemers konden een workshop veilig programmeren winnen door de fouten in deze PHP code te ontdekken en op te sturen. De nummer één wist elf problemen te vinden van de meer dan 20 die aanwezig waren. Voor iedereen die benieuwd is naar de oplossingen staan hier de antwoorden. De winnaar wensen we een leerzame workshop toe.

Reacties (6)
07-09-2008, 15:47 door Anoniem
Punt 5 snap ik niet. Hoezo is het een veiligheidsprobleem dat het wachtwoord in de code staat? Netjes is het inderdaad niet. Maar met veiligheid heeft dat niets te maken.
07-09-2008, 15:53 door Anoniem
Nog wat opmerkingen:

"Er ontbreekt controle op de omvang van het geuploade bestand." - Je moet in PHP de max upload size opgeven, dus het is niet zo dat er geen limiet aan zit. Wederom is het wellicht netter om dat in de code te doen.. ook omdat je voor een avatar geen 10 MB ruimte nodig hebt. Maar ik zie het niet als een security probleem.

"Er moet een controle worden gedaan op het type bestand". Tjah, is netter, maar het is wederom geen beveiligingsprobleem. Zolang de webserver bij het sturen van de avatar file naar de browser het type maar op jpeg ofzo zet.. Dan kan je op webpagina hooguit garbage op je scherm krijgen.

"zodat aanvallers geen geen interne informatie over het systeem krijgen". Zowieso moet je op een production server de errors en warnings niet naar de browser, maar naar een file sturen. Het geniet slechts de voorkeur om goed return values te controleren. Maar wederom niet een nijpend security probleem.
07-09-2008, 20:55 door Anoniem
Door AnoniemPunt 5 snap ik niet. Hoezo is het een veiligheidsprobleem dat het wachtwoord in de code staat? Netjes is het inderdaad niet. Maar met veiligheid heeft dat niets te maken.

De reden staat er toch bij? "anders dient de gehele code te worden beschermd alsof het een wachtwoord is". Zonder wachtwoorden erin zou je de sourcecode nog eens aan iemand kunnen geven zonder gelijk secrets prijs te geven.
07-09-2008, 20:58 door Anoniem
Door Anoniem
"Er moet een controle worden gedaan op het type bestand". Tjah, is netter, maar het is wederom geen beveiligingsprobleem. Zolang de webserver bij het sturen van de avatar file naar de browser het type maar op jpeg ofzo zet.. Dan kan je op webpagina hooguit garbage op je scherm krijgen.

Assumption is the mother of all fuckups! Niet op de webserver gaan vertrouwen, beveiliging hoort op alle lagen thuis. Programmeurs en beheerders communiceren vaak niet voldoende om problemen te voorkomen, waarom het dus niet in de code oplossen?


"zodat aanvallers geen geen interne informatie over het systeem krijgen". Zowieso moet je op een production server de errors en warnings niet naar de browser, maar naar een file sturen. Het geniet slechts de voorkeur om goed return values te controleren. Maar wederom niet een nijpend security probleem.

Information gathering is 1 van de eerste dingen die een hacker doet, het is dus belangrijk om geen info weg te geven. Bovendien laat je daarmee zien dat je er over hebt nagedacht en gaat ie misschien gelijk de buren hacken.
08-09-2008, 11:44 door Anoniem
Door Anoniem
"Er moet een controle worden gedaan op het type bestand". Tjah, is netter, maar het is wederom geen beveiligingsprobleem. Zolang de webserver bij het sturen van de avatar file naar de browser het type maar op jpeg ofzo zet.. Dan kan je op webpagina hooguit garbage op je scherm krijgen.

En als ik nu eens een .php bestand opstuur met daarin allerlei vervelende code? De webserver gaat dat echt wel netjes uitvoeren, alvorens de uitvoer van het script (met wat voor mooie content-type headers dan ook), naar de browser te sturen.
08-09-2008, 12:21 door [Account Verwijderd]
[Verwijderd]
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.