OWASP Top 10 2025 — Complete Guide for SMEs
The ten most critical web application security risks explained in plain language, with actionable remediation steps for small and medium businesses. No enterprise budget required.
Wat is de OWASP Top 10?
Het Open Worldwide Application Security Project (OWASP) is een non-profit stichting gewijd aan het verbeteren van softwarebeveiliging. Hun vlaggenschippublicatie, de OWASP Top 10, catalogiseert de tien meest kritieke beveiligingsrisico's voor webapplicaties. Eerste publicatie in 2003, het is de de facto standaard geworden voor bewustzijn rond webapplicatiebeveiliging.
De editie 2025 is gebaseerd op gegevens van meer dan 500.000 applicaties en bijdragen van honderden beveiligingsexperts. Voor MKB's zijn deze risico's niet theoretisch — ze vertegenwoordigen de exacte aanvalsvectoren die worden gebruikt bij de meerderheid van daadwerkelijke inbreuken. Volgens Verizons 2024 Data Breach Investigations Report betrof 83 % van de inbreuken externe actoren die kwetsbaarheden in webapplicaties exploiteerden die direct te mappen zijn naar de OWASP Top 10.
A01: Gebroken toegangscontrole
Wat is het: Toegangscontrole handhaaft beleid zodat gebruikers niet buiten hun beoogde machtigingen kunnen handelen. Wanneer deze controles falen, kunnen aanvallers gegevens van andere gebruikers inzien, records wijzigen of privileges verhogen tot beheerdersniveau.
Impact in de praktijk:In 2023 heeft een grote Australische telecomoperator 10 miljoen klantgegevens blootgesteld door een defect API-eindpunt dat de identiteit van de aanvrager niet verifieerde. De aanvaller itereerde simpelweg door klant-ID's in de URL. De gemiddelde kosten van een inbreuk door gebroken toegangscontrole bedragen $ 4,35 miljoen (IBM Cost of a Data Breach Report 2024).
Hoe te controleren:Test of geäuthenticeerde gebruikers toegang kunnen krijgen tot bronnen van andere gebruikers door URL-parameters, API-verzoekinhoud of cookies te wijzigen. Verifieer dat beheerfuncties ontoegankelijk zijn voor reguliere gebruikers.
Hoe te verhelpen:Implementeer serversijde toegangscontrolechecks bij elk verzoek. Gebruik standaard weigeringsbeleid. Handhaaf record-eigenaarschap op databasequeryniveau (bijv. altijd filteren op geäuthenticeerde gebruikers-ID). Schakel directorylijsten uit en zorg dat metadatabestanden (.git, .env) niet toegankelijk zijn.
A02: Cryptografische fouten
Wat is het:Voorheen "Blootstelling van gevoelige gegevens" genoemd, dekt deze categorie fouten in cryptografie die leiden tot blootstelling van gevoelige gegevens. Dit omvat het verzenden van gegevens in platte tekst, het gebruik van verouderde algoritmen (MD5, SHA1 voor wachtwoorden), zwakke sleutelgeneratie en onjuiste certificaatvalidatie.
Impact in de praktijk: De MOVEit-inbreuk in 2024 trof meer dan 2.600 organisaties vanwege onvoldoende versleuteling van data at rest. Gezondheidszorgorganisaties zijn bijzonder kwetsbaar: HIPAA-overtredingen door cryptografische fouten hebben geleid tot boetes van meer dan $ 10 miljoen.
Hoe te controleren: Verifieer dat alle gegevens in transit TLS 1.2 of hoger gebruiken. Controleer dat wachtwoorden gehasht zijn met bcrypt, scrypt of Argon2. Zorg dat geen gevoelige gegevens in platte tekst zijn opgeslagen in databases of logs. Scan op verlopen of zelfondertekende certificaten.
Hoe te verhelpen: Verplicht overal HTTPS met HSTS-headers (inclusief subdomeinen). Gebruik moderne hashing-algoritmen voor wachtwoorden. Versleutel gevoelige data at rest met AES-256. Roteer versleutelingssleutels periodiek. Log nooit gevoelige gegevens zoals wachtwoorden, tokens of creditcardnummers.
A03: Injectie
Wat is het: Injectiefouten treden op wanneer onbetrouwbare gegevens naar een interpreter worden gestuurd als onderdeel van een commando of query. SQL-injectie, NoSQL-injectie, OS-commando-injectie en LDAP-injectie zijn de meest voorkomende varianten. Cross-site scripting (XSS) wordt in de editie 2025 ook hier geclassificeerd.
Impact in de praktijk: SQL-injectie blijft de meest uitgebuite kwetsbaarheidsklasse. De Fortra GoAnywhere-inbreuk in 2024 gebruikte een deserialisatie-injectie om meer dan 130 organisaties te compromitteren. XSS-aanvallen waren goed voor 27 % van alle gerapporteerde webapplicatiekwetsbaarheden in 2024 (HackerOne Annual Report).
Hoe te controleren: Test alle gebruikersinvoer (formulieren, URL-parameters, headers, cookies) met injectie-payloads. Gebruik geautomatiseerde scanners om gereflecteerde en opgeslagen XSS te detecteren. Verifieer dat API-eindpunten onverwachte gegevenstypen afwijzen.
Hoe te verhelpen:Gebruik uitsluitend geparametriseerde queries of prepared statements — voeg nooit gebruikersinvoer samen in queries. Valideer en saneer alle invoer serverzijde met strikte schema's (Zod, Joi). Implementeer Content Security Policy (CSP)-headers om XSS te beperken. Gebruik ORM's met ingebouwde parametrisering (Prisma, Drizzle).
A04: Onveilig ontwerp
Wat is het:Een nieuwe categorie geïntroduceerd in 2021. Onveilig ontwerp verwijst naar gebreken in de architectuur en het ontwerp van een applicatie die niet kunnen worden opgelost door alleen implementatie. Dit omvat ontbrekende dreigingsmodellering, onveilige bedrijfslogica en gebrek aan defense-in-depth.
Impact in de praktijk:Een Europese fintech verloor 2,3 miljoen euro toen aanvallers een bedrijfslogicafout in hun betalingsstroom exploiteerden — de applicatie stond negatieve transactiebedragen toe, waardoor aanvallers effectief geld naar zichzelf konden overboeken. Geen enkele invoervalidatie had dit gedetecteerd zonder adequate dreigingsmodellering.
Hoe te controleren:Beoordeel de applicatiearchitectuur op defense-in-depth. Verifieer dat beveiligingsvereisten vóór de ontwikkeling zijn gedefinieerd. Controleer op snelheidsbeperking bij kritieke functies (inloggen, wachtwoordherstel, betaling). Beoordeel of dreigingsmodellering is uitgevoerd.
Hoe te verhelpen:Integreer beveiliging vanaf de ontwerpfase. Voer dreigingsmodellering uit met STRIDE- of PASTA-methodologieën. Definieer misbruikgevallen naast gebruiksgevallen. Implementeer snelheidsbeperking, circuit breakers en transactielimieten. Scheid tenants en vertrouwensniveaus op architecturaal niveau.
A05: Beveiligingsmisconfiguratie
Wat is het: Het meest voorkomende probleem in de praktijk. Dit omvat standaardwachtwoorden, open cloudopslag, onnodige functies die zijn ingeschakeld, onvolledige configuraties, te ruime CORS-instellingen, ontbrekende beveiligingsheaders en uitgebreide foutmeldingen die stack traces blootstellen.
Impact in de praktijk:In 2024 werden duizenden organisaties gecompromitteerd via verkeerd geconfigureerde S3-buckets, blootgestelde Docker-API's en standaard Kubernetes-dashboardwachtwoorden. Het beveiligingsrapport 2024 van Microsoft constateerde dat 80 % van de cloud-inbreuken voortkwam uit misconfiguraties, niet uit zero-day-exploits.
Hoe te controleren:Scan op ontbrekende beveiligingsheaders (X-Frame-Options, X-Content-Type-Options, Strict-Transport-Security, Content-Security-Policy, Permissions-Policy). Test op standaardwachtwoorden. Verifieer dat foutpagina's geen stack traces of interne paden lekken. Controleer dat onnodige HTTP-methoden (TRACE, OPTIONS) zijn uitgeschakeld.
Hoe te verhelpen: Implementeer een hardeningchecklist voor elke deployment. Stel uitgebreide beveiligingsheaders in. Schakel directorylijsten, standaardaccounts en debugmodi in productie uit. Gebruik infrastructure-as-code om consistente configuraties af te dwingen. Automatiseer configuratie-audits met tools zoals WarDek.
A06: Kwetsbare en verouderde componenten
Wat is het:Applicaties die bibliotheken, frameworks of andere softwaremodules met bekende kwetsbaarheden gebruiken. Dit omvat niet-gepatchte besturingssystemen, webservers, databasemanagementsystemen, API's en alle componenten inclusief bibliotheken, frameworks en andere softwaremodules.
Impact in de praktijk:De Log4Shell-kwetsbaarheid (CVE-2021-44228) in Apache Log4j trof wereldwijd miljoenen applicaties. In 2024 toonden kritieke kwetsbaarheden in XZ Utils (CVE-2024-3094) aan hoe supply-chain-aanvallen via open-source-afhankelijkheden hele ecosystemen kunnen compromitteren. Synopsys rapporteerde dat 84 % van de codebases minstens één bekende kwetsbaarheid bevat in open-source-componenten.
Hoe te controleren:Onderhoud een softwarecomponenteninventaris (SBOM). Voer regelmatig afhankelijkheidsaudits uit (npm audit, pip-audit, Trivy). Monitor kwetsbaarheidsdatabases (NVD, GitHub Advisory Database) voor gebruikte componenten. Verifieer dat geen end-of-life-componenten zijn geïmplementeerd.
Hoe te verhelpen: Automatiseer afhankelijkheidsupdates met tools zoals Dependabot of Renovate. Verwijder ongebruikte afhankelijkheden. Abonneer op beveiligingsadviezen voor kritieke componenten. Pin exacte afhankelijkheidsversies in productie. Test updates in staging voor deployment.
A07: Identificatie- en authenticatiefouten
Wat is het: Zwakheden in authenticatiemechanismen die aanvallers in staat stellen wachtwoorden, sessietokens te compromitteren of implementatiefouten uit te buiten om de identiteit van andere gebruikers aan te nemen. Dit omvat credential stuffing, brute force-aanvallen, zwak wachtwoordbeleid en ondeugdelijk sessiebeheer.
Impact in de praktijk: Credential stuffing-aanvallen kosten bedrijven naar schatting $ 6 miljard per jaar (Akamai 2024 State of the Internet Report). De 23andMe-inbreuk in 2023 compromitteerde 6,9 miljoen gebruikersprofielen via credential stuffing met inloggegevens gelekt uit andere inbreuken.
Hoe te controleren: Test op zwak wachtwoordbeleid (minimale lengte, complexiteit). Verifieer accountvergrendeling na mislukte pogingen. Controleer dat sessietokens ongeldig worden gemaakt bij uitloggen. Test op sessiefixatie en onveilige sessieopslag. Verifieer dat multifactorauthenticatie beschikbaar is.
Hoe te verhelpen: Implementeer multifactorauthenticatie (MFA). Gebruik beproefde authenticatiebibliotheken (Better Auth, NextAuth, Auth0). Handhaaf sterk wachtwoordbeleid (minimaal 12 tekens). Beperk de snelheid van inlogpogingen. Maak sessies ongeldig bij wachtwoordwijziging. Sla sessietokens op in HttpOnly en Secure cookies.
A08: Software- en gegevensintegriteitsfouten
Wat is het: Code en infrastructuur die niet beschermen tegen integriteitsschendingen. Dit omvat het gebruik van software-updates zonder verificatie, onveilige CI/CD-pipelines en deserialisatie van onbetrouwbare gegevens. Supply-chain-aanvallen vallen volledig in deze categorie.
Impact in de praktijk:De SolarWinds-inbreuk (2020) en de Codecov bash uploader-compromittering (2021) zijn schoolvoorbeelden van supply-chain-aanvallen. In 2024 toonde de XZ Utils-backdoor (CVE-2024-3094) aan dat zelfs essentiële Linux-hulpprogramma's gecompromitteerd kunnen worden via social engineering van beheerders. Deze aanvallen treffen gelijktijdig duizenden downstream-organisaties.
Hoe te controleren: Verifieer dat software-updates worden geleverd via ondertekende kanalen. Controleer CI/CD-pipelines op niet-ondertekende scripts of afhankelijkheden die zonder integriteitsverificatie worden opgehaald. Audit Subresource Integrity (SRI) voor extern geladen scripts en stylesheets.
Hoe te verhelpen: Verifieer digitale handtekeningen op alle software-updates. Implementeer Subresource Integrity (SRI)-hashes voor CDN-gehoste assets. Beveilig CI/CD-pipelines met ondertekende commits en beschermde branches. Gebruik lockfiles en verifieer checksums voor afhankelijkheden. Vermijd het deserialiseren van onbetrouwbare gegevens.
A09: Fouten in beveiligingslogging en -monitoring
Wat is het: Onvoldoende logging, detectie, monitoring en actieve respons. Zonder adequate logging kunnen inbreuken niet worden gedetecteerd, en zonder monitoring worden gelogde gebeurtenissen nooit beoordeeld. De gemiddelde tijd om een inbreuk te identificeren is 204 dagen (IBM 2024), grotendeels door onvoldoende monitoring.
Impact in de praktijk: De Equifax-inbreuk bleef 78 dagen onopgemerkt ondanks dat de inbraak zichtbaar was in logs die niemand bekeek. Organisaties met adequate beveiligingsmonitoring detecteren inbreuken gemiddeld 68 dagen sneller, wat de kosten met $ 1,76 miljoen verlaagt (IBM 2024).
Hoe te controleren: Verifieer dat inlogpogingen (succesvolle en mislukte) worden gelogd. Controleer dat toegangscontrolefouten waarschuwingen genereren. Zorg dat logs veilig worden opgeslagen en niet kunnen worden gemanipuleerd. Verifieer dat loggegevens voldoende lang worden bewaard (minimaal 90 dagen, bij voorkeur 12 maanden).
Hoe te verhelpen: Log alle authenticatiegebeurtenissen, toegangscontrolefouten en serverzijde invoervalidatiefouten. Gebruik gestructureerde logging (JSON-formaat) voor machineleesbare analyse. Implementeer waarschuwingen voor verdachte patronen (meerdere mislukte inlogpogingen, pogingen tot privilege-escalatie). Sla logs centraal op met manipulatiebeveiliging. Log nooit gevoelige gegevens (wachtwoorden, tokens, PII).
A10: Server-Side Request Forgery (SSRF)
Wat is het: SSRF-kwetsbaarheden treden op wanneer een webapplicatie een externe bron ophaalt zonder de door de gebruiker opgegeven URL te valideren. Aanvallers kunnen de server dwingen verzoeken te doen naar interne diensten, cloud-metadata-eindpunten of externe systemen, waarbij firewalls en toegangscontroles vaak worden omzeild.
Impact in de praktijk: De Capital One-inbreuk (2019) exploiteerde een SSRF-kwetsbaarheid om toegang te krijgen tot AWS-metadata en 100 miljoen klantrecords te stelen. In cloudomgevingen is SSRF bijzonder gevaarlijk omdat het cloud-metadata-eindpunt (169.254.169.254) toegang biedt tot IAM-inloggegevens, die kunnen worden gebruikt om elke cloudresource te bereiken waartoe de instance gemachtigd is.
Hoe te controleren: Test alle URL-invoervelden op SSRF door interne adressen in te dienen (127.0.0.1, 169.254.169.254, interne hostnamen). Controleer of de applicatie doorverwijzingen volgt die naar interne adressen resolven. Verifieer dat DNS-rebindingbescherming aanwezig is.
Hoe te verhelpen:Valideer en saneer alle URL's serverzijde. Implementeer allowlists voor toegestane domeinen en protocollen. Blokkeer verzoeken naar privé-IP-bereiken (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) en cloud-metadata-eindpunten. Schakel HTTP-doorverwijzingen uit of valideer doorverwijzingsdoelen. Gebruik netwerksegmentatie om uitgaand serververkeer te beperken.
Waarom MKB's bijzonder kwetsbaar zijn
Kleine en middelgrote bedrijven staan voor een disproportionele beveiligingsuitdaging. Hoewel ze waardevolle klantgegevens bezitten en financiële transacties verwerken, missen ze doorgaans dedicated beveiligingsteams. Volgens het Hiscox Cyber Readiness Report 2024:
- 43 % van de cyberaanvallen richt zich op kleine bedrijven
- 60 % van de MKB's die een inbreuk lijden, sluit binnen 6 maanden
- De gemiddelde kosten van een inbreuk voor een MKB zijn $ 108.000
- Slechts 14 % van de MKB's heeft een formeel incidentresponsplan
Het goede nieuws is dat het aanpakken van de OWASP Top 10 het overgrote deel van het aanvalsoppervlak elimineert. De meeste kwetsbaarheden in deze categorieën kunnen automatisch worden gedetecteerd en verholpen met configuratiewijzigingen of kleine code-updates — geen zescijferig beveiligingsbudget vereist.
Aan de slag met OWASP-compliance
De meest effectieve aanpak voor MKB's is om te beginnen met geautomatiseerde scanning om de meest kritieke problemen te identificeren, en vervolgens fixes te prioriteren op basis van risico. Hier is een praktische driestappenaaanpak:
- Scannen: Voer een geautomatiseerde beveiligingsscan uit om ontbrekende headers, TLS-problemen, kwetsbare componenten en veelvoorkomende misconfiguraties te identificeren. Dit dekt A02, A05, A06 en gedeeltelijk A03 en A10.
- Kritieke problemen eerst oplossen: Pak beveiligingsheaders aan, schakel HTTPS met HSTS in, werk kwetsbare afhankelijkheden bij en controleer de authenticatieconfiguratie. Dit zijn doorgaans configuratiewijzigingen die uren kosten, geen weken.
- Beveiliging in uw proces inbouwen: Integreer geautomatiseerde scanning in uw CI/CD-pipeline, plan regelmatige afhankelijkheidsupdates en voer driemaandelijkse beveiligingsbeoordelingen uit. Preventie is altijd goedkoper dan herstel.
Scan uw site op OWASP-kwetsbaarheden
WarDek controleert uw website tegen de OWASP Top 10 in seconden. Ontvang een gedetailleerd rapport met geprioriteerde remediatiestappen — gratis voor uw eerste scan.