Basis van informatiebeveiliging
Een webapplicatie voor een prikbord had een kwetsbaarheid waarbij scripts in teksten die gebruikers plaatsten, werden uitgevoerd in de browsers van andere bezoekers. Welke combinatie geeft de naam van deze kwetsbaarheid en de fundamentele tegenmaatregel juist weer?
- ASQL-injectie. Het wachtwoord voor de verbinding met de database langer maken
- BCross-site scripting (XSS). Tekens met een speciale betekenis, zoals < en >, escapen bij het uitvoeren van geplaatste tekst als HTML
- CCross-site scripting (XSS). De communicatie tussen server en browser met HTTPS versleutelen
Antwoord en toelichting tonen
Antwoord: B. Cross-site scripting (XSS). Tekens met een speciale betekenis, zoals < en >, escapen bij het uitvoeren van geplaatste tekst als HTML
Cross-site scripting (XSS) is een kwetsbaarheid waarbij een webapplicatie de invoer van gebruikers ongewijzigd in HTML uitvoert, zodat een script in de invoer als deel van de pagina in de browsers van bezoekers wordt uitgevoerd. Omdat het script draait als pagina van die site, kan het de sessie-informatie van de bezoeker (cookies) stelen of nepinvoervelden tonen. De fundamentele tegenmaatregel is tekens met een speciale betekenis, zoals <, >, & en aanhalingstekens, te escapen afhankelijk van de plek waar ze worden uitgevoerd (bijvoorbeeld < omzetten in <), zodat ze als gewone tekens worden weergegeven. Aanvullende maatregelen zijn onder meer cookies het attribuut HttpOnly geven, zodat scripts ze niet kunnen lezen, en met een Content Security Policy beperken welke scripts mogen draaien. HTTPS beschermt het communicatiekanaal en kan niet voorkomen dat een script dat in een legitieme pagina is ingebed wordt uitgevoerd.