Vad är ett penetrationstest för webbapplikationer?
Ett penetrationstest för webbapplikationer är en aktivitet som är utformad för att mäta hur ett internetbaserat program skulle bete sig under en attack eller utnyttja. Dessa test använder en mängd olika program för att skanna en applikation och sedan utföra olika åtgärder som kan uppstå under en faktisk attack. Ett penetrationstest för webbapplikationer kan utföras av ett utvecklingsgrupp eller en tredjepartsleverantör. Om en extern leverantör används kommer utvecklingsgruppen eller IT-personalen ibland inte att meddelas om testet av ledningen. Detta kan tillåta ett penetrationstest för webbapplikationer att upptäcka brister som annars skulle ha blivit obemärkt, vilket kan göra det möjligt att lösa dessa problem innan programvaran släpps.
Webapplikationer är mjukvarupaket som kan nås och köras över Internet. Dessa applikationer kan utföra många funktioner, och i vissa fall ansvarar de för att hantera data som anses vara privata eller till och med värdefulla. För att undvika komprometterande attacker utförs vanligtvis penetrationstester för att lokalisera eventuella svagheter eller lätt utnyttjade områden i koden.
Typiska penetrationstester för webbapplikationer börjar med en informationssamlingsfas. Syftet med detta steg är att bestämma så mycket information om applikationen som möjligt. Genom att skicka förfrågningar till applikationen och använda verktyg som skannrar och sökmotorer är det ofta möjligt att få information såsom programvaruversionsnummer och felmeddelanden som ofta används för att hitta utnyttjelser senare.
Efter att en tillräcklig mängd information har samlats är nästa mål med ett penetrationsprov för webbapplikationer att utföra ett antal olika attacker och utnyttjar. I vissa fall identifierar den information som samlats in under den första fasen utnyttjelser som applikationen kan vara sårbar för. Om inga uppenbara sårbarheter upptäcktes, kan ett fullständigt antal attacker och utnyttjande försökas.
Många olika tekniska sårbarheter kan lokaliseras genom ett penetrationstest för webbapplikationer. Dessa tester försöker vanligtvis använda metoder som manipulering av URL (universal resource locator), session kapning och SQL-injektion med strukturerad frågespråk för att bryta in i en applikation. Det kan också vara ett försök att initiera ett buffertöverskridande eller andra liknande åtgärder som kan få en applikation att bete sig onormalt. Om något av dessa attacker eller utnyttjar får applikationen att avslöja känslig information för penetrationstestaren rapporteras bristerna vanligtvis tillsammans med en föreslagen handlingssätt.