Address space layout randomization

Address space layout randomization (ASLR) is a computer security technique involved in preventing exploitation of memory corruption vulnerabilities. In order to prevent an attacker from reliably jumping to, for example, a particular exploited function in memory, ASLR randomly arranges the address space positions of key data areas of a process, including the base of the executable and the positions of the stackheap and libraries.

 

Address space randomization hinders some types of security attacks by making it more difficult for an attacker to predict target addresses. For example, attackers trying to execute return-to-libc attacks must locate the code to be executed, while other attackers trying to execute shellcode injected on the stack have to find the stack first. In both cases, the system obscures related memory-addresses from the attackers. These values have to be guessed, and a mistaken guess is not usually recoverable due to the application crashing.

 

Several mainstream, general-purpose operating systems implement ASLR.

https://en.wikipedia.org/wiki/Address_space_layout_randomization

 

aslr是一种针对 缓冲区溢出安全保护技术,通过对 、共享库映射等线性区布局的随机化,通过增加攻击者预测目的地址的难度,防止攻击者直接定位攻击代码位置,达到阻止 溢出攻击的目的的一种技术。
ASLR(Address space layout randomization)是一种针对 缓冲区溢出安全保护技术,通过对 、共享库映射等线性区布局的随机化,通过增加攻击者预测目的地址的难度,防止攻击者直接定位攻击代码位置,达到阻止 溢出攻击的目的。据研究表明ASLR可以有效的降低 缓冲区溢出攻击的成功率,如今 LinuxFreeBSDWindows等主流操作系统都已采用了该技术。
在学术研究上,已经有不少工作对其进行改进。比如进行运行时动态细粒度的随机化(参见论文 Remix: On-demand Live Randomization)。
 

OpenBSD

OpenBSD作为一个主流的操作系统,已在ASLR推出2年后支持,并在默认情况下是打开的。

Linux

Linux已在内核版本2.6.12中添加ASLR。

Windows

Windows Server 2008,Windows 7,Windows Vista,Windows Server 2008 R2,默认情况下启用ASLR,但它仅适用于动态链接库和可执行文件。

Mac OS X

AppleMac OS X Leopard10.5(2007年十月发行)中某些库导入了随机地址偏移,但其实现并没有提供ASLR所定义的完整保护能力。而 Mac OS X Lion10.7则对所有的应用程序均提供了ASLR支持。 Apple宣称为应用程序改善了这项技术的支持,能让32及64位的应用程序避开更多此类攻击。从 OS X Mountain Lion10.8开始,核心及核心扩充(kext)与zones在系统启动时也会随机配置。

iOS(iPhone, iPod touch, iPad)

AppleiOS4.3内导入了ASLR。

Android

Android 4.0提供地址空间配置随机加载(ASLR),以帮助保护系统和第三方应用程序免受由于内存管理问题的攻击,在Android 4.1中加入地址无关代码(position-independent code)的支持。

转载于:https://www.cnblogs.com/feng9exe/p/7988152.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值