Ohjelmistoturvallisuuden perusteet kehittäjille
Rajala, Jere (2022)
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202204205474
https://urn.fi/URN:NBN:fi:amk-202204205474
Tiivistelmä
Opinnäytetyön tavoitteena oli ohjelmistokehittäjille suunnatun oppaan laatiminen tietoturvallisten ohjelmistojen kehityksestä. Työhön koottiin olennaisimmat asiat, jotka jokaisen kehittäjän tulisi huomioida erilaisten ohjelmistojen kehitysprosessissa. Työssä käytiin läpi mm. verkkosovellusten, mobiililaitteiden ja -
sovellusten sekä sulautettujen järjestelmien haavoittuvuuksia ja kryptografian perusteita.
Työssä käytiin läpi olennaisimmat haavoittuvuuksiin johtavat ohjelmointivirheet ja erilaisia tapoja välttää
niitä. Aiheet on valittu OWASP:in kymmenen ajankohtaisimman haavoittuvuuden listalta, sekä toisaalta
myös tutkittu sovelluskehittäjäyhteisön keskuudessa usein esiin nousevia asioita. Tavoitteena oli antaa lukijalle perustason tietämys haavoittuvuuksista, mutta myös opettaa ns. ”out of the box”-ajattelutapaa, joka
auttaa kehittäjää itsenäisesti analysoimaan koodiaan ja havaitsemaan tietoturvaongelmia. Tavoitteena oli
myös jokaisen haavoittuvuuden yhteydessä käydä läpi yleisesti hyväksytyt ratkaisut kyseiseen tietoturvaongelmaan.
Tutkimuksessa noudatettiin konstruktiivista tutkimusmenetelmää ja käytetyt lähteet olivat pääosin julkisia,
lähteiden joukossa on kuitenkin myös IEEE Xplore-tietokannasta peräisin olevia lähteitä. Työn tärkeys kehittäjäyhteisön kannalta korostuu siinä, että olennaisimmat asiat, jotka jokaisen kehittäjän tulisi tietoturvasta
tietää, on koottu yhteen, jolloin lukijan tietoperusta muodostuu huomattavasti kattavammaksi kuin esimerkiksi yksittäisen artikkelin tietojen perusteella. Tuloksena syntynyt ohje vastaa pitkälti alussa asetettuja tavoitteita, joista tarkemmin tuloksia käsittelevässä luvussa. Työn lukeminen antaa kehittäjälle kattavan ymmärryksen ohjelmistokehitykseen liittyvistä tietoturvaongelmista ja hyvät valmiudet harjoittaa
tietoturvallista ohjelmointia.
sovellusten sekä sulautettujen järjestelmien haavoittuvuuksia ja kryptografian perusteita.
Työssä käytiin läpi olennaisimmat haavoittuvuuksiin johtavat ohjelmointivirheet ja erilaisia tapoja välttää
niitä. Aiheet on valittu OWASP:in kymmenen ajankohtaisimman haavoittuvuuden listalta, sekä toisaalta
myös tutkittu sovelluskehittäjäyhteisön keskuudessa usein esiin nousevia asioita. Tavoitteena oli antaa lukijalle perustason tietämys haavoittuvuuksista, mutta myös opettaa ns. ”out of the box”-ajattelutapaa, joka
auttaa kehittäjää itsenäisesti analysoimaan koodiaan ja havaitsemaan tietoturvaongelmia. Tavoitteena oli
myös jokaisen haavoittuvuuden yhteydessä käydä läpi yleisesti hyväksytyt ratkaisut kyseiseen tietoturvaongelmaan.
Tutkimuksessa noudatettiin konstruktiivista tutkimusmenetelmää ja käytetyt lähteet olivat pääosin julkisia,
lähteiden joukossa on kuitenkin myös IEEE Xplore-tietokannasta peräisin olevia lähteitä. Työn tärkeys kehittäjäyhteisön kannalta korostuu siinä, että olennaisimmat asiat, jotka jokaisen kehittäjän tulisi tietoturvasta
tietää, on koottu yhteen, jolloin lukijan tietoperusta muodostuu huomattavasti kattavammaksi kuin esimerkiksi yksittäisen artikkelin tietojen perusteella. Tuloksena syntynyt ohje vastaa pitkälti alussa asetettuja tavoitteita, joista tarkemmin tuloksia käsittelevässä luvussa. Työn lukeminen antaa kehittäjälle kattavan ymmärryksen ohjelmistokehitykseen liittyvistä tietoturvaongelmista ja hyvät valmiudet harjoittaa
tietoturvallista ohjelmointia.