OWASP top 10 – 2017

Security websitesHet Open Web Application Security Project (OWASP) is een open source-project rond computerbeveiliging. De OWASP top 10 is samengesteld door specialisten in het security vakgebied. In deze top tien zijn gebieden opgenomen waarin veel fouten voorkomen. In de literatuur is onduidelijk of deze fouten nu leiden tot grote impact op een applicatie of schade voor bedrijven, of dat deze fouten nu veel voorkomen.

Het testen van systeem kwetsbaarheden moet zich niet beperken tot de top 10 van OWASP maar zou alle gebieden van security testen moeten omvatten. Daarnaast is het niet veel meer werk om alle gebieden te testen dan alleen de OWASP top 10. Het is dus aan te bevelen een partij te zoeken welke de volledige security test kan uitvoeren.

De OWASP top 10 uit 2013 is in 2017 gewijzigd. In dit artikel gaan we in op de wijzigingen en geven we een korte uitleg bij 10 belangrijkste risico’s.

In onderstaande tabel is een overzicht gegeven van de verschillen:

OWASP Top 10 2013 vs 2017

Wat is er gewijzigd t.o.v. de OWASP top 10 uit 2013

Er zijn 3 risico’s voor webapplicaties toegevoegd:

  1. XML external entities (XXE)
    Dit risico verwijst naar slecht geconfigureerde XML-processors die externe entiteit referenties binnen XML-documenten evalueren. Aanvallers kunnen externe entiteiten gebruiken om aanvallen uit te voeren, inclusief het uitvoeren van externe code, en voor het vrijgeven van interne bestanden en mediabestanden.
  2. Insecure deserialization
    Onveilige deserialisatie (het creëren van een object uit een opeenvolging van bytes) kan een aanvaller in staat stellen om code in de applicatie op afstand uit te voeren, geserialiseerde (geschreven naar schijf) objecten te wijzigen of verwijderen, injectie aanvallen uit te voeren en rechten op te heffen.
  3. Insufficient logging and monitoring
    Onvoldoende logging en inefficiënte integratie met systemen voor beveiligings- incidenten stellen aanvallers in staat om regelmatig over te stappen naar andere systemen en bedreigingen gedurende weken of maanden in stand te houden voordat het wordt ontdekt.

Er zijn 2 risico’s uit de top 10 verdwenen

  1. Cross-site request forgery (CSRF)
  2. Unvalidated Redirects and Forwards

Er zijn 2 risico’s samengevoegd in: Broken acces control

  1. Insecure Direct Object References
  2. Missing Function Level Access Control

Hieronder een beschrijving van de OWASP top 10 – 2017:

A1-Injection
Injectie mogelijkheden, zoals SQL, OS en LDAP injectie kunnen optreden wanneer onbetrouwbare gegevens als deel van een commando of query naar een interpreter gestuurd worden. De data van de aanvaller kan ervoor zorgen dat de interpreter onbedoelde commando’s uitvoert of zich toegang verschaft tot gegevens zonder hiervoor de juiste rechten te hebben.

A2-Broken Authentication
Functies in applicaties met betrekking tot authenticatie en sessie management worden vaak niet correct toegepast, waardoor hackers wachtwoorden, sleutels of sessie tokens kunnen onderscheppen, of andere gebreken van de implementatie benutten om de identiteit van andere gebruikers over te nemen.

A3-Sensitive Data Exposure
Veel webapplicaties beschermen gevoelige gegevens, zoals credit cards, btw-nummers, en inloggegevens, niet goed. Aanvallers kunnen deze gegevens stelen of deze slecht beschermde gegevens wijzigen om credit card fraude, identiteitsdiefstal of andere misdrijven mee uit te voeren. Gevoelige gegevens verdienen extra bescherming zoals versleuteling in de applicatie of tijdens het transport, alsmede speciale voorzorgsmaatregelen bij het uitwisselen van deze gegevens met de browser.

A4-XML External Entities (XXE)
Dit risico verwijst naar slecht geconfigureerde XML-processors die externe entiteit referenties binnen XML-documenten evalueren. Aanvallers kunnen externe entiteiten gebruiken om aanvallen uit te voeren, inclusief het uitvoeren van externe code, en voor het vrijgeven van interne bestanden en mediabestanden.

A5-Broken Access Control
Beperkingen op wat geautoriseerde gebruikers mogen doen, worden vaak niet goed afgedwongen. Aanvallers kunnen dit misbruiken om ongeautoriseerd toegang te krijgen tot functionaliteit en / of gegevens, zoals toegang tot accounts van andere gebruikers, het bekijken van gevoelige bestanden, wijzigen van gegevens van andere gebruikers, wijzigen van toegangsrechten, etc.

A6-Security Misconfiguration
Goede beveiliging vereist een veilige configuratie, vastgesteld en geïmplementeerd, voor de applicatie, frameworks, applicatie-server, web server, database server, en het platform. Default beveiligings instellingen zijn vaak niet veilig genoeg. Beveiligings instellingen moeten daarom worden gedefinieerd, geïmplementeerd en onderhouden. Uiteraard moet de software zelf ook up to date worden gehouden.

A7-Cross-Site Scripting (XSS)
XSS gebreken doen zich voor wanneer een aanvraag met onbetrouwbare gegevens wordt verstuurt naar een webserver zonder de juiste validatie of ‘escape”. XSS aanvallers hebben de mogelijkheid om in browsers van gebruikers de gebruikerssessie te kapen om zodoende de mogelijkheid te hebben om scripts in de browser van het slachtoffer uit te voeren, het beschadigen van websites, of de gebruiker naar kwaadaardige websites (om)leiden.

A8-Insecure Deserialization
Onveilige deserialisatie (het creëren van een object uit een opeenvolging van bytes) kan een aanvaller in staat stellen om code in de applicatie op afstand uit te voeren, geserialiseerde (geschreven naar schijf) objecten te wijzigen of verwijderen, injectie aanvallen uit te voeren en rechten op te heffen.

A9-Using Components with Known Vulnerabilities
Componenten, zoals libraries, frameworks, en andere software modules, worden bijna altijd met volledige privileges uitgevoerd. Als een kwetsbaar component wordt misbruikt, kan een dergelijke aanval ernstige verlies van gegevens of een server overname vergemakkelijken. Applicaties die gebruik maken van componenten met bekende kwetsbaarheden kunnen de beveiliging ondermijnen en maakt het mogelijk een reeks van aanvallen te doen.

A10-Insufficient Logging&Monitoring
Onvoldoende logging en inefficiënte integratie met systemen voor beveiligings- incidenten stellen aanvallers in staat om regelmatig over te stappen naar andere systemen en bedreigingen gedurende weken of maanden in stand te houden voordat het wordt ontdekt.

Ook interessant?

Penetratietesten of pentesten

Penetratietesten

Een penetratietest of pentest is een toets van een of meer informatiesystemen, netwerken, applicaties en servers op kwetsbaarheden. Een penetratietester ...
Security testen

Security testen

Het beveiligen van applicaties is voor veel organisatie erg lastig. Om de beveiliging op orde te krijgen is er specialistische ...
Security Awareness

Security Awareness

Veel van de incidenten op het gebied van beveiliging worden mede veroorzaakt door onwetendheid en onjuist handelen van mensen. Mensen ...
Security websites

OWASP top 10 – 2017

Het Open Web Application Security Project (OWASP) is een open source-project rond computerbeveiliging. De OWASP top 10 is samengesteld door ...
Blijf op de hoogte van onze nieuwste ontwikkelingen, schrijf je hier in voor de nieuwsbrief!