Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan

Tämän tutkielman tarkoituksena oli koota yhteen paperiin läpileikkaus ohjelmiston käänteismallintamisesta aiheena käymällä läpi aiheeseen liittyvää kirjallisuutta. Läpileikkauksen tarkoituksena on tutustuttaa sekä kirjoittaja että lukija aiheeseen. Ohjelmiston käänteismallintamisella tarkoitetaan pr...

Full description

Bibliographic Details
Main Author: Kuusirati, H. (Henri)
Format: Others
Language:Finnish
Published: University of Oulu 2016
Subjects:
Online Access:http://urn.fi/URN:NBN:fi:oulu-201612063208
http://nbn-resolving.de/urn:nbn:fi:oulu-201612063208
id ndltd-oulo.fi-oai-oulu.fi-nbnfioulu-201612063208
record_format oai_dc
spelling ndltd-oulo.fi-oai-oulu.fi-nbnfioulu-2016120632082018-06-21T04:47:17ZYleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaanKuusirati, H. (Henri)info:eu-repo/semantics/openAccess© Henri Kuusirati, 2016Information Processing ScienceTämän tutkielman tarkoituksena oli koota yhteen paperiin läpileikkaus ohjelmiston käänteismallintamisesta aiheena käymällä läpi aiheeseen liittyvää kirjallisuutta. Läpileikkauksen tarkoituksena on tutustuttaa sekä kirjoittaja että lukija aiheeseen. Ohjelmiston käänteismallintamisella tarkoitetaan prosessia, jonka tarkoituksena on poimia olemassa olevasta ohjelmasta informaatiota ja tämän informaation avulla luoda uudelleen ohjelman tekemiseen tarvittua lähdekoodia tai suunnittelutietoa. Tutkittava alue käsitti peruskäsitteiden selventämisen ja käänteismallintamisen historiaan tutustumisen lisäksi sen käyttötarkoituksiin perehtymisen ohjelmistotuotannon ja tietoturvatutkimuksen työkaluna. Käyttötapaesimerkeiksi rajattiin haittasovellusten tutkiminen, salausalgoritmien avaaminen, kopiosuojausten ja digitaalisten käyttäjäoikeuksien hallinta, ohjelmistojen tietoturvan ja yleisen laadun auditointi, yhteensopivuuden saavuttaminen ja kilpailevien sovelluksien tuottaminen. Lisäksi tutkielmassa tutustuttiin takaisinmallintamisen analyysitapoihin, jotka jaettiin dynaamiseen ja staattiseen analyysiin riippuen siitä kohdistuiko analyysi ajossa olevaan ohjelmaan vai staattiseen koodiin. Samassa yhteydessä mainittiin myös joitain esimerkkejä näitä analyysitapoja tukevista työkaluista, kuten disassemblereista, käänteiskääntäjistä ja virheenjäljittäjistä. Tutkielmassa tutustuttiin myös takaisinmallintamisen tuomiin laillisuuskysymyksiin Yhdysvaltojen ja Suomen lainsäädäntöjen kannalta. Tämän jälkeen tutkielmassa keskityttiin takaisinmallintamisen häiritsemismenetelmiin, joihin kuului symbolisen tiedon tuhoaminen käännetystä sovelluksesta, koodin salaus ja pakkaus, koodin obfuskointi ja takaisinmallinnuksessa käytettyjen ohjelmien, kuten disassemblereiden ja virheenjäljittäjien häiritseminen.University of Oulu2016-12-07info:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionapplication/pdfhttp://urn.fi/URN:NBN:fi:oulu-201612063208urn:nbn:fi:oulu-201612063208fin
collection NDLTD
language Finnish
format Others
sources NDLTD
topic Information Processing Science
spellingShingle Information Processing Science
Kuusirati, H. (Henri)
Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
description Tämän tutkielman tarkoituksena oli koota yhteen paperiin läpileikkaus ohjelmiston käänteismallintamisesta aiheena käymällä läpi aiheeseen liittyvää kirjallisuutta. Läpileikkauksen tarkoituksena on tutustuttaa sekä kirjoittaja että lukija aiheeseen. Ohjelmiston käänteismallintamisella tarkoitetaan prosessia, jonka tarkoituksena on poimia olemassa olevasta ohjelmasta informaatiota ja tämän informaation avulla luoda uudelleen ohjelman tekemiseen tarvittua lähdekoodia tai suunnittelutietoa. Tutkittava alue käsitti peruskäsitteiden selventämisen ja käänteismallintamisen historiaan tutustumisen lisäksi sen käyttötarkoituksiin perehtymisen ohjelmistotuotannon ja tietoturvatutkimuksen työkaluna. Käyttötapaesimerkeiksi rajattiin haittasovellusten tutkiminen, salausalgoritmien avaaminen, kopiosuojausten ja digitaalisten käyttäjäoikeuksien hallinta, ohjelmistojen tietoturvan ja yleisen laadun auditointi, yhteensopivuuden saavuttaminen ja kilpailevien sovelluksien tuottaminen. Lisäksi tutkielmassa tutustuttiin takaisinmallintamisen analyysitapoihin, jotka jaettiin dynaamiseen ja staattiseen analyysiin riippuen siitä kohdistuiko analyysi ajossa olevaan ohjelmaan vai staattiseen koodiin. Samassa yhteydessä mainittiin myös joitain esimerkkejä näitä analyysitapoja tukevista työkaluista, kuten disassemblereista, käänteiskääntäjistä ja virheenjäljittäjistä. Tutkielmassa tutustuttiin myös takaisinmallintamisen tuomiin laillisuuskysymyksiin Yhdysvaltojen ja Suomen lainsäädäntöjen kannalta. Tämän jälkeen tutkielmassa keskityttiin takaisinmallintamisen häiritsemismenetelmiin, joihin kuului symbolisen tiedon tuhoaminen käännetystä sovelluksesta, koodin salaus ja pakkaus, koodin obfuskointi ja takaisinmallinnuksessa käytettyjen ohjelmien, kuten disassemblereiden ja virheenjäljittäjien häiritseminen.
author Kuusirati, H. (Henri)
author_facet Kuusirati, H. (Henri)
author_sort Kuusirati, H. (Henri)
title Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
title_short Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
title_full Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
title_fullStr Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
title_full_unstemmed Yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
title_sort yleiskatsaus ohjelmiston takaisinmallinnuksen nykytilaan
publisher University of Oulu
publishDate 2016
url http://urn.fi/URN:NBN:fi:oulu-201612063208
http://nbn-resolving.de/urn:nbn:fi:oulu-201612063208
work_keys_str_mv AT kuusiratihhenri yleiskatsausohjelmistontakaisinmallinnuksennykytilaan
_version_ 1718698291195019264