概述
《Linux二进制分析》中提到:ptrace 默认会覆盖 mmapa 或 mprotect 的权限,也就意味着用户可以使用 ptrace 往 text 段中写入内容,即便 text 段是只读的。但如果内核采用 pax 或者 grsec 进行了 mprtotect 的限制,加固了段的访问权限,就不可以使用 ptrace 进行修改了。这是一个安全特性。作者在一篇关于 ELF运行时感染的论文(http://vxheavens.com/lib/vrn00.html),在论文中讨论了几种绕过这些限制进行代码注入的方法。
(注:要利用printf打印Elf64_Addr类型的地址时,使用%lx即可)。
注意:
trap = (orig & ~0xff) | 0xcc; 表示下了一个中断。
最后
以上就是单纯星星为你收集整理的一个利用ptrace实现的简单调试器的全部内容,希望文章能够帮你解决一个利用ptrace实现的简单调试器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复