程序各个区段是否EXECUTEABLE,该如何解决

程序各个区段是否EXECUTEABLE今天写了个example程序跑了一下,把代码写到.data?.data .const 堆栈中,都能执

程序各个区段是否EXECUTEABLE
今天写了个example程序跑了一下,把代码写到.data?.data .const 堆栈中,都能执行成功。
而之前我只知道堆栈是可读可写可执行的,但不知道(在默认情况下)数据段是否可执行。是否有理论支持?以确定这些段都能执行代码。
请教,希望有知道的朋友告诉一下。谢谢!
如下,我并没有看到除了.text段的其它段有EXECUTE属性啊。
->Section Header Table
  1. item:
  Name: .text

  Characteristics: 0x60000020
  (CODE, EXECUTE, READ)

  2. item:
  Name: .rdata

  Characteristics: 0x40000040
  (INITIALIZED_DATA, READ)

  3. item:
  Name: .data

  (INITIALIZED_DATA, READ, WRITE)




[解决办法]
关注
[解决办法]
你的程序运行在什么环境中?DOS?还是Windows? DOS是没有保护机制的,除非你进入DOS保护模式