PE 中的“孤立图像”属性是啥?

Posted

技术标签:

【中文标题】PE 中的“孤立图像”属性是啥?【英文标题】:What is the "Isolated Image" attribute in a PE?PE 中的“孤立图像”属性是什么? 【发布时间】:2017-01-28 14:22:29 【问题描述】:

如果我查看可移植可执行文件的内部结构,在 IMAGE_OPTIONAL_HEADER 部分内有 IMAGE_DLLCHARACTERISTICS_NO_ISOLATION 字段,正如 Microsoft 提到的 here 这意味着:“图像具有隔离意识,但不应该被隔离。” .但是,我不明白这里的意思或暗示,也找不到更多信息。此选项也作为 Visual Studio 选项存在,并且在创建 Win32 应用程序项目时默认启用(VS 2015 C++)。在启用它之前,我想知道它对代码生成有什么作用。

如果有人知道,请分享。提前致谢。

【问题讨论】:

【参考方案1】:

它控制Windows加载器在加载进程时是否寻找manifest:

/ALLOWISOLATION 使操作系统执行清单查找和加载。

/ALLOWISOLATION 是默认设置。

/ALLOWISOLATION:NO 表示加载可执行文件时就像没有清单一样,并导致 EDITBIN 引用在可选标头的 DllCharacteristics 字段中设置 IMAGE_DLLCHARACTERISTICS_NO_ISOLATION 位。 当对可执行文件禁用隔离时,Windows 加载程序不会尝试为新创建的进程查找应用程序清单。新进程没有默认的激活上下文,即使在可执行文件本身中有一个清单,或者有一个名称为 executable-name.exe.manifest 的清单。

https://msdn.microsoft.com/en-us/library/69xzf91x.aspx

【讨论】:

以上是关于PE 中的“孤立图像”属性是啥?的主要内容,如果未能解决你的问题,请参考以下文章

商品期货中的PPPE是啥?

逆向调试入门-PE中的VA与RVA换算04/07

Spark中的“RDD可以存储在内存中”是啥意思?

position是啥意思

属性中的“属性:”一词是啥

PE知识复习之PE合并节