Wat is IAST (Interactieve Applicatiebeveiligingstesten)?
Interactieve Applicatiebeveiligingstesten (IAST) is een methode die Statische Applicatiebeveiligingstesten (SAST) en Dynamische Applicatiebeveiligingstesten (DAST) combineert om applicatiekwetsbaarheden effectiever te vinden.
De kenmerken van IAST zijn onder andere:
- IAST-tools werken door sensoren of monitoringcomponenten binnen de applicatie toe te voegen terwijl deze draait. Deze tools observeren hoe de app zich gedraagt tijdens tests, of deze nu geautomatiseerd of door mensen worden uitgevoerd. Deze aanpak stelt IAST in staat om code-uitvoering, gebruikersinvoer en hoe de app gegevens in realtime verwerkt te controleren.
- IAST scant niet automatisch de gehele codebase; de dekking ervan wordt bepaald door de omvang van de applicatie die tijdens tests wordt gebruikt. Hoe uitgebreider de testactiviteiten, hoe dieper de kwetsbaarhedendekking.
- IAST wordt meestal ingezet in QA- of stagingomgevingen waar geautomatiseerde of handmatige functionele tests worden uitgevoerd.
Waarom IAST van belang is in Cybersecurity
SAST analyseert broncode, bytecode of binaries zonder de applicatie uit te voeren en is zeer effectief in het opsporen van programmeerfouten, maar kan valse positieven produceren en runtime-specifieke problemen missen.
DAST test applicaties van buitenaf terwijl ze draaien en kan problemen blootleggen die alleen tijdens runtime verschijnen, maar mist diepgaand inzicht in interne logica of code-structuur. IAST overbrugt de kloof door de sterke punten van deze technieken te combineren, en biedt:
- Dieper inzicht in de bronnen en paden van kwetsbaarheden.
- Verbeterde detectienauwkeurigheid vergeleken met alleen SAST of DAST.
- Vermindering van valse positieven door runtime-activiteit te correleren met code-analyse.
Hoe IAST Werkt
- Instrumentatie: IAST maakt gebruik van instrumentatie, wat betekent dat sensoren of monitoringcode in de applicatie worden ingebed (vaak in een QA- of stagingomgeving) om het gedrag tijdens het testen te observeren.
- Monitoring: Het observeert de gegevensstroom, gebruikersinvoer en codegedrag in real-time terwijl de applicatie wordt getest door middel van tests of handmatige acties.
- Detectie: Het markeert kwetsbaarheden zoals onveilige configuratie, niet-gesaniteerde gegevensstromen of injectierisico’s.
- Rapportage: Actuele bevindingen en richtlijnen voor herstel worden aan ontwikkelaars verstrekt om gedetecteerde problemen aan te pakken.
Voorbeeld
Tijdens functioneel testen werkt het QA-team met het inlogformulier. De IAST-tool detecteert dat gebruikersinvoer zonder sanitisatie in een databasequery terechtkomt, wat wijst op een potentieel SQL-injectie risico. Het team ontvangt een kwetsbaarheidsrapport en uitvoerbare stappen om de beveiligingsproblemen op te lossen.