Cross-Site Request Forgery (CSRF), joka tunnetaan myös nimellä session riding, on kyberturvallisuus hyökkäys, jossa haitallinen verkkosivusto tai sähköposti kehottaa käyttäjää tekemään ei-toivotun toiminnon toisella sivustolla, jossa käyttäjä on tunnistautunut. Hyökkäys hyödyntää käyttäjän aktiivista istuntoa toisella sivustolla suorittaakseen luvattomia komentoja, kuten rahansiirtoja tai asetusten muuttamista.
CSRF on eräänlainen tietoturvahaavoittuvuus, joka sallii hyökkääjien hyödyntää käyttäjän selaimen ja kirjautuneen verkkosivuston välistä luottamusta. Hyökkääjä huijaa käyttäjän selaimen tekemään pyynnön toiselle verkkosivustolle käyttäjän puolesta, ilman käyttäjän tietoa tai suostumusta.
CSRF-hyökkäyksen toteuttamiseksi hyökkääjä lähettää yleensä räätälöidyn linkin tai sähköpostin käyttäjälle. Kun käyttäjä klikkaa linkkiä tai tekee toimenpiteen sähköpostissa, hänen selaimensa lähettää pyynnön kohdesivustolle, hyödyntäen käyttäjän aktiivista istuntoa ja saaden kohdesivuston suorittamaan toimenpiteen käyttäjän puolesta.
Haitallisessa verkkosivustossa tai sähköpostissa voi olla piilotettuja lomakkeita, kuvia tai JavaScript-koodia, joka automaattisesti laukaisee toimintoja kohdesivustolla. Koska pyyntö tulee käyttäjän selaimesta, kohdesivusto näkee sen laillisena pyyntönä ja suorittaa pyydetyn toiminnon ilman käyttäjän tietoa.
Hyökkäyksen suunnittelu: Hyökkääjä luo haitallisen linkin tai sähköpostin, joka näyttää vaarattomalta tai houkuttelevalta käyttäjälle. Tämä voi sisältää linkkejä väärennettyihin kirjautumissivuihin tai verkkosivustoihin, jotka jäljittelevät suosittuja palveluita.
Käyttäjän vuorovaikutus: Käyttäjä klikkaa räätälöityä linkkiä tai tekee toimenpiteen haitallisessa sähköpostissa. Tämä laukaisee käyttäjän selaimen lähettämään pyynnön kohdesivustolle.
Aktiivisen istunnon hyväksikäyttö: Käyttäjän selaimen lähettämä pyyntö sisältää käyttäjän istuntokeksit tai tunnistautumisvaltuudet. Kohdesivusto, joka näkee pyynnön laillisena käyttäjän aktiivisen istunnon vuoksi, käsittelee pyynnön ja suorittaa hyökkääjän määrittämän toiminnon.
Ei-toivottu toimenpide: Kohdesivusto suorittaa toimenpiteen käyttäjän puolesta, mikä voi sisältää tiliasetusten muuttamista, vilpillisiä rahansiirtoja tai jopa käyttäjätietojen poistamista.
Vaikka CSRF-hyökkäykset voivat olla haitallisia, on olemassa useita ennaltaehkäiseviä toimenpiteitä, joita käyttäjät ja verkkosivustojen omistajat voivat toteuttaa riskin vähentämiseksi:
Web Application Firewall: Web Application Firewallin (WAF) käyttöönotto voi auttaa tunnistamaan ja suodattamaan mahdollisia CSRF-hyökkäyksiä. WAF:t analysoivat saapuvia pyyntöjä ja voivat estää epäilyttävät tai luvattomat pyynnöt.
Anti-CSRF-tunnisteet: Verkkosivustojen omistajat voivat ottaa käyttöön anti-CSRF-tunnisteet suojautuakseen CSRF-hyökkäyksiltä. Nämä tunnisteet ovat ainutlaatuisia, todettavissa olevia tunnisteita, jotka upotetaan jokaiseen käyttäjän pyyntöön. Kun lomake lähetetään tai pyyntö tehdään, palvelin tarkistaa tunnisteen varmistaakseen, että se vastaa odotettua arvoa. Jos tunniste puuttuu tai on virheellinen, palvelin hylkää pyynnön.
Kirjaudu ulos tärkeistä tileistä: Suositellaan kirjautumaan ulos tai käyttämään erillisiä selainistuntoja, kun käytetään tärkeitä tilejä tai suoritellaan herkkiä toimintoja. Tämä vähentää CSRF-hyökkäysten riskiä, koska käyttäjän aktiivista istuntoa ei voida hyödyntää haitallisten verkkosivustojen toimesta.
Käyttäjäkoulutus: Edistä käyttäjien tietoisuutta ja koulutusta kyberturvallisuuden parhaista käytännöistä. Käyttäjien tulisi olla varovaisia klikatessaan linkkejä sähköposteissa, erityisesti jos ne ovat tuntemattomia tai epäilyttäviä. On tärkeää tarkistaa verkkosivustojen aitous ennen kirjautumistietojen syöttämistä tai herkkiä toimintoja.
Pankkisiirto: Hyökkääjä lähettää käyttäjälle haitallisen linkin, väittäen sen johtavan kampanjaan tai erikoistarjoukseen. Kun käyttäjä klikkaa linkkiä, hänen selaimensa lähettää pyynnön käyttäjän verkkopankkisivustolle, siirtäen varoja hyökkääjän tilille.
Asetusten muuttaminen: Hyökkääjä huijaa käyttäjää vierailemaan hänen haitallisella verkkosivustollaan. Sivustolla on piilotettuja lomakkeita, jotka lähetettäessä muuttavat käyttäjän tiliasetuksia eri verkkosivustolla, kuten sähköpostiosoitteen tai salasanan vaihtamista.
Sosiaalisen median julkaisu: Hyökkääjä luo verkkosivuston, joka automaattisesti julkaisee sisältöä käyttäjän sosiaalisen median tilillä ilman käyttäjän tietoa. Kun käyttäjä vierailee haitallisella verkkosivustolla, hänen selaimensa laukaisee julkaisu toiminnon heidän tunnistetulla sosiaalisen median tilillään.
Session Hijacking: Session Hijacking on toinen hyökkäystyyppi, jossa hyökkääjä saa luvattoman pääsyn käyttäjän aktiiviseen istuntoon. Varastamalla istuntokeksit tai istunto-ID:n, hyökkääjä voi esiintyä käyttäjänä ja suorittaa toimintoja hänen puolestaan.
Cross-Site Scripting (XSS): Cross-Site Scripting (XSS) on samanlainen hyökkäys kuin CSRF, jossa haittaohjelmia lisätään verkkosivuille, joita muut käyttäjät katsovat. XSS sallii hyökkääjien suorittaa toimintoja uhrin puolesta haavoittuvan verkkosivuston kontekstissa.