Syväanalyysi · 7 min lukuaika

Google Ads -tili tai Facebook-mainostili hakkeroitu? Näin kaappaus tapahtuu ja näin valvomme asiakkaidemme tilejä.

Mainostilejä ei kaapata salasanaa arvaamalla. Viisi hyökkäystapaa ja tarkistus, jonka teemme asiakastileille 30 minuutin välein.

Jakub yövartijana käytävällä, jonka varrella hohtavat mainostilien holvien ovet. Pienen robotin taskulampun valokeilassa hupullinen hahmo livahtaa Kumppanipyyntö-kyltillä merkitystä ovesta keksipussi kädessään.
Istunnon kaappaus, tunnistetietojen kalastelu ja harhaanjohtavat kutsut.

Lyhyesti: Mainostilejä ei kaapata salasanaa arvaamalla. Dokumentoidut kaappaustavat ovat varastettu selainistunto, salasanan ja kertakäyttökoodin välittävä kalasteluproxy, väärennetty hallinnoijan linkki tai kumppanipyyntö, varastettu API-token ja poistamatta jäänyt käyttöoikeus. Siksi tarkistamme Lyntillä jokaisen asiakkaan Google Ads- ja Meta-tilin 30 minuutin välein. Tarkistamme, onko tili yhä aktiivinen, onko maksutapa tai kulutusraja muuttunut, ohjaavatko mainokset yhä asiakkaan verkkotunnukseen ja onko uusi käyttäjä saanut tilille pääsyn. Jokainen muutos lähetetään Slackiin ja kirjataan sisäiselle sivulle. Sisäisellä sivulla vastuuhenkilö hyväksyy tai hylkää muutoksen. Toteutusohjeen voi ladata.

Hyökkääjät eivät arvaa Google Ads- tai Facebook-mainostilien salasanoja. Vuosien 2025 ja 2026 tietoturvaraportit kuvaavat viisi tapaa kaapata tili. Salasana ei ole heikko lenkki yhdessäkään niistä.

  1. Varastettu selainistunto. Infostealer-haittaohjelma kopioi evästeet selaimesta, jossa käyttäjä on kirjautuneena. Recorded Future indeksoi vuonna 2025 276 miljoonaa tunnistetietoa, joihin liittyi aktiivinen istuntoeväste. Varastetun evästeen käyttö ei vaadi salasanaa eikä toista vaihetta (Recorded Future). Hyökkääjät levittävät Facebook Business -tilejä varten tehtyä Ducktail-haittaohjelmaa väärennettyjen markkinointialan työtarjousten avulla (WithSecure).
  2. Kaksivaiheisen todennuksen läpäisevä kalasteluproxy. Uhri syöttää oikean salasanansa aidolta näyttävälle sivulle ja hyväksyy kirjautumispyynnön. Proxy ottaa sen jälkeen talteen aidon sivuston luoman istunnon. Microsoftin estämistä kalasteluyrityksistä 62 prosentissa käytettiin vuoden 2025 puoliväliin mennessä samaa vuokrattua kalastelupakettia (Microsoft). Rikolliset ovat ostaneet hakutermillä ”Google Ads” näkyviä Google Search -mainoksia ja ohjanneet niillä uhreja tällaiseen proxyyn (Malwarebytes).
  3. Väärennetty kutsu. Metassa hyökkääjä tekee kumppanipyynnön. Huijauksessa varsinainen viesti on upotettu yrityksen nimikenttään. Itse sähköposti on aito viesti Metalta (Huntress). Googlessa hyökkääjä lähettää väärennetyn hallinnoijatilin linkityskutsun, joka ohjaa uhrin aidonnäköiselle kirjautumissivulle. Näin toimistot menettivät kokonaisia hallinnoijatilejä, vaikka kaksivaiheinen todennus oli käytössä (Search Engine Land).
  4. Varastettu API-token tai sovellukselle myönnetty käyttöoikeus. OAuth-käyttöoikeudet ja Metan järjestelmäkäyttäjien tokenit pysyvät voimassa salasanan nollauksen jälkeen, kunnes järjestelmänvalvoja peruuttaa ne.
  5. Poistamatta jäänyt käyttöoikeus. Kahden vuoden takainen freelancer, edellinen toimisto, asiakkaan entinen markkinointipäällikkö.

