Skip to main content

Co je to visící ukazatel?

Visící ukazatel je programovací vada, která se vyskytuje v objektově orientovaném kódování, když objekt ukazatele ukazuje na jiný objekt, který již neexistuje.V tomto případě ukazatel není ukazatel myši, ale objekt ukazatele, který má uživatele odeslat do jiného objektu.Tato chyba vytváří jemné chyby, které se mohou časem zhoršit a také představuje bezpečnostní problém, na který mohou kvalifikovaní hackeři zaútočit.Když se programátor vymaže objekt, na který se vymaže objekt, ale nevymaže samotný ukazatel, v objektově orientovaném kódování, ve kterém je kódování rozděleno do objektů, existuje instance, která se nazývá ukazatel.Instance ukazatele je umístěna někde v programu, obvykle v nabídce a vede uživatele k jinému objektu.Pokud například uživatel zvýrazňuje část nabídky, další menu a mdash;rozbalovací a mdash;objeví se.To umožňuje programátorovi nastavit několik objektů v jedné sekci, aniž by došlo k sekci.Pokud programátor také vymaže instanci ukazatele, nebude problém.Pokud programátor zapomene a udržuje ukazatel v kódování, vytvoří to visící ukazatel a představuje problémy s kvalitou i bezpečnosti.Je to proto, že program neví, jak jednat, protože se říká, že něco dělá, ale nemůže, protože je objekt pryč.Tento akt vytváří náhodný kód nebo zhoršuje kód malými, jemnými způsoby, které je obtížné detekovat.Tyto chyby mohou být stejně malé, aby se program pohyboval o něco pomaleji, ale nakonec může udělat program mdash;a dokonce i počítač mdash;Nefunkční.

Většina programů s visícími ukazateli bude zpočátku fungovat a může pokračovat v práci měsíce nebo dokonce roky, než se chyby stanou zřejmé.Dokonce i programy, které provádějí výpočty, což znamená, že visící ukazatel je ve vzorci, mohou být stále schopny provádět jednoduché výpočty.To je jeden z důvodů, proč nalezení visících ukazatelů může být tak obtížné.

Do roku 2007 se visící ukazatel teoreticky vytvořil pouze bezpečnostní problémy.Watchfire Softwarová společnost poté vytvořila program, který ukázal, jak lze využívat visící ukazatele, což z bezpečnostního rizika činí realitu.Hackeři jsou schopni infiltrovat program prostřednictvím této chyby a mohou vložit svůj vlastní kód do chybného programu.