加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Unix上的分段错误 – 可能的堆栈损坏

发布时间:2020-12-16 01:44:52 所属栏目:安全 来源:网络整理
导读:我正在查看Unix中运行的进程的核心. 通常我可以自己工作并根据回溯来尝试识别内存问题. 在这种情况下,我不知道如何继续. 首先,回溯只给出3帧,我期待更多. 对于这些帧,所呈现的所有功能参数似乎完全无效. 没有我期望的. 某些指针参数与它们相关联 – 无法访问
我正在查看Unix中运行的进程的核心.
通常我可以自己工作并根据回溯来尝试识别内存问题.
在这种情况下,我不知道如何继续.

首先,回溯只给出3帧,我期待更多.
对于这些帧,所呈现的所有功能参数似乎完全无效.
没有我期望的.

某些指针参数与它们相关联 – 无法访问地址处的内存

这会暗示某种完整的堆栈损坏吗?
我使用libumem运行该过程,并且所有缓冲区都被报告为干净.

umem_status也没有报道.

所以基本上我很难过.
可能的原因是什么?
我应该在代码中查找什么,因为libumem似乎没有报告任何错误.

关于如何调试furhter的任何建议?我应该考虑mdb中的任何额外功能?

谢谢.

解决方法

堆栈损坏听起来像是一种可能性.有些事要尝试:

>打开所有编译器警告即可!>运行lint!>如果可能的话,试试建设&在OpenBSD上测试您的程序,OpenBSD内置了大量的内存损坏检测功能.>如果可能,请使用ProPolice,StackGuard等工具.>如果您可以轻松地重现此问题,则值得在调试器中进行操作.尽可能缩小范围,然后逐步完成.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读