2008 Jaar van de SQL-injecties
De SQL-injecties stegen met 134 procent ten opzichte van vorig jaar en de kwetsbaarheid drong daarmee cross-site scripting (XSS) aanvallen terug naar de tweede plek. "SQL-injecties zijn groot geworden in 2008", zegt onderzoeker Tom Cross van ISS, de beveiligingstak van IBM, tegen Networkworld. Meer dan vijftig procent van de kwetsbaarheden die werden opgemerkt hadden betrekking op webapplicaties.
De aanvallen op websites die kwetsbaar zijn voor SQL-injecties stegen van een paar duizend begin 2008 tot enkele honderdduizenden aan het eind van het jaar. Er werden zelfs wereldwijde aanvallen geregistreerd die bij sommige bedrijven hele systemen ontregelden. Vooral bedrijven die verzuimden hun software te patchen kwamen in grote problemen, concludeert IBM. Ook het ontbreken of niet up-to-date houden van bijvoorbeeld firewall-verdediging maakt de bedrijven kwetsbaar.
Bron: webwereld.nl
Zie ook het volledige rapport (PDF,
Gewijzigd op 01/01/1970 01:00:00 door PHP Newbie
Ik neem aan dat je 3.5MB bedoelt?
Gelukkig gaat dit niet voor iedereen op, maar blijkbaar wel veel te veel.
Zo jammer, SQL injection is heel simpel te voorkomen, zowel aan de applicatiekant als aan de databasekant. De applicatie moet het tegengaan, denk aan mysql_real_escape_string() of pg_query_params(), maar de database kan SQL injection technisch onmogelijk maken. Alleen heb je dan wel iemand met kennis van zaken nodig en geen prutsertje die nauwelijk "PHP" voutlooz weet te spellen...
door een mysql_real_escape_string is dit toch gemakkelijk te voorkomen? Of moet je nog meer doen?
Maar hoe kun je het aan de databasekant voorkomen? Want dat wil ik wel eens weten. Natuurlijk weet ik hoe het moet in PHP, maar lijkt me interessant om te weten.
Ja, het kwam voor mij ook als een totale verrassing, aangezien SQL injectie preventie er echt ingeramt wordt bij het opleiden van een (PHP) programmeur.
Misschien heeft het ook enigszins te maken met het feit dat van al die mensen die het erin geramt krijgen, een gedeelte denkt: "Dat kan ik ook proberen."
Tommy schreef op 14.02.2009 16:02:
Door alle overbodige en ongewenste rechten in te trekken.Lol @ Frank!
Maar hoe kun je het aan de databasekant voorkomen?
Maar hoe kun je het aan de databasekant voorkomen?
Of eigenlijk, alleen die rechten toe te kennen die een gebruiker nodig heeft. Vervolgens laat je alle data ophalen en verwerken via views en stored procedures en klaar is klara. Het is dan technisch onmogelijk om data op te halen die je niet mag ophalen of data in te voeren/bij te werken/te verwijderen die je niet mag ophalen/wijzigen/verwijderen.
Met deze opzet moet je wel per (groep) gebruiker (-s) een database gebruiker aanmaken, maar dat is standaard functionaliteit van een database.
Wanneer je dit soort maatregelen niet neemt, neem je bewust het risico op SQL injection. Die risico's kun je verkleinen door een veilige applicatie te bouwen, maar dat gaat blijkbaar nogal eens fout. Ook vrij logisch, programmeurs lopen geen enkel risico waardoor veiligheid bij vele van hen geen enkele prioriteit heeft.
Tip: Ga beter testen en ga je applicatie/database hacken.
Gewijzigd op 01/01/1970 01:00:00 door Frank -