Webapplicaties die klanten offline door laten werken, zijn onvoldoende beveiligd tegen database-aanvallen via SQL-injecties op de computer van de klant. Dit probleem kan bijvoorbeeld opduiken zodra iPhones en Android-toestellen hun gebruikers offline toegang bieden tot Gmail.
Webapplicaties die gegevens lokaal opslaan om de klant de gelegenheid geven ook offline door te kunnen werken, brengen onvermoede beveiligingsrisico's met zich mee. Dat demonstreerde 'beveiligingsevangelist' Michael Sutton vorige week op beveiligingsconferentie Black Hat in Washington.
Sutton liet zien hoe aanvallers toegang kunnen krijgen tot lokaal opgeslagen betaalgegevens van gebruikers van Paymo.biz. Het beveiligingslek binnen deze online betaalmethode is inmiddels gerepareerd, maar volgens Sutton ligt een soortgelijk gevaar op de loer bij een groeiend aantal sites.
SQL-injectie
Het probleem wordt veroorzaakt doordat een toenemend aantal webapplicaties klanten toestaat om lokaal gegevens op te slaan, zodat ze offline door kunnen blijven werken.
Voorbeelden van browseropslagtechnieken die dit gevaar met zich meebrengen zijn (Google) Gears, en de databaseopslagfunctionaliteit in een toekomstige versie van het html-protocol (HTML5). Zowel Gears als HTML5-databaseopslag staan webapplicaties toe om inhoud lokaal op te slaan in relationele databanken, door gebruik te maken van het SQLite databaseformaat.
Sutton schrijft hierover op een weblog: "Dat biedt krachtige functionaliteit doordat webapplicaties nu offline kunnen worden gebruikt, zoals dat onlangs bij Gmail is gebeurd. Tegelijkertijd biedt het mogelijkheden voor nieuwe aanvallen omdat opgeslagen gegevens nu kunnen worden benaderd op de desktop en niet alleen op de server. Omdat we van doen hebben met een relationele databank, kun je je afvragen: is SQL-injectie mogelijk aan de kant van de klant? Helaas is het antwoord op die vraag ‘ja'."
iPhone en Android
Volgens Sutton zijn dit soort aanvallen niet puur theoretisch. "Het is relatief eenvoudig te doen, door het algemeen voorkomen van XSS (cross-site scripting)-kwetsbaarheden." Volgens Sutton wordt de kans op problemen bovendien alleen maar groter, want er komen steeds meer webapplicaties op basis van Gears. Gebruik van HTML5-databankopslag zal ook niet lang meer op zich laten wachten. Zo gaan de iPhone en Android-gebaseerde toestellen offline toegang tot Gmail bieden via het gebruik van de nieuwe versie van dit internetprotocol.
Michael Sutton
Michael Sutton is VP beveiligingsonderzoek bij Scaler, een bedrijf dat is gespecialiseerd in de beveiliging van Software as a Service (SaaS) en cloudgebaseerde toepassingen. Daarvoor was Sutton 'beveiligingsevangelist' bij SPI Dynamics, een leverancier van software waarmee de beveiliging van webapplicaties getest kan worden. SPI Dynamics werd in juni 2007 overgenomen door HP.
Dus als ik het goed begrijp is het offline werken de oorzaak van een probleem in de webinterface van een applicatie… Ja, ja. Dus het wandelend publiek op straat is er de oorzaak van dat bij een bepaald huis aan die straat de deur niet op slot gedaan kan worden?
Het lijkt me eerder dat het fout ontwerpen en uitvoeren van een webinterface de fout is, niet het offline werken. SQL injecties zijn goed te voorkomen door goed doordachte applicaties.
@CPT. Pcies..
Het is beter om eerste in eigen boezem steken, dan de beschuldigende vinger naar een ander te laten wijzen 🙂
“Webapplicaties die gegevens lokaal opslaan om de klant de gelegenheid geven ook offline door te kunnen werken, brengen overmoedde beveiligingsrisico’s met zich mee.”
Dit is typisch een voorbeeld van “wrong by design, rotten from the drawing board”. Het achteraf proberen recht te praten, wat een ontwerpen heeft laten liggen wegens gebrek aan diepgaande kennis. Een beetje SQL- Querie filterende tussenlaag – middel tier voorkomt zo’n bla bla bla security blunder 🙂