悬空指针是在面向对象的编码中,当指针对象指向另一个不再存在的对象时出现的编程缺陷。在这种情况下,指针不是鼠标指针,而是一个旨在将用户发送到另一个对象的指针对象。此缺陷会产生细微的错误,随着时间的推移,这些缺陷会...
悬空指针是在面向对象的编码中,当指针对象指向另一个不再存在的对象时出现的编程缺陷。在这种情况下,指针不是鼠标指针,而是一个旨在将用户发送到另一个对象的指针对象。此缺陷会产生细微的错误,随着时间的推移,这些缺陷会变得更糟这是一个有经验的黑客可以攻击的安全问题。当程序员删除被指向的对象但不删除指针本身时,就会出现一个悬空的指针。在面向对象的编码中,一个女人正在与一台计算机倒立,在面向对象的编码中,编码被分割成对象,有一个称为指针的实例。指针实例放在程序的某个地方,通常是在菜单中,并引导用户指向另一个对象。例如,如果用户突出显示某个菜单的某个部分,则会出现另一个菜单-下拉菜单。这允许程序员在一个部分中设置多个对象,而不会将当程序员删除被指向的对象时,悬垂指针错误就表现出来了。如果程序员也删除了指针实例,就没有问题了。如果程序员在编码中忘记并保留了指针,这就产生了一个悬空指针,并出现了质量和安全问题悬空指针看起来很邋遢,会产生细微的错误。这是因为程序不知道如何操作,因为程序被告知要执行某些操作,但不能执行,因为对象已不存在。这种操作会生成随机代码或使代码在小范围内变差,很难检测到的微妙的方式。这些错误可以很小,使程序运行得稍微慢一点,但最终可能使程序甚至计算机无法运行。大多数有悬空指针的程序在开始运行时可能会继续工作数月甚至数年,直到错误变得明显即使是进行计算的程序,也就是说悬挂指针在公式中,也可能仍然能够进行简单的计算。这就是为什么寻找悬挂指针如此困难的原因之一。直到2007年,悬空指针只在理论上造成了安全问题。Watchfire®软件公司随后制作了一个程序,展示了如何利用悬垂指针,从而使安全风险成为现实。黑客可以通过此漏洞渗透程序,并将自己的代码注入有缺陷的程序中
-
发表于 2020-08-07 10:39
- 阅读 ( 1181 )
- 分类:电脑网络