De FBI heeft softwareontwikkelaars opgeroepen om een einde aan SQL Injection te maken, een klasse van beveiligingslekken die al sinds 1998 bestaat, maar nog altijd voorkomt. "Ondanks wijdverbreide kennis en documentatie van SQL Injection-kwetsbaarheden, alsmede beschikbaarheid van effectieve oplossingen, blijven softwareontwikkelaars producten met deze kwetsbaarheid ontwikkelen, wat veel klanten risico laat lopen", aldus de FBI en het Cybersecurity and Infrastructure Security Agency (CISA) van het Amerikaanse ministerie van Homeland Security (pdf).
Bij SQL Injection kan een aanvaller SQL-opdrachten op een systeem uitvoeren. Zie dit Security.NL achtergrondartikel voor meer details. In 2007 werd SQL Injection nog als een 'onvergeeflijke' kwetsbaarheid bestempeld. Zeventien jaar later is het probleem nog altijd op grote schaal aanwezig. De MITRE Corporation, de organisatie achter het Common Vulnerabilities and Exposures (CVE) systeem om kwetsbaarheden mee te identificeren, stelde vorig jaar nog dat SQL Injection in de Top 3 van meestvoorkomende beveiligingslekken staat.
Vandaag roepen de FBI en het CISA softwareleveranciers en fabrikanten op om hun code op de aanwezigheid van SQL Injection te controleren. Daarnaast moeten alle klanten hun leveranciers vragen of ze een dergelijke controle hebben uitgevoerd. Mocht uit deze controle blijken dat de code kwetsbaar is voor SQL Injection, moeten ontwikkelaars meteen beginnen met het implementeren van oplossingen, aldus de oproep van de Amerikaanse overheidsdiensten. "Het toepassen van security in producten vanaf het begin kan SQL Injection voorkomen."
Volgens de FBI en het CISA is SQL Injection nog steeds succesvol omdat softwareontwikkelaars gebruikersinvoer niet als mogelijk kwaadaardig beschouwen. Als oplossing wordt het gebruik van parameterized queries met prepared statements aangeraden, om zo SQL-code van gebruikersinvoer te scheiden. "Deze scheiding zorgt ervoor dat het systeem gebruikersinvoer als data behandelt en niet als uitvoerbare code, waardoor het risico wordt geëlimineerd dat malafide gebruikersinvoer als SQL-statement wordt gezien."
Daarbij zien de overheidsdiensten een belangrijke rol weggelegd voor bestuurders en topmanagers om kwetsbaarheden zoals SQL Injection te voorkomen. Zo moet er in de organisatie prioriteit worden gegeven aan proactieve maatregelen, zoals het toepassen van veilig programmeren, waaronder het gebruik van parametrized queries, en het afhankelijk zijn van reactieve maatregelen te verminderen. Daarnaast moet topmanagement ervoor zorgen dat hun organisatie audits uitvoert om kwetsbaarheden zoals SQL Injection te detecteren.
Je bent niet ingelogd en reageert "Anoniem". Dit betekent dat Security.NL geen accountgegevens (e-mailadres en alias) opslaat voor deze reactie. Je reactie wordt niet direct geplaatst maar eerst gemodereerd. Als je nog geen account hebt kun je hier direct een account aanmaken. Wanneer je Anoniem reageert moet je altijd een captchacode opgeven.