Sisään päästyään hyökkääjät lisäävät tilille järjestelmänvalvojan ja liittävät siihen ylätason tilin. Sitten he muuttavat maksutapaa tai kulutusrajaa. He käynnistävät kampanjoita ja ohjaavat mainokset muuhun kuin asiakkaan verkkotunnukseen. Mimecast kirjasi 1,86 miljoonaa havaintoa mainostilivarkauksista pelkästään vuoden 2025 jälkipuoliskolla. Varastetusta tilistä maksetaan muutama sata dollaria (Mimecast). Julkaistuissa tapauksissa toimistot huomasivat varkauden itse, usein vasta seuraavana aamuna.

Miksi rakensimme 30 minuutin tarkistuksen

Hallinnoimme asiakkaiden tilejä Google Adsissa ja Metassa. Aiempi valvontamme tarkisti vain käyttäjien käyttöoikeudet 2,5 tunnin välein. Julkaistuissa tapauksissa rahat katosivat päivän sisällä. Kaapatulla tilillä muuttuvat muutkin asiat kuin käyttöoikeudet. Nyt tarkistus ajetaan 30 minuutin välein, ja se kattaa tilin tilan, maksutavan, kulutusrajan, mainosten kohteet ja käyttäjien käyttöoikeudet.

Valvonnan nykyinen versio julkaistiin syyskuussa 2026. Tarkistus lukee jokaisen hallinnoidun tilin molemmilla alustoilla 30 minuutin välein. Lista siitä, kenellä on pääsy Googleen, luetaan vielä useammin eli 18 minuutin välein. Kerran päivässä tarkistus lukee lisäksi jokaisen tilin kokonaan. Se kattaa datan, jota 30 minuutin ajot eivät koske. Ohjelmisto ei muuta mitään kummallakaan alustalla. Ihminen tekee päätökset.

Mitä valvonta tarkistaa

TarkistusGoogle AdsMeta
Onko tili aktiivinen? Tarkistamme tilin tilan hallinnoijatilimme kautta. Tili voi olla esimerkiksi jäädytetty, peruutettu tai suljettu. API ei kerro jäädytyksen syytä, ja hälytys ilmoittaa tästä rajoituksesta.Tarkistamme tilin tilan ja käytöstä poistamisen syyn. Mukana on myös Metan oma vaarantuneen tilin merkintä.
Onko maksussa ongelma? Tarkistus havaitsee, jos laskutettavan tilin budjetti loppuu. API ei näytä korttimaksun hylkäystä eikä ennakkomaksusaldoa. Hälytyksessä kerrotaan tästä rajauksesta.Rahoituslähde on muuttunut. Kulutusraja on muuttunut tai nollattu. Tili on merkitty avoimen saldon vuoksi maksamattomaksi.
Ohjaavatko mainokset yhä asiakkaan verkkotunnukseen? Luemme muutostapahtumat ja kuluvan päivän laskeutumissivuraportin 30 minuutin välein. Tarkistus lukee muuttuneet kohteet uudelleen. Päivittäinen ajo kattaa määritetyt URL-osoitteet ja seurantapohjat kaikilla tasoilla.Luemme jokaisen aktiivisen mainosaineiston linkit 30 minuutin välein. Täysi tarkistus ajetaan päivittäin. Se havaitsee myös kaikki URL-parametrien muutokset.
Saiko joku uusi pääsyn? Jokaisesta käyttäjästä tarkistetaan rooli, luontipäivä ja kutsuja. Tarkistamme myös odottavat kutsut ja hallinnoijan linkit niiden tilasta riippumatta. Näemme odottavan pyynnön jo ennen kuin asiakas hyväksyy sen. Tarkistamme samalla tavalla myös omat hallinnoijatilimme.Näemme toimintalokista tilille lisätyt ja tililtä poistetut käyttäjät sekä lisätyt ja poistetut kumppaniyritykset. Päivittäin tarkistamme myös omat Business Manager -käyttäjämme, järjestelmäkäyttäjät ja kaksivaiheisen todennuksen asetukset.
Menetimmekö omat käyttöoikeutemme? Jos tilin tietoja ei enää saada luettua, tili merkitään lukukelvottomaksi, kunnes luku onnistuu jälleen.Menetetty käyttöoikeus laukaisee hälytyksen. Virheellinen token keskeyttää tarkistusajon, ja virhe raportoidaan.

