Ero sivun ”Takaovi” versioiden välillä

[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
{{Sodankäynti internetissä}} lisätty sivulle
Ipr1 (keskustelu | muokkaukset)
khvähemmän toistoa
Rivi 8:
== Thompsonin takaovi ==
 
Klassinen esimerkki takaovesta on [[Ken Thompson]]in kehittämäesitteli muokattuartikkelissaan versioja luennossaan ''Reflections on Trusting Trust'' itseään toistavan ohjelman, joka asentuisi [[Unixohjelmointikielen kääntäjä]]inän ja tunnistaisi <ttcode>login</ttcode>-ohjelmastaohjelman, jolloin siinä olisi takaovi tietyn salasanan hyväksymiseen.<ref name="rttkt">{{Verkkoviite | osoite = https://dl.acm.org/doi/pdf/10.1145/358198.358210 | nimeke = Reflections on Trusting Trust | tekijä = Ken Thompson | julkaisu = Communications of the ACM | ajankohta = elokuu 1984 | tiedostomuoto = PDF | viitattu = 2.10.2020 | kieli = {{en}} }}</ref><ref>{{Lehtiviite | Tekijä=Thompson, Ken | Otsikko=Reflections on Trusting Trust | Julkaisu=Communications of the ACM | Ajankohta=1984 | Vuosikerta=27 | Numero=8 | Sivut=761–763 | www=http://cm.bell-labs.com/who/ken/trust.html | Viitattu=4.9.2008 | Kieli={{en}} }}</ref><ref>{{Verkkoviite | Osoite=http://catb.org/jargon/html/B/back-door.html | Nimeke=The Jargon File: back door | Viitattu=4.9.2008 | Kieli={{en}} }}</ref> SeEsimerkissä onoleva myös[[Troijalainen malliesimerkki(tietotekniikka)|troijalainen]] siitälisää takaoven [[lähdekoodi]]in ennen käännöstä ja lopuksi poistaa sen, etteijolloin kaikkiatakaovea takaoviaei voi löytää ohjelman [[lähdekoodi]]alähdekoodia [[auditointi|auditoimalla]].<ref name="rttkt" />
 
Thompson lisäsi [[C (ohjelmointikieli)|C-kielen]] [[Ohjelmointikielen kääntäjä|kääntäjään]] ominaisuuden, joka:
* <tt>login</tt>-ohjelmaa käännettäessä lisää sen [[konekieli]]koodiin takaoven, joka sallii sisäänkirjautumisen myös ylimääräisellä salaisella avaimella
* C-kääntäjää käännettäessä lisää saman ominaisuuden uuteen konekieliseen C-kääntäjään.
 
Kunhan peukaloitu koodi saadaan kerran ujutetuksi järjestelmään, sen jälkeen voidaan sekä C-kääntäjä että <tt>login</tt>-ohjelma kääntää täysin puhtaasta (takaovea sisältämättömästä) lähdekoodista, ja silti takaovi säilyy. Takaovea ei voi millään auditoinnilla havaita kummankaan ohjelman lähdekoodista, sillä kääntäjä lisää sen vasta konekieliseen koodiin.
 
== Lähteet ==
Noudettu kohteesta ”https://fi.wikipedia.org/wiki/Takaovi