Allerlei securityrisico’s kunnen de veiligheid van applicaties in gevaar brengen. Maar welke risico’s leveren in de praktijk het grootste gevaar op en moeten dan ook als eerste worden aangepakt? De OWASP top 10 geeft je hierin inzicht.
OWASP staat voor Open Web Application Security Project, een open source-project op het gebied van computerveiligheid. De OWASP top 10 is een ranglijst met de tien meest kritieke securityrisico’s voor webapplicaties. Je kunt de lijst gebruiken voor het naar een hoger niveau tillen van de veiligheid van jouw applicaties. De OWASP Foundation noemt de ranglijst ‘de meest effectieve eerste stap richting het wijzigen van de softwareontwikkelcultuur binnen jouw organisatie in een cultuur die veiligere code produceert’.
Inzicht in actuele securityrisico’s
De OWASP top 10 beschrijft actuele securityrisico’s voor online applicaties. De lijst wordt daarom periodiek geüpdatet. Na de editie van 2017 stelt de OWASP Foundation nu een vernieuwde editie beschikbaar.
De 2021-editie van de top 10 wijkt op verschillende punten af van de 2017-editie. We zetten de tien categorieën op een rijtje en kijken naar de verschillen:
A01:2021-Broken Access Control: Uit testen blijkt dat 94% van de applicaties problemen met toegangscontrole omvatten. De 34 Common Weakness Enumerations (CWE’s) die in verband zijn gebracht met deze problemen komen vaker dan iedere andere categorie voor in applicaties. Deze categorie verhuist daarom van de vijfde positie naar de eerste positie in de 2021-editie van de OWASP top 10.
A02:2021-Cryptographic Failures: Deze categorie was voorheen in de top 10 opgenomen als ‘Sensitive Data Exposure’. Deze naam omschreef volgens de OWASP Foundation echter vooral een symptoom in plaats van root-cause. De naam is daarom in de 2021-editie gewijzigd. De categorie stijgt één positie ten opzichte van de voorgaande top 10. De focus ligt voornamelijk op problemen gerelateerd aan cryptografie, wat kan leiden tot het uitlekken van gevoelige data of gecompromitteerde systemen.
A03:2021-Injection: Deze categorie stond in 2017 nog op de eerste plaats en daalt nu naar de derde plaats op de OWASP Top 10. 94% van de geteste applicaties blijkt kwetsbaar voor een vorm van injectie. De 33 CWE’s gerelateerd aan deze categorie zijn de op-één-na meest voorkomende in applicaties. Ook cross-site scripting maakt in de 2021-editie onderdeel uit van deze categorie.
A04:2021-Insecure Design: Een nieuwkomer in de OWASP top 10 is ‘Insecure Design’. De categorie omschrijft risico’s gerelateerd aan ontwerpfouten. Om vooruit te gaan moeten ontwikkelaars volgens de OWASP Foundation meer gebruik maken van onder meer threat modeling, veilige ontwerppatronen en -principes evenals referentiearchitecturen.
A05:2021-Security Misconfiguration: 90% van de applicaties bevat een vorm van misconfiguraties, blijkt uit testen. Gezien de groeiende omarming van zeer configurabele software noemt OWASP Foundation het geen verrassing dat deze categorie in de nieuwe versie van de ranglijst met één positie stijgt naar de vijfde plek. De categorie XML External Entities (XXE) uit de 2017-editie maakt nu onderdeel uit van deze categorie.
A06:2021-Vulnerable and Outdated Components: Deze categorie draagt dit jaar een nieuwe naam en heette voorheen ‘Using Components with Known Vulnerabilities’. De categorie stijgt drie plaatsen naar de zesde positie. De OWASP Foundation spreekt van een ‘bekend probleem’ waarop moeilijk getest kan worden en lastig risicobeoordelingen kunnen worden gemaakt.
A07:2021-Identification and Authentication Failures: Deze categorie heette voorheen ‘Broken Authentication’ en daalt één positie in de OWASP top 10. De categorie omvat nu ook CWE’s die meer gerelateerd zijn aan identificatieproblemen. Onder meer de toegenomen beschikbaarheid van gestandaardiseerde raamwerken draagt bij aan het terugdringen van dit risico. De OWASP Foundation benadrukt echter dat de categorie desondanks nog steeds een ‘integraal onderdeel uitmaakt van de top 10’.
A08:2021-Software and Data Integrity Failures: Deze nieuwe categorie in de 2021-editie van de ranglijst is gericht op software-updates, kritieke data en CI/CD-pijplijnen waarvan de integriteit niet wordt geverifieerd. De categorie ‘Insecure Deserialization’ uit de 2017-editie maakt nu eveneens onderdeel uit van deze categorie.
A09:2021-Security Logging and Monitoring Failures: Deze categorie heette voorheen ‘Insufficient Logging & Monitoring’. De categorie stond in de vorige editie nog op de tiende positie en stijgt een plek. Ook is de categorie uitgebreid en omvat nu meer logging- en monitoringproblemen. De OWASP Foundation benadrukt dat het testen op deze problemen vaak lastig is en niet goed wordt weergegeven in CVE/CVSS-data. De problemen kunnen echter een directe impact hebben op inzicht, het identificeren van incidenten en digitaal forensisch onderzoek na incidenten.
A10:2021-Server-Side Request Forgery: Deze categorie is toegevoegd aan de top 10 op basis van onderzoek uitgevoerd onder de security-community. De OWASP Foundation wijst erop dat uit gegevens blijkt dat Server-Side Request Forgery relatief weinig voorkomt en hierop daarnaast bovengemiddeld vaak wordt getest. De categorie is echter toch toegevoegd aan de OWASP top 10 aangezien de security-community het belang hiervan onderstreept. De OWASP Foundation wijst er echter op dat dit belang momenteel in data niet zichtbaar is.
Veelvoorkomende risico’s tegengaan met OWASP top 10
De OWASP top 10 helpt ontwikkelaars bij het tegengaan van veelvoorkomende beveiligingsrisico’s. Denk hierbij aan onveilige ontwerpkeuzes en misconfiguraties. Maar ook aan problemen met het verifiëren van de integriteit van data en software evenals monitoringsproblemen.
Belangrijk om op te merken is dat hoewel de ranglijst inzicht geeft in de meest voorkomende beveiligingsrisico’s, de lijst niet allesomvattend is. Ook andere vergelijkbare ranglijsten zijn beschikbaar. Denk hierbij aan de CWE/SANS TOP 25 Most Dangerous Software Errors. Het combineren van verschillende ranglijsten kan helpen bij het minimaliseren van securityrisico’s.