Mikä on IAST (Interaktiivinen Sovellusturvatestaus)?
Interaktiivinen Sovellusturvatestaus (IAST) on menetelmä, joka yhdistää Staattisen Sovellusturvatestauksen (SAST) ja Dynaamisen Sovellusturvatestauksen (DAST) löytääkseen sovellusten haavoittuvuudet tehokkaammin.
IAST
ominaisuuksiin kuuluvat:- IAST-työkalut toimivat lisäämällä antureita tai valvontakomponentteja sovelluksen sisään sen suorittaessa. Nämä työkalut tarkkailevat, miten sovellus käyttäytyy testauksen aikana, olivatpa testit automatisoituja tai ihmisten suorittamia. Tämä lähestymistapa antaa IAST mahdollisuuden tarkistaa koodin suoritus, käyttäjän syötteet ja miten sovellus käsittelee tietoja reaaliajassa.
- IAST ei skannaa koko koodipohjaa automaattisesti; sen kattavuus määräytyy testien aikana käytetyn sovelluksen laajuuden mukaan. Mitä laajempi testitoiminta, sitä syvempi haavoittuvuuksien kattavuus.
- IAST otetaan tyypillisesti käyttöön QA- tai staging-ympäristöissä, joissa ajetaan automatisoituja tai manuaalisia toiminnallisia testejä.
Miksi IAST on tärkeä kyberturvallisuudessa
SAST analysoi lähdekoodia, tavukoodia tai binäärejä ilman sovelluksen suorittamista ja on erittäin tehokas koodausvirheiden paljastamisessa, mutta se voi tuottaa vääriä positiivisia ja jättää huomiotta ajonaikaiset erityisongelmat.
DAST testaa sovelluksia ulkopuolelta niiden ollessa käynnissä ja voi paljastaa ongelmia, jotka ilmenevät vain ajon aikana, mutta sillä ei ole syvällistä näkyvyyttä sisäiseen logiikkaan tai koodirakenteeseen. IAST yhdistää näiden tekniikoiden vahvuudet tarjoamalla:
- Syvällisempiä näkemyksiä haavoittuvuuksien lähteistä ja poluista.
- Parannettua havaitsemistarkkuutta verrattuna pelkkään SAST- tai DAST-testaamiseen.
- Vähentää väärien positiivisten määrää yhdistämällä ajonaikainen toiminta koodianalyysiin.
Kuinka IAST Toimii
- Instrumentointi: IAST käyttää instrumentointia, mikä tarkoittaa, että sovellukseen upotetaan sensoreita tai seurantakoodia (usein QA- tai staging-ympäristössä) sen käyttäytymisen tarkkailemiseksi testauksen aikana.
- Seuranta: Se tarkkailee tietovirtoja, käyttäjän syötteitä ja koodin käyttäytymistä reaaliajassa, kun sovellusta testataan tai käytetään manuaalisesti.
- Havaitseminen: Se merkitsee haavoittuvuuksia, kuten turvattomia konfiguraatioita, puhdistamattomia tietovirtoja tai injektioriskejä.
- Raportointi: Kehittäjille tarjotaan toimivia havaintoja ja korjausohjeita havaittujen ongelmien ratkaisemiseksi.
Esimerkki
Toiminnallisen testauksen aikana QA-tiimi on vuorovaikutuksessa kirjautumislomakkeen kanssa. IAST-työkalu havaitsee, että käyttäjän syöte kulkee tietokantakyselyyn ilman puhdistusta, mikä osoittaa mahdollisen SQL-injektion riskin. Tiimi saa haavoittuvuusraportin ja toimintaohjeet turvallisuusongelmien korjaamiseksi.