Toward Hardware-assisted Run-time Protection

Tutkimustuotos: Doctoral ThesisCollection of Articles

Abstrakti

Muistiturvattomien ohjelmointikielten ohjelmistovirheet, kuten puskurin ylivuodot, ovat merkittävä kyberhyökkäysten mahdollistaja. Niiden seurauksena haavoittuvia ohjelmistoja voidaan hyväksikäyttää ajonaikaisten hyökkäysten avulla siten, että niissä laukaistaan tahattomia toimintoja, ja siten päästä luvattomasti käsiksi tietojärjestelmään. Hyökkääjä voi esimerkiksi korruptoimalla muistiviitteitä ohjelmakoodiin kaapata ohjelman suorituksen, ja uudellenohjata prosessorin suorittamaan valitsemiaan käskyjä. Tällaiset kontrollivuohyökkäykset (eng. control-flow attacks) voivat olla erityisen vaarallisia koska niiden avulla voidaan suorittaa mielivaltaista ohjelmakoodia ja jopa ottaa uhrina oleva tietojärjestelmä täysin haltuun. Myös niin sanottujen data-orientoituneiden hyökkäysten (eng. data-oriented attacks) on näytetty mahdollistavan yhtä ilmaisuvoimaisia hyökkäyksiä manipuloimatta uhriohjelman kontrollivuota. Tietoturvatutkimusta on viimeisen kolmenkymmenen vuoden aikana sävyttänyt kilpavarustelu yhä edistyneempien hyökkäysten ja niitä vastaan kehitettyjen turvamekanismien välillä. Ohjelmistotason turvamekanismit, jotka jälkiasentavat muistuturvallisuutta tai kontrollivuon eheyttä (eng. control-flow integrity, CFI) ylläpitäviä mekanismeja C tai C++ -ohjelmiin, estävät useat hyökkäykset, mutta niistä aiheutuvat huomattavat suorituskykykustannukset rajoittavat niiden käyttöönottoa. Ymmärryksessä ajonaikaisista hyökkäyksistä ja niitä vastaan puolustautumisessa on tehty huomattavia edistysaskelia, etenkin sellaisten hyökkäysten suhteen, jotka pyrkivät kiertämään CFI -puolustuskeinot. Käyttännöllisten puolustusmekanismien on kuitenkin tasapainoteltava turvallisuuden, suorituskyvyn ja hyödynnettävyyden välillä. Tämän väitöskirjan tavoitteena on tutkia kuinka laitteistoavusteiset puolustuskeinot voivat suojata ohjelmistoja ajonaikaisilta hyökkäyksiltä ilman huomattavia suorituskykyongelmia. Laitteistoavusteisten puolustuskeinojen on todettu parantavan radikaalisti kykyä havaita hyökkäyksiä, mutta samalla ne vaikeuttavat käyttöönottoa mm. vaatimalla 1) huomattavia muutoksia prosessoriarkkitehtuuriin ja ohjelmistopinoon sekä 2) ylirajoittavaa turvallisuuspolitiikkaa, mikä johtaa yhteensopivuusongelmiin C ja C++ -ohjelmointikielien kanssa. Tämän väitöskirjan tulokset edistävät erityisesti tietämystä seuraavista tutkimusaiheista:1) laitteistoavusteisten puolustuskeinojen soveltaminen sulautettuihin järjestelmiin, mukaan lukien suorituskykyrajoitteiset mikrokontrollerijärjestelmät,2) suoritetun kontrollivuon todistaminen etänä (eng. remote attestation) sulautetulla laitteella tapahtuvien hyökkäysten havaitsemiseksi ja laitteen käyttäytymisen todentamiseksi, sekä3) laitteistoavusteisten puolustuskeinojen kehittäminen CFI:hin perustuvien puolustuskeinoja kiertäviä hyökkäyksiä vastaan.Lopuksi esitän omia huomioitani laitteistoavusteisten puolustuskeinojen nykytilasta, ja potentiaalisista tulevista tutkimusaiheista.
Julkaisun otsikon käännösToward Hardware-assisted Run-time Protection
AlkuperäiskieliEnglanti
PätevyysTohtorintutkinto
Myöntävä instituutio
  • Aalto-yliopisto
Valvoja/neuvonantaja
  • Asokan, N., Vastuuprofessori
Kustantaja
Painoksen ISBN978-952-64-0064-8
Sähköinen ISBN978-952-64-0065-5
TilaJulkaistu - 2020
OKM-julkaisutyyppiG5 Tohtorinväitöskirja (artikkeli)

Tutkimusalat

  • alustaturvallisuus
  • ajonaikaiset hyökkäykset
  • laitteistoavusteiset puolustuskeinot

Sormenjälki Sukella tutkimusaiheisiin 'Toward Hardware-assisted Run-time Protection'. Ne muodostavat yhdessä ainutlaatuisen sormenjäljen.

Siteeraa tätä