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

什么是x86中的.data和.text?

发布时间:2020-12-14 23:21:42 所属栏目:资源 来源:网络整理
导读:1 .datavalue: .long 0x69.text#... 2 .textvalue: .long 0x69#... 我是一名学习x86的学生,我注意到如果它在.text下,则无法修改该值.我一直试图解读原因,但我找不到它.有人可以带我到我能读到的地方或简要解释一下吗? 解决方法 .text部分是实际可执行指令所
1
.data
value: .long 0x69
.text
#...

2

.text
value: .long 0x69
#...

我是一名学习x86的学生,我注意到如果它在.text下,则无法修改该值.我一直试图解读原因,但我找不到它.有人可以带我到我能读到的地方或简要解释一下吗?

解决方法

.text部分是实际可执行指令所在的可执行文件的区域,.data部分是基于非堆栈的变量和常量所在的可执行文件的区域.为什么你不能在.text段修改值的原因是因为所谓的安全功能的 W^X(又名帕克斯Exec的盾,DEP等),这是在最现代的操作系统,其中OS不允许区域的启用在执行时内存不可写.它可以帮助缓解任意代码注入.

(编辑:李大同)

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

    推荐文章
      热点阅读