Järjestelmä vertaa jokaisen lukukerran tulosta edelliseen tilannevedokseen. Jokainen lisätty, poistettu tai muuttunut rivi kirjataan löydökseksi. Käyttöoikeusvirhe tallennetaan jokaiselle tilille omaksi tilakseen, ei koskaan tyhjäksi tulokseksi. Päivittäinen yhteenveto muuttuu punaiseksi, jos tarkistus myöhästyy sille määritetystä aikataulusta.

Miten tiimi käyttää valvontaa

  1. Yhteen tiliin liittyvät löydökset yhdistyvät yhdeksi tapaukseksi. Slackissa tarkistajalle lähetetään yksityisviesti, ja tiimikanavalle julkaistaan yksi tietue. Viestissä ja tietueessa on kahdella rivillä asiakkaan nimi, tiliä hoitava asiantuntija ja linkki. Hälytystä ei lähetetä uudelleen, ellei tapaus eskaloidu.
  2. Linkki avaa sisäisen sivun, johon pääsee vain verkostamme. Sivulta näkyvät tili, tapahtuneet muutokset, edellinen ja uusi tila, havaintoaika sekä tarkistettavat asiat.
  3. Hyväksyntä koskee aina täsmällisesti rajattua muutosta. Hyväksyntä nimeää tarkasti sallitun asian. Se voi olla esimerkiksi tietty käyttäjä tietyssä roolissa tai tietty verkkotunnus tietyllä tilillä. Myöhempi muutos vaatii uuden tarkistuksen. Jos tapahtuma hylätään, tapaus pysyy avoimena ja muutos merkitään luvattomaksi. Kun uusi lukukerta ei voi vahvistaa eikä kumota tapahtumaa, tarkistaja sulkee sen muistiinpanolla.
  4. Ihminen korjaa ongelman Google Adsissa tai Metassa. Tapaus sulkeutuu, kun seuraava täysi lukukerta vahvistaa, että luvattomaksi merkitty asia on poistettu.
  5. Tilasivulla näkyy jokaisesta tilistä vastaava asiantuntija. Sivulla näkyvät myös viimeisin onnistunut lukukerta, odottavat päätökset ja tiedot siitä, mitä dataa emme pysty lukemaan. Molemmista alustoista lähetetään Slackiin yksi kaksirivinen yhteenveto kello 7.00.

Miksi nämä valinnat

  • 30 minuutin välein. API-kiintiö määrittää tämän välin. Jokainen lukukerta ja muiden työkalujemme kulutus lasketaan samaan kiintiöön. Valvonta laskee omat toimintonsa mukaan kiintiön kulutukseen ja raportoi jokaisesta myöhästyneestä ajosta.
  • Vain lukuoikeus ja ihmisen hyväksyntä. Uuden käyttäjän tai verkkotunnuksen lisää usein asiantuntija tai asiakkaan uusi toimisto. Kyse voi yhtä hyvin olla kaappauksesta. Valvonta ei pysty erottamaan tavallista muutosta kaappauksesta, mutta vastuuhenkilö pystyy siihen yleensä tunnin sisällä.
  • Virheitä ei piiloteta. Valvonta, joka lakkaa toimimasta kertomatta siitä, on pahempi kuin ei valvontaa lainkaan, koska se saa tiimin lopettamaan seurannan. Vanhentunut token keskeyttää ajon ja raportoi virheestä. Käyttöoikeusvirhe tallennetaan omana tilanaan, ei koskaan tyhjänä tuloksena. Jos tiliä ei pystytä lukemaan, se merkitään joka päivä lukematta jääneeksi.
  • Jokainen hälytys kertoo valvonnan rajat. Vihreä tila ei saa koskaan tarkoittaa ”emme pysty näkemään tätä”. Shopping-tuotteiden URL-osoitteet ovat Merchant Centerissä, eivät Ads API:ssa. Dynaamisten hakumainosten laskeutumissivu valitaan näyttöhetkellä. Omassa skannauksessamme neljässä kymmenestä aktiivisesta Meta-mainoksesta linkki oli tallennettu sivujulkaisuun. Luettelomainosten linkit puolestaan ovat luettelossa. Sivujulkaisujen tai luettelon lukeminen vaatii käyttöoikeuksia, joita sovelluksellamme ei ole. Google ei paljasta korttimaksujen hylkäyksiä. Emme voi lukea asiakkaiden käyttäjien kaksivaiheisen todennuksen tilaa kummaltakaan alustalta. Siksi vaadimme kaksivaiheisen todennuksen käyttöä tilin asetuksissa.
Ota mukaasi

Lataa tarkistuslista ja toteutusohje

Saat yhden tiedoston, jossa on turvallisuuden tarkistuslista ja toteutusohje edellä kuvatulle valvonnalle. Voit käydä tarkistuslistan läpi Google Ads- ja Meta-tilejäsi hallinnoivien henkilöiden kanssa. Toteutusohje sisältää esimerkkejä Google Ads API v23 -kyselyistä ja Meta API v24:n lukupyynnöistä sekä ehdotetut tunnistussäännöt ja tunnetut kattavuusaukot. Toteuttajan on mukautettava ohje sinun tileillesi ja testattava toteutus niillä. Saat tiedoston jättämällä sähköpostiosoitteesi.

Yksi tiedosto, yksi lista. Kirjoitan vain kun on jotain lukemisen arvoista.

Google Ads -tilini hakkeroitiin. Mitä teen ensimmäiseksi?

Käytä luotettavaa laitetta. Eristä verkosta jokainen tietokone, jonka epäilet saaneen tartunnan. Ilmoita kaapatusta tilistä heti Google Adsille vaarantuneen tilin lomakkeella. Jos pääset edelleen tilille, keskeytä luvattomat kampanjat. Säilytä muutoshistoria ja laskutussivut todisteina. Poista Pääsy ja turvallisuus -osiosta käyttäjät ja hallinnoijan linkit, jotka olet vahvistanut luvattomiksi. Jos et enää pääse tilille, aloita Google-tilin palautus. Nollaa salasana, tarkista sisäänkirjautuneet laitteet ja peruuta kolmansien osapuolten käyttöoikeudet, joita et tunnista. Tarkista palautussähköposti, puhelinnumero ja maksutavat. Ilmoita luvattomista veloituksista kortinmyöntäjälle.

Mistä tiedän, onko Facebook-mainostilini tai Business Managerini hakkeroitu?

Tutki jokainen tuntematon käyttäjä tai kumppani. Tutki myös kaikki järjestelmänvalvojan poistot, joita et ole pyytänyt, kaikki rahoituslähteen muutokset ja kaikki kampanjat, joita et ole hyväksynyt. Jo yksi näistä on syy toimia. Älä odota, että kaikki merkit täyttyvät tai Meta merkitsee tilin vaarantuneeksi. Palauta ja suojaa vaarantunut Facebook-tili Facebookin hakkeroidun tilin palautussivulla. Ota yhteyttä Metan yritystukeen ja ilmoita, mihin resursseihin hyökkäys kohdistui. Jos pääset edelleen tilille, keskeytä luvattomat mainokset. Poista käyttöoikeudet, jotka olet vahvistanut luvattomiksi. Pyydä yrityksen järjestelmänvalvojaa tarkistamaan integraatiot ja peruuttamaan hyökkäyksessä vaarantuneet järjestelmäkäyttäjien tokenit.

Miksi kaksivaiheinen todennus ei estänyt kaappausta?

Varastetulla istunnolla hyökkääjä voi toimia kirjautumatta uudelleen. Siksi toista vaihetta ei pyydetä. Kalasteluproxy välittää salasanasi ja kertakäyttökoodisi oikealle sivustolle ja ottaa talteen oikean sivuston luoman istunnon. Pääsyavaimet ja laitteistopohjaiset suojausavaimet suojaavat tällaiselta tietojenkalastelulta. Ne eivät kuitenkaan voi suojata istuntoa, joka on jo varastettu saastuneelta laitteelta. Hyökkääjän pääsypyynnön hyväksyminen on erillinen virhe. Silloin olet itse antanut hyökkääjälle käyttöoikeuden.

Näyttävätkö Google Ads API ja Meta API käyttäjien kaksivaiheisen todennuksen tilan?

Google Ads API v23 ei näytä käyttäjäkohtaista kaksivaiheisen todennuksen tilaa eikä tilitason vaatimusta. Metan API-vastaus sisältää kaksivaiheisen todennuksen kentät, jos sinulla on oikeus hallinnoida kyseistä yritystä. Testasimme API:a kumppanin käyttöoikeuksilla asiakkaan yrityksessä. Vastauksesta puuttuivat nämä kentät, ja käyttäjälista oli tyhjä. Jos kenttä puuttuu, tilaa ei tunneta. Puuttuva kenttä ei tarkoita, että kaksivaiheinen todennus olisi poistettu käytöstä. Tarkista asiakkaan kaksivaiheisen todennuksen vaatimukset asetuksista.

Kuinka usein toimiston tulisi tarkistaa, kuka pääsee asiakkaiden mainostileille?

Valitse tarkistusväli sen mukaan, kuinka paljon tililtä voi kulua rahaa, miten suuri käyttöoikeusriski on ja kuinka nopeasti joku ehtii reagoida. Julkaistuissa tapauksissa hyökkääjät kuluttivat kymmeniä tuhansia dollareita yhdessä päivässä. Siksi suuren kulutuksen tilillä kerran yössä tehtävä tarkistus antaa hyökkääjälle pitkän toiminta-ajan. Tarkistamme jokaisen asiakastilin 30 minuutin välein. Viikoittaisella tai neljännesvuosittaisella käyttöoikeustarkistuksella voi varmistaa, että lähteneiden käyttäjien oikeudet on poistettu. Näin harva tarkistus ei tunnista käynnissä olevaa kaappausta. Käytä siksi alustojen tietoturva- ja laskutusilmoituksia tarkistusten välillä.

Kuluttaako 30 minuutin kyselyväli Google Ads API:n kiintiön loppuun?

Pieni portfolio ei pääse lähellekään rajaa. Alla olevissa laskelmissa oletetaan, että jokainen lukukerta ajetaan 30 minuutin välein. Kun kyselyväli on 30 minuuttia, kukin neljästä käyttöoikeuskyselystä ajetaan 48 kertaa päivässä. Kun mukaan lasketaan seitsemän päivittäistä mainosten kohdeosoitteiden lukukertaa ja muutostapahtumien luku 30 minuutin välein, toimintoja kertyy 247 tiliä kohden päivässä. Näihin 247 toimintoon eivät vielä sisälly kohdennetut uusintaluvut, uudelleenyritykset tai muiden työkalujen toiminnot. Basic Access -taso sallii 15 000 toimintoa liukuvan 24 tunnin aikana. Tällä kulutuksella kiintiö riittää enintään 60 tilille. Suurempi portfolio tarvitsee pidemmän tarkistusvälin tai Standard Access -tason. Tarkista Google Cloud -projektisi pääsytaso ja varaa kapasiteettia koko työkuormalle.

Aloita yhdestä tilistä. Tarkista sen käyttäjälista ja hyväksytyt kohdeosoitteet käsin. Testaa sitten, miten valvonta tunnistaa muutokset, käsittelee epäonnistuneen lukuyrityksen ja toimittaa hälytykset. Laajenna valvonta vasta tämän jälkeen muihin tileihin.

Tämän kaiken pointti

Haluatko tämän tason näkyvyyden tilillesi?

Yksi sähköposti. Kerron rehellisesti, kannattaako se sinun setupissasi.

Ota yhteyttä →
Ilmainen lataus

Lataa tarkistuslista ja toteutusohje

Saat yhden tiedoston, jossa on turvallisuuden tarkistuslista ja toteutusohje edellä kuvatulle valvonnalle. Voit käydä tarkistuslistan läpi Google Ads- ja Meta-tilejäsi hallinnoivien henkilöiden kanssa. Toteutusohje sisältää esimerkkejä Google Ads API v23 -kyselyistä ja Meta API v24:n lukupyynnöistä sekä ehdotetut tunnistussäännöt ja tunnetut kattavuusaukot. Toteuttajan on mukautettava ohje sinun tileillesi ja testattava toteutus niillä. Saat tiedoston jättämällä sähköpostiosoitteesi.

Yksi tiedosto, yksi lista. Kirjoitan vain kun on jotain lukemisen arvoista.