Laravel-sovellusten yleisimpiä tietoturva-aukkoja ovat:
1. Cross-Site Scripting (XSS): Ilmenee, kun käyttäjän toimittamia tietoja ei ole puhdistettu kunnolla ennen niiden näyttämistä verkkosivulla, jolloin hyökkääjät voivat syöttää haitallisia komentosarjoja[1][3].
2. SQL-injektio (SQLi): Tapahtuu, kun käyttäjän syötettä ei ole tarkistettu oikein ennen kuin sitä käytetään tietokantakyselyissä, mikä antaa hyökkääjille luvattoman pääsyn arkaluonteisiin tietoihin[1][3].
3. Cross-Site Request Forgery (CSRF): Sallii hyökkääjien suorittaa luvattomia toimia todennetun käyttäjän puolesta, mikä johtaa taloudellisiin menetyksiin, tietoturvaloukkauksiin ja mainevaurioihin[1][3].
4. Insecure Direct Object References (IDOR): Paljastaa sisäiset toteutustiedot, kuten tietokantaavaimet tai tiedostopolut, URL-osoitteissa tai parametreissa, jolloin hyökkääjät voivat manipuloida näitä viittauksia päästäkseen luvattomiin resursseihin[1].
5. Turvallinen serialisointi: Ilmenee, kun epäluotettavista tiedoista deserialisoidaan ilman asianmukaista vahvistusta tai puhdistusta, jolloin hyökkääjät voivat suorittaa mielivaltaisen koodin, suorittaa palvelunestohyökkäyksiä tai peukaloida sovelluslogiikkaa[1].
6. Todennus- ja istunnonhallintaongelmat: Heikot todennusmekanismit, kuten riittämätön salasanan hajautus tai monivaiheisen todennuksen puute, voivat johtaa luvattomaan käyttöön. Riittämätön istunnonhallinta voi myös altistaa käyttäjät istunnon kaappauksille tai kiinnityshyökkäyksille[1].
7. Arkaluonteisten tietojen altistuminen: arkaluonteisten tietojen, kuten salasanojen, API-avaimien tai henkilökohtaisten tunnistetietojen (PII) paljastaminen lokeissa, virhesanomissa tai vastausotsikoissa voi johtaa identiteettivarkauksiin, tietoturvaloukkauksiin tai muihin haitallisiin tietoihin. toimintaa[1].
8. Uudelleenohjaukset ja edelleenlähetykset ilman vahvistusta: Jos uudelleenohjauksia ja edelleenlähetyksiä ei voida vahvistaa käyttäjän syöttämän syötteen perusteella, se voi johtaa käyttäjien uudelleenohjaamiseen haitallisille verkkosivustoille tai tietojenkalastelusivuille[1].
9. Validointi: Syötteen validoinnin laiminlyönti voi altistaa sovellukset injektiohyökkäyksille[1].
10. Riippuvuudet: Jos kolmannen osapuolen riippuvuuksia ei päivitetä ajoissa, sovellukset voivat altistua haavoittuvuuksille[1].
Näitä haavoittuvuuksia voidaan lieventää noudattamalla parhaita käytäntöjä, kuten syötteen validointia, ulostulon pakottamista, parametrisoituja kyselyitä, todennusta, valtuutusta ja salausta, sekä pysymällä ajan tasalla uusimmista tietoturvauhkista ja päivittämällä säännöllisesti riippuvuuksia[1][3].
Lainaukset:[1] https://acquaintsoft.com/answers/prevention-for-security-vulnerabilities-in-laravel
[2] https://www.cvedetails.com/vulnerability-list/vendor_id-16542/Laravel.html
[3] https://www.ropstam.com/laravel-security-best-practices/
[4] https://clouddevs.com/laravel/protecting-web-application/
[5] https://magecomp.com/blog/laravel-security-best-practices/