位址空間配置隨機載入

维基百科,自由的百科全书
跳转至: 导航搜索

計算機科學中,位址空間配置隨機載入英语Address space layout randomization (ASLR)),又稱為位址空間布局隨機化,是指利用隨機方式配置資料位址。一般現代作業系統中都加設這一機制,以防範惡意程式對已知位址進行攻擊

作用[编辑]

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

實作[编辑]

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

OpenBSD[编辑]

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

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

iOS (iPhone, iPod touch, iPad)[编辑]

AppleiOS 4.3 內導入了 ASLR。[8]

Android[编辑]

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

外部連結[编辑]

參考資料[编辑]

  1. ^ Theo De Raadt. Exploit Mitigation Techniques (updated to include random malloc and mmap) at OpenCON 2005. [26 08, 2009]. 
  2. ^ Quick Leopard Update. securosis.com. 29 October 2007 [10 April 2012]. 
  3. ^ Matasano Chargen » A Roundup Of Leopard Security Features[失效連結]
  4. ^ Matasano Chargen » What We’ve Since Learned About Leopard Security Features[失效連結]
  5. ^ King, Rob. TippingPoint | DVLabs | New Leopard Security Features – Part I: ASLR. Dvlabs.tippingpoint.com. 7 November 2007 [10 April 2012]. 
  6. ^ Security. Apple Inc. [6 June 2011](原始内容存档于6 June 2011). 
  7. ^ OS X 10.8 Mountain Lion. [19 February 2012]. 
  8. ^ Pwn2Own day 2: iPhone, BlackBerry beaten; Chrome, Firefox no-shows, Ars Technica, 11 March 2011
  9. ^ [1],[Android Developers][Retrieved 7 July 2012]