Skip to main content

Hva er en dinglende peker?

En dinglende peker er en programmeringsfeil som oppstår i objektorientert koding når et pekerobjekt peker på et annet objekt som ikke lenger eksisterer.I dette tilfellet er en peker ikke en musepeker, men et pekerobjekt som er ment å sende brukeren til et annet objekt.Denne feilen skaper subtile feil som kan bli verre med tiden og presenterer også et sikkerhetsproblem som dyktige hackere kan angripe.En dinglende peker skjer når en programmerer sletter objektet som blir pekt på, men ikke sletter pekeren i seg selv.

I objektorientert koding, der koding er atskilt i objekter, er det en forekomst kalt en peker.Pekerforekomsten er plassert et sted i programmet, vanligvis i en meny, og fører brukeren til et annet objekt.For eksempel, hvis brukeren fremhever en del av en meny, en annen meny mdash;en rullegardin mdash;vises.Dette gjør at programmereren kan sette opp flere objekter i en seksjon uten å trengs seksjonen.

Dingling Pointer -feilen manifesterer seg når en programmerer sletter objektet som blir pekt på.Hvis programmereren også sletter pekerforekomsten, vil det ikke være noe problem.Hvis programmereren glemmer og holder pekeren i kodingen, skaper dette en dinglende peker og presenterer både kvalitets- og sikkerhetsproblemer.

Når det gjelder kvalitet, ser en dinglende peker slurvete ut og skaper subtile feil.Dette er fordi programmet ikke vet hvordan de skal handle, fordi det får beskjed om å gjøre noe, men ikke kan fordi objektet er borte.Denne loven oppretter tilfeldig kode eller forverrer kode på små, subtile måter som det er vanskelig å oppdage.Disse feilene kan være så små som å få programmet til å bevege seg litt tregere, men kan til slutt lage programmet og mdash;og til og med datamaskinen mdash;ikke-fungerende.

De fleste programmer med dinglende pekere vil fungere innledningsvis og kan fortsette å jobbe i flere måneder eller til og med år før feilene blir åpenbare.Selv programmer som lager beregninger, noe som betyr at dinglingpekeren er i formelen, kan fremdeles være i stand til å lage enkle beregninger.Dette er en av grunnene til at det kan være så vanskelig å finne dinglende pekere.

Fram til 2007 skapte den dinglende pekeren bare sikkerhetsproblemer i teorien.The Watchfire Programvareselskapet laget deretter et program som viste hvordan dinglende pekere kan utnyttes, noe som gjorde sikkerhetsrisikoen til virkelighet.Hackere kan infiltrere et program via denne feilen og kan injisere sin egen kode i det mangelfulle programmet.