Kun uhkamallinnusta tehdään korkean tason kokonaisuudelle, kuten esimerkiksi portfoliotasolla arvopaketin analyysivaiheessa tietoturvan ja/tai tietosuojan osalta, on hyvin mahdollista, että toteutusta ei vielä tunneta riittävällä tarkkuudella. Näin ollen DFD- ja MSC -tyyppisten kaavioiden piirtäminen STRIDE-keskustelun pohjaksi ei ole mahdollista.

Tällöin voidaan käyttää muita menetelmiä riskien havaitsemiseen. Yksi sellaisista on nk. hyökkääjätarinoiden (attacker story tai abuse case) luominen. Hyökkääjätarinat ovat  ei-toivottuja käyttäjätarinoita, jotka ovat yleensä muotoa:

"Hyökkääjänä haluan käyttää hyväkseni (hypoteettista) heikkoutta tai haavoittuvuutta (oletetussa) kohdejärjestelmässä ja saada aikaan teknisen vaikutuksen, joka johtaa ei-toivottuun liiketoiminnalliseen lopputulokseen."

Hyökkääjätarinoiden hyökkääjät ovat järjestelmän kanssa yhteydessä olevia henkilöitä. Henkilö voi voi olla ulkopuolinen henkilö tai sisäpiiriläinen. Esimerkiksi Cyber Bogies -uhkamallinnuspelissä on esitelty erilaisia hyökkääjärooleja, joita voi käyttää mallina.

Hyökkääjätarinat voidaan kirjata käyttäjätarinoiksi, mutta niitä toteutettaessa järjestelmään lisätään teknisiä tietoturvatoimintoja (controls) tai tehdään muita tietoturvaan liittyviä aktiviteetteja. Hyökkääjätarinan olemassaolo tehtävälistalla kuitenkin varmistaa sen, että tunnistettu tietoturvatyö tulee näkyväksi ja tulee huomioitua sovelluskehityksessä.


Hyökkääjätarinoiden laatiminen

Hyökkääjätarinoita voidaan luoda yksinkertaisesti uhkamallinnustyöpajassa piirtämällä esimerkiksi valkotaululle tai virtuaalityöpajassa käytettävään työkaluun neljä saraketta, jotka otsikoidaan ja täytetään alla olevan esimerkkitaulukon mukaisesti:


HyökkääjätHyökkäysskenaariotVaikutukset järjestelmille Ei-toivottu lopputulos

Kaikki ihmiset, jotka pystyvät toimimaan järjestelmän kanssa, kuten

  • käyttäjät,
  • kehittäjät,
  • ylläpitäjät,
  • asiakaspalvelu,
  • satunnaiset Internetin käyttäjät,
  • jne


Hyökkäysskenaariot voivat olla hypoteettisia eli näiden heikkouksien olemassaoloa ei tarvitse todistaa.

Hyökkäysskenaarioiden tulee kuitenkin olla realistisia. Ideoita voi saada seuraamalla ajankohtaisia tietoturvailmiöitä.

Tiedossa olevat tekniset järjestelmät ja millaisia vaikutuksia nille voisi hyökkäysskenaariosta aiheutua.Jotakin, mitä järjestelmässä ei haluta tapahtuvan.


Käytännössä sarakkeiden täyttäminen kannattaa aloittaa reunoilta (hyökkääjät ja ei-toivotut lopputulokset). Ei-toivotut lopputulokset voidaan saada selville ottamalla toivottu lopputulos ja listaamalla tapoja, joilla ne voivat mennä pieleen.

Esimerkiksi "asiakas saa sähköpostilla kuittauksen" voisi muuttua muotoihin "sähköpostikuittausten saaminen estyy" tai "sähköpostikuittaus lähetetään hyökkääjän osoitteeseen". Vaikutuksen ei tarvitse olla liiketoiminnallinen tai organisatorinen - tietosuojamielessä ei-toivottu lopputulos voi olla rekisteröidyn oikeuksien toteutumista estävä toiminta.

Vaikutukset järjestelmille -sarakkeen sisältö voidaan usein johtaa ei-toivotuista lopputuloksista kysymällä, "millainen järjestelmäongelma aiheuttaisi asianomaisen ei-toivotun lopputuloksen". Näitä saattaa olla useampia. Edellä mainitun esimerkin sähköpostikuittauksen saamisen estymisen voisi aiheuttaa sähköpostipalvelimen palvelunestotila tai sähköpostien päätyminen asiakkaan roskapostikansioon, koska palvelin on päätynyt mustalle listalle.

Hyökkäysskenaarioiden luetteleminen on näistä ehkä hankalin vaihe, mutta tähän voi käyttää esimerkiksi tietoturva-asiantuntijan tai MITREn ATT&CK- ja CAPEC-resurssien apua. MITRE ATT&CK on tässä käsikirjassa mainittu aiemmin yhtenä ohjeellisena vaatimuslähteenä. MITRE CAPEC toimii sovellustasolla sen vastinparina.

Kun kaikissa sarakkeissa on sisältöä, näitä yhdistelemällä voidaan luoda hyökkääjätarinoita, jotka voidaan sitten kirjata tehtävälistalle "negatiivisina" käyttötapauksina. Hyökkääjätarinoiden keskinäinen tärkeysjärjestys voidaan saada selville valitsemalla ikävimmät ei-toivotut vaikutukset ja seuraamalla näihin loppuvia tarinan kaaria.