Hyppää sisältöön
    • Suomeksi
    • In English
Trepo
  • Suomeksi
  • In English
  • Kirjaudu
Näytä viite 
  •   Etusivu
  • Trepo
  • Kandidaatintutkielmat
  • Näytä viite
  •   Etusivu
  • Trepo
  • Kandidaatintutkielmat
  • Näytä viite
JavaScript is disabled for your browser. Some features of this site may not work without it.

Muistinhallinnan haavoittuvuudet C- ja C++ -ohjelmoinnissa – aika siirtyä eteenpäin?

Majakangas, Reine Sofia (2025)

 
Avaa tiedosto
MajakangasReineSofia.pdf (331.9Kt)
Lataukset: 



Majakangas, Reine Sofia
2025

Tietojenkäsittelytieteiden kandidaattiohjelma - Bachelor's Programme in Computer Sciences
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2025-08-08
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202508088143
Tiivistelmä
Manuaalinen muistinhallinta C- ja C++ -kielissä mahdollistaa sen, että niillä tuotetut ohjelmistot sisältävät muistinhallintavirheistä johtuvia haavoittuvuuksia. Nämä haavoittuvuudet ja niiden vaikutukset ovat merkittäviä sekä yhteiskunnallisesta että ohjelmistoturvallisuuden näkökulmista.

Tämä tutkielma analysoi keskeisiä muistinhallintavirheitä, kuten muistialueen ylityksiä, vapautetun muistin käyttöä sekä virheellistä pino- ja kekomuistin käsittelyä. Tutkielma osoittaa, että merkittävä osa ohjelmistojen haavoittuvuuksista johtuu muistiturvallisuuden puutteista ja että nämä haavoittuvuudet ovat edelleen mahdollisia myös kriittisissä järjestelmissä.

Tutkielmassa arvioidaan myös olemassa olevia ratkaisuja muistiturvallisuuden parantamiseksi, kuten dynaamista analyysiä ja muistiturvallisia osoittimia, sekä niiden rajoituksia suorituskyvyn kannalta. Työssä esitellään myös muistiturvallisia vaihtoehtoja C- ja C++ -kielille, kuten Rust ja TrapC.

Tutkielman tulos on, että C- ja C++ -kielten käyttöön liittyy merkittäviä riskejä, joita ei voida täysin eliminoida kehitystyökaluilla tai ohjelmointikäytännöillä. Näin ollen siirtyminen muistiturvallisempiin ohjelmointikieliin on suositeltavaa erityisesti uusien ohjelmistojen kehityksessä.
Kokoelmat
  • Kandidaatintutkielmat [11807]
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste
 

 

Selaa kokoelmaa

TekijätNimekkeetTiedekunta (2019 -)Tiedekunta (- 2018)Tutkinto-ohjelmat ja opintosuunnatAvainsanatJulkaisuajatKokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste