Pentesting
Het testen van de security van een applicatie heeft als doel om er achter te komen waar mogelijke risico’s en zwaktes zitten. Een onderdeel hiervan is penetration testing, ook bekend als pentesting. Pentesting houdt in dat je je voordoet als een mogelijke aanvaller van de applicatie. Je probeert door middel van bekende aanvallen risico’s te ontdekken of zwakheden te benutten. Pentesting is onderdeel van de testing fase in de SSDLC.
Pentesting bestaat uit de volgende 3 stappen:
- Ontdekken - Het verzamelen van informatie over de website. Denk hierbij aan alle bestaande URL’s, robots.txt, externe frameworks en packages, de gebruikte webserver met versie.
- Aanvallen - Het uitvoeren van aanvallen aan de hand van de ontdekte informatie.
- Rapporteren - Het rapporteren en beschrijven van de gevonden veiligheidsrisico’s
ZAP
Pentesting kan zowel handmatig, als automatisch gedaan worden. Er bestaan vele tools om dit te automatiseren. Bij de bronnenlijst van deze pagina zijn er aantal te vinden, maar deze pagina gaat in op het gebruik van ZAP.
ZAP staat voor “Zed Attack Proxy” en is een gratis en open source pentesting tool gemaakt voor het testen van webapplicaties. ZAP wordt omschreven als een Man-in-the-middle proxy, omdat het tussen de browser en de webapplicatie inzit. Het kan gemakkelijk requests en responses inzien, vasthouden en wijzigen.
Begrippenlijst
- ZAP: Zed Attack Proxy
- Proxy: Een tussenstap tussen client en server
Bronnen
ZAP: https://www.zaproxy.org/getting-started/
Penetration test: https://en.wikipedia.org/wiki/Penetration_test
Vulnerability Scanning Tools: https://owasp.org/www-community/Vulnerability_Scanning_Tools
Volgende stap: Hoe zit ZAP in elkaar?