Wat is SQL-injectie?

Een van de grootste soorten webkwetsbaarheden staat bekend als "SQL-injectie" of SQLi. Structured Query Language, ook wel SQL genoemd, is de taal die wordt gebruikt voor interactie met de meeste databases, hoewel er een aantal varianten van de taal worden gebruikt, afhankelijk van het databaseplatform. Elke website die gebruikersgegevens opslaat, zoals accountinformatie, of die gebruikers uploadfunctionaliteit biedt, zoals een website voor het hosten van afbeeldingen, gebruikt een database om die gegevens op te slaan.

Tip: SQL wordt over het algemeen uitgesproken als "ess cue ell" of "sequel", waarbij de eerste optie vaker voorkomt in het Brits-Engels en de tweede meer voorkomt in het Amerikaans-Engels. Beide uitspraken worden over het algemeen begrepen in de context van praten over databases.

Wat is SQLi?

SQLi is een kwetsbaarheid waarbij de webontwikkelaars die de code ontwerpen die tussen de webserver en de database communiceert, geen beveiliging implementeren tegen SQL-opdrachten die door een gebruiker worden verzonden. Het probleem is dat het mogelijk is om uit database-statements te ontsnappen en nieuwe argumenten of een geheel nieuw statement toe te voegen. De gewijzigde of tweede database-instructie kan een reeks acties uitvoeren, waaronder mogelijk grootschalige verwijderingen of gegevenslekken.

Exploits draaien meestal om het maken van bestaande uitspraken in alle omstandigheden of het leveren van een tweede batch-opdracht die een specifieke actie uitvoert, zoals het verwijderen of weergeven van alle gegevens. Een SQL-instructie om in te loggen op een website kan bijvoorbeeld controleren of de ingediende gebruikersnaam en het wachtwoord overeenkomen met een invoer in de database. Om te proberen toegang te krijgen, kan een SQL-injectie-exploit proberen een "or true" -clausule toe te voegen, zoals "or 1=1". Dit zou de opdracht maken in de trant van "login met [deze] gebruikersnaam, als het wachtwoord [dit] is, of deze verklaring waar is".

Hoe SQLi . te voorkomen

SQLi was vroeger een veel voorkomende manier voor websites om hun database te laten lekken en vervolgens online te laten lekken. Dankzij een gezamenlijke inspanning om ervoor te zorgen dat beveiligingsbewustzijn deel uitmaakt van de training van ontwikkelaars, is deze klasse van kwetsbaarheden grotendeels opgelost en wordt ze nog maar zelden gezien.

De juiste methode om SQLi te voorkomen, is het gebruik van voorbereide instructies, ook wel geparametriseerde query's genoemd. Traditioneel worden SQL-instructies gedeclareerd en wordt de invoer van de gebruiker daarin samengevoegd tijdens die declaratie. Met voorbereide instructies wordt de databaseopdracht uitgeschreven en vervolgens voert een afzonderlijke functie de opdracht uit en voegt gebruikersgegevens in. Hoewel dit misschien een klein verschil lijkt, verandert het de manier waarop met de opdracht wordt omgegaan volledig. Het verschil voorkomt dat zinvolle SQL-opdrachten worden uitgevoerd en behandelt alle gebruikersinvoer als een tekenreeks, waardoor SQL-injectie wordt voorkomen.



Leave a Comment

Hoe u Google Chrome kunt dwingen altijd volledige URLs weer te geven

Hoe u Google Chrome kunt dwingen altijd volledige URLs weer te geven

Chrome toont standaard niet de volledige URL. Dit detail interesseert u misschien niet zoveel, maar als u om wat voor reden dan ook de volledige URL wilt weergeven, vindt u gedetailleerde instructies over hoe u Google Chrome de volledige URL in de adresbalk kunt laten weergeven.

Hoe je oude Reddit terugkrijgt

Hoe je oude Reddit terugkrijgt

Reddit veranderde hun ontwerp opnieuw in januari 2024. Het herontwerp is zichtbaar voor desktopbrowsergebruikers en vernauwt de hoofdfeed en biedt links

Hoe inhoud uit leerboeken te kopiëren met Google Lens

Hoe inhoud uit leerboeken te kopiëren met Google Lens

Het typen van je favoriete citaat uit je boek op Facebook kost tijd en zit vol met fouten. Ontdek hoe u Google Lens gebruikt om tekst uit boeken naar uw apparaten te kopiëren.

Fix Server DNS-adres kon niet worden gevonden in Chrome

Fix Server DNS-adres kon niet worden gevonden in Chrome

Soms, wanneer u in Chrome werkt, heeft u geen toegang tot bepaalde websites en krijgt u de foutmelding 'Fix Server DNS-adres kan niet worden gevonden in Chrome'. Hier ziet u hoe u het probleem kunt oplossen.

Beknopte handleiding voor het maken van herinneringen op Google Home

Beknopte handleiding voor het maken van herinneringen op Google Home

Herinneringen zijn altijd het belangrijkste hoogtepunt van Google Home geweest. Ze maken ons leven zeker gemakkelijker. Laten we een korte rondleiding geven over hoe u herinneringen kunt maken op Google Home, zodat u nooit belangrijke boodschappen hoeft te doen.

Netflix: wachtwoord wijzigen

Netflix: wachtwoord wijzigen

Hoe u uw wachtwoord op de Netflix-streamingvideoservice kunt wijzigen met uw favoriete browser of Android-app.

Hoe u de prompt voor het herstellen van paginas in Microsoft Edge kunt uitschakelen

Hoe u de prompt voor het herstellen van paginas in Microsoft Edge kunt uitschakelen

Als u het bericht Pagina's herstellen op Microsoft Edge wilt verwijderen, sluit u gewoon de browser of drukt u op de Escape-toets.

Bitwarden: hoe u uw hoofdwachtwoord kunt wijzigen Tip

Bitwarden: hoe u uw hoofdwachtwoord kunt wijzigen Tip

Als uw Bitwarden-wachtwoordhint verbeterd kan worden, zijn dit de stappen om deze in minder dan een minuut te wijzigen.

Afbeeldingen worden niet weergegeven in Google Doc: waarom en hoe dit op te lossen

Afbeeldingen worden niet weergegeven in Google Doc: waarom en hoe dit op te lossen

Als uw afbeeldingen niet in een Google-document worden weergegeven, kan het probleem verschillende redenen hebben. Hier zijn enkele mogelijke oplossingen

Rijen en kolommen verbergen en zichtbaar maken in Google Spreadsheets

Rijen en kolommen verbergen en zichtbaar maken in Google Spreadsheets

Beheers de toepassing Google Spreadsheets door te leren hoe u kolommen kunt verbergen en zichtbaar maken. U kunt dit doen op zowel computers als mobiele apparaten.