Systemen zijn tegenwoordig complex en kunnen veel wat je expliciet dicht moet zetten. Je werkt met vele lagen die allemaal hun eigen beveiligingsrisico's hebben en een aantal daarvan staat ook nog eens open voor de hele buitenwereld. Met name dat laatste is eigenlijk het grootste probleem. 90% van de vacatures is tegenwoordig mobile/web en dan heb je hier dus mee te maken.Bart2005 schreef op zaterdag 12 mei 2018 @ 21:07:
[...]
Ja, maar wat "bewijst" dat dan? Als het al zo is is er toch iets grondig mis in het hele concept. Ik krijg de indruk dat men zijn geringe capaciteiten en kennis op de 1 of andere manier probeert goed te praten. Gebrekkige code zou een systeem nooit inherent onveilig mogen maken. Wellicht duigen de systemen (ook) al niet dan.
Als je niet op de hoogte bent van welke functionaliteit in elke laag mogelijk misbruikt kan worden ben je 'niet veilig' bezig. Zeker met scripttalen (PHP e.d.) die zomaar code uit kunnen voeren op de server, op initiatief van een client-PC ergens anders op internet, komen opeens heel veel mogelijke risico's naar boven.
Veel risico's worden in moderne frameworks automatisch al voorkomen, denk aan het niet zomaar kunnen versturen van html of javascript code naar een server en het automatisch omzetten van database queries naar parameterized queries/prepared statements. Je moet dan echter nog steeds weten waar je mee bezig bent, anders is de kans groot dat je het fout doet en alsnog mogelijke lekken laat ontstaan.
De 'poortwachter' voor SQL injectie waar je eerder op doelt kan in zo'n framework zitten. Op diepere lagen is het helaas niet te doen, waardoor de developer zich hier toch mee bezig moet houden. Je zou bijvoorbeeld eens naar de OWASP top 10 (pagina 6 / 7) kunnen kijken voor een idee van wat er speelt.
Het beroep van 'codeklopper' bestaat trouwens volgens mij allang niet meer. Programmeurs die nooit stukken software moeten ontwerpen kom ik in elk geval nergens meer tegen. En ja, daar ontstaat qua ontwerp inderdaad best vaak prutswerk uit.
Niets...