位址空間配置隨機載入

計算機科學中,位址空間配置隨機載入英語:,缩写ASLR,又稱位址空間配置隨機化位址空間布局隨機化)是一种防范内存损坏漏洞被利用的计算机安全技术。ASLR通过随机放置进程关键数据区域的定址空間来防止攻击者能可靠地跳转到内存的特定位置来利用函数。現代作業系統一般都加設這一機制,以防範惡意程式對已知位址進行Return-to-libc攻擊

作用

位址空間配置隨機載入利用隨機方式配置資料定址空間,使某些敏感資料(例如作業系統內核)配置到一個惡意程式无法事先获知的位址,令攻擊者難以進行攻擊。

實作

大部分主流的操作系统已经实现了ASLR。

Android

Android 4.0 “Ice Cream Sandwich”提供ASLR功能以保护系统和第三方应用程序。Android 4.1添加了地址无关可执行文件支持。[1] Android 5.0移除了对非PIE的支持,并要求所有动态链接库是地址无关的。[2][3] 库加载顺序随机化在2015年十月26日被接受[4]并在Android 7.0并正式加入。

OpenBSD

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

Linux

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

Windows

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

Mac OS X

AppleMac OS X Leopard 10.5(2007年十月發行)中某些函式庫導入了隨機位址偏移,但其實作並沒有提供ASLR所定義的完整保護能力。[6][7][8][9]Mac OS X Lion 10.7則對所有的應用程式均提供了ASLR支援。Apple宣稱為應用程式改善了這項技術的支援,能讓32及64位元的應用程式避開更多此類攻擊。[10]OS X Mountain Lion 10.8開始,核心及核心擴充(kext)與zones在系統啟動時也會隨機配置。[11]

iOS(iPhone, iPod touch, iPad)

AppleiOS 4.3內導入了ASLR。[12]

外部連結

參考資料

  1. . Android Developers. [7 July 2012]. (原始内容存档于2011-10-12).
  2. . [4 October 2015]. (原始内容存档于2015-10-05).
  3. . [26 June 2017]. (原始内容存档于2023-08-11).
  4. Theo De Raadt. . [2009-08-26]. (原始内容存档于2012-07-16).
  5. . securosis.com. 29 October 2007 [10 April 2012]. (原始内容存档于2008-04-03).
  6. . [2012-07-20]. (原始内容存档于2009-03-23).
  7. . [2012-07-20]. (原始内容存档于2008-01-11).
  8. King, Rob. . Dvlabs.tippingpoint.com. 7 November 2007 [10 April 2012]. (原始内容存档于2012-10-18). 已忽略文本“DVLabs” (帮助); 已忽略文本“New Leopard Security Features – Part I: ASLR” (帮助)
  9. . Apple Inc. [6 June 2011]. (原始内容存档于2011年6月6日).
  10. . [19 February 2012]. (原始内容存档于2015-09-23).
  11. Pwn2Own day 2: iPhone, BlackBerry beaten; Chrome, Firefox no-shows 页面存档备份,存于, Ars Technica, 11 March 2011
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.