Oracle Solaris 标记了许多用户级二进制文件,以启用地址空间布局随机化 (ASLR)。ASLR 会对地址空间的公钥部分的起始地址进行随机化处理。该安全防御机制可以导致返回导向编程 (Return Oriented Programming, ROP) 攻击在试图利用软件漏洞时失败。
区域为其流程继承了该随机布局。由于使用 ASLR 可能并不适合所有二进制文件,因此,ASLR 的使用可以在区域级别和二进制级别进行配置。
三种 ASLR 配置是:
禁用-对所有二进制文件禁用 ASLR。
标记的二进制文件-ASLR 由编码到二进制文件中的标记进行控制。
ASLR 的缺省 Oracle Solaris 值为 tagged-binaries。Oracle Solaris 发行版中的许多二进制文件都被标记为使用 ASLR。
启用-对除明确标记为禁用 ASLR 外的所有二进制文件启用 ASLR。
sxadm 命令用于配置 ASLR。您必须承担 root 角色才能运行此命令。有关示例和信息,请参见 sxadm(1M) 手册页。有关开发者信息,请参见面向开发者的 Oracle Solaris 11 安全性指南 。