Runtime application self-protection (RASP)

Runtime application self-protection (RASP) is beveiligingssoftware die integreert met een applicatie of de runtime-omgeving daarvan tijdens de uitvoering en die voortdurend aanroepen naar de applicatie onderschept om hun veiligheid te controleren, die welke veilig worden geacht toe te staan en die welke op een aanval zouden kunnen wijzen te blokkeren. RASP kan bescherming bieden tegen applicatie-aanvallen zoals SQL-injectie omdat het de betrokken commando's kan interpreteren en normale reeksen kan onderscheiden van verdachte instructies of verzoeken.

Applicatiebeveiliging wordt vaak verwaarloosd tijdens de ontwikkeling van software en de meeste apps missen de capaciteit om aanvallen te detecteren en te blokkeren. RASP voegt beveiliging toe aan applicaties die anders kwetsbaar zouden zijn. Omdat het inzicht heeft in wat er binnen de applicatie gebeurt, kan RASP het gedrag van applicaties en de context waarin het plaatsvindt analyseren, in tegenstelling tot perimeter-gebaseerde bescherming, zoals web application firewalls (WAF). Die capaciteit maakt het mogelijk voor de software om in real time te reageren op aanvallen.

RASP heeft twee operationele modi. In de diagnostische modus controleert de software oproepen naar de applicatie en geeft een alarmsignaal als een verdachte oproep wordt gedaan. In de zelfbeschermingsmodus kan RASP de uitvoering van verdachte instructies voorkomen of een gebruikerssessie beëindigen.

RASP-technologie is ontworpen voor de twee populairste applicatieservers, Java virtual machine (JVM) en .NET Common Language Runtime. Aanvullende implementaties worden verwacht. Leveranciers van RASP-producten zijn onder meer Contrast, HP, Immunio, Promon, Veracode, Waratek en WhiteHat Security.

Joseph Feiman pleitte voor het eerst voor het concept achter RASP in zijn onderzoeksrapport uit 2014, "Stop Protecting Your Apps; It's Time for Apps to Protect Themselves."

Jeff Williams geeft een inleidende tutorial over RASP: