Hyvin suunniteltu ohjelmisto ei ole vain toimiva – se on myös turvallinen. Käy läpi vinkkimme turvallisen ohjelmiston hankintaan.
Turvallinen ohjelmisto on kehitetty alusta loppuun asti noudattaen yleisiä turvallisen ohjelmistokehityksen periaatteita (Secure by design). Kantavana toimintaperiaatteena on suojata sekä ohjelmiston käyttämä data, että ohjelmiston käyttäjät. Erilaisia turvallisuutta tuovia viitekehyksiä ja malleja löytyy useita erilaisia, kattavimpia ohjeistuksia tarjoaa National Institute of Standards and Technology omassa Secure Software Development Framework julkaisussaan.
Ohjelmisto voi olla turvallinen, vaikka ei käyttäisikään mitään valmiita malleja. Ohjelmistoja tehdessä tulee silti noudattaa turvallisuuden suunnitteluperiaatteita. Niitä ovat esimerkiksi datan suojaaminen, ulkopuolisten pääsyn estäminen ohjelmistoon, syötteiden turvallinen käsittely ja uhkamallinnuksen tekeminen.
Turvallinen ohjelmisto ei kuitenkaan ole sama asia kuin täysin virheetön ohjelmisto. Myös turvallinen ohjelmisto voi sisältää ohjelmistovirheitä tai nollapäivähaavoittuvuuksia. Nykypäivän ohjelmistot ovat monimutkaisia kokonaisuuksia ja turvallisuutta vaarantavia ohjelmointivirheitä voi olla mahdotonta välttää kokonaan. Täydelliseen virheettömyyteen pyrkimistä tärkeämpää on se, että riskit ja mahdollisuudet virheisiin on pyritty ottamaan huomioon ohjelmistoa tehdessä. Turvallisten tapojen noudattaminen vähentää todennäköisyyksiä ohjelmistovirheiden ja nollapäivien ilmaantumiseen sekä niiden hyväksikäyttöön. Turvallisuutta voi lisätä laatimalla suunnitelman siitä kuinka löydetyt ohjelmistovirheet raportoidaan ja kuinka ne korjataan. Syksystä 2026 lähtien myös kyberkestävyyssäädös (Cyber Resilience Act, CRA) velvoittaa ilmoittamaan tuotteeseen sisältyvistä aktiivisesti hyödynnetyistä haavoittuvuuksista viranomaisille sekä asiakkaille.
Turvallinen ohjelmistotuottaja erottautuu läpinäkyvyydellä
Haluatko hankkia turvallisen ohjelmiston, mutta et ole tekninen asiantuntija? Kuinka voit varmistua siitä, että hankkimasi ohjelmisto on turvallinen? Hankintaa tehdessä, valmistajan tulisi osata kertoa ostajalle, miten erilaiset turvallisuusseikat on otettu huomioon ohjelmistoa kehittäessä. Yksinkertaisimmillaan se voi tarkoittaa, vaikka sitä, että valmistaja on selkeästi kommunikoinut ja määritellyt kuinka heihin otetaan yhteyttä ohjelmistovirheistä.
Seuraavassa on lyhyt lista muutamista asioista, joihin voi kiinnittää huomiota turvallista hankintaa tehdessä. Lista ei ole kattava hankinnan tueksi tarkoitettu lista vaan tarkoitettu ohjaamaan ajatuksia siihen osa-alueisiin, joita voi hankintaa tehdessä käsitellä:
- Millainen on ohjelmiston elinkaarihallinta? Kuinka pitkälle turvallisuuspäivityksiä on luvattu? Kuinka asiakkaan tietoja käsitellään, kun asiakkuus loppuu?
- Millainen tuottajan tai valmistajan oma turvallisuuden hallintamalli on? Onko organisaatiolla yhteydenottokanava, kuten sähköpostiosoite, johon voi olla yhteydessä, jos tuotteesta löytyy haavoittuvuus?
- Jos tuotteen tekemiseen on käytetty alihankintaa, miten alihankintaketjujen turvallisuus on huomioitu?
- Millaiset turvallisen ohjelmistokehityksen käytännöt organisaatiolla on käytössä?
- Jos ohjelmisto sisältää kirjautumisen käyttäjille, onhan käytössä monivaiheinen tunnistautuminen (MFA)? Toteuttaako ohjelmisto tarvittavat lokitukset ja monitoroinnit esimerkiksi virhetilanteiden tai muiden poikkeavien tilanteiden osalta?