吃冬瓜有什么好处| 什么叫不动产| 吃桂圆干有什么好处和坏处| 什么字永远写不好| 吃刺猬有什么好处| zw是什么意思| 没有润滑油用什么代替| 羊水指数和羊水深度有什么区别| 头孢是治疗什么的| 有眼不识泰山是什么意思| 一个口一个麦念什么| 阿昔洛韦片是什么药| 外感是什么意思| 汗疱疹是什么原因引起| 一个米一个更念什么| 小酌怡情下一句是什么| 陈皮和什么泡水喝最好| 什么含维生素d| 上火吃什么药最有效果| 脾阳虚吃什么药| 为什么一喝酒就头疼| 腹痛拉稀什么原因| 八五年属什么生肖| 1024是什么星座| 发烧打冷颤是什么原因| 孕晚期呕吐是什么原因| 蛋白粉什么时候吃最好| 金骏眉茶是什么茶| 脸上长癣用什么药膏| 驴血是什么颜色| 女同性恋叫什么| 十一月份属于什么星座| 75年的兔是什么命| 属狗什么命| hct是什么| 凌晨4点是什么时辰| 玫琳凯属于什么档次| 己巳五行属什么| 银耳和雪耳有什么区别| 贿赂是什么意思| 后厨是做什么的| 验血糖挂什么科| 老是口渴是什么原因| 讣告是什么意思| 官杀混杂是什么意思| dic是什么| 长歌怀采薇是什么意思| 每天早上起床口苦是什么原因| 一心一意指什么生肖| 家里为什么有蚂蚁| 打假是什么意思| 生完孩子可以吃什么水果| 磁共振是检查什么| 宝齐莱手表什么档次| 男性尿道口流脓吃什么药最管用| 渗液是什么意思| 热病是什么病| 右肺上叶结节什么意思| 宝宝干呕是什么原因| 刘邦是什么星座| 为什么健身后体重反而重了| 宫颈纳囊是什么意思| 粘米粉是什么米做的| 火鸡面为什么那么辣| 戴尾戒是什么意思| 阳春白雪是什么意思| 闰6月是什么意思| 看睾丸去医院挂什么科| 豆浆和豆奶有什么区别| 进产房吃什么补充体力| 1月14日什么星座| 感统失调是什么意思| 男人蛋疼是什么原因| 小孩子拉肚子吃什么药| 腹胀是什么原因引起的| 排卵试纸什么时候测最准确| 阿西是什么意思| 怀孕初期吃什么蔬菜好| 常务理事是什么职位| 射精出血是什么原因引起的| 苍耳是什么| 母亲过生日送什么礼物| 5月23是什么星座| 什么是疝气| 腺病毒阳性是什么意思| 腹膜炎吃什么药| 小便不舒服吃什么药| 梦见自己相亲是什么征兆| 羡慕的意思是什么| 蒲菜是什么菜| 梦见吃核桃是什么意思| 口腔溃疡什么原因| 咖啡有什么功效| 支原体感染是什么意思| 血小板偏低有什么危害| 白细胞计数偏低是什么原因| 邹字五行属什么| 什么是三农| 指甲有白点是什么原因| 容易被吓到是什么原因| 便秘屁多是什么原因| 风疟病是什么意思| 蜂蜜水什么时候喝最好| 秦始皇的母亲叫什么名字| 尿液检查红细胞高是什么原因| 哈密瓜为什么会苦| 冰妹是什么| 螺蛳粉为什么那么臭| lsil是什么意思| 宫颈粘液栓是什么样的| 空调为什么不制冷| 鸡毛换糖是什么意思| 为什么会肠鸣| 百褶裙配什么鞋子| 白芝麻有什么功效| 活佛是什么意思呀| 撒西不理是什么意思| 紧张手抖是什么原因| 月子吃什么| 拔牙挂什么科| 提肛有什么好处| 儿童经常头晕什么原因导致的| 知了的学名叫什么| 入殓师是什么意思| 暂住证需要什么材料| 后背疼是什么病的前兆| 北京立冬吃什么| 头晕目赤是什么意思| 什么叫钙化| 双侧上颌窦炎是什么病| 32属什么生肖| 吐气如兰是什么意思| 为什么心里总想一个人| 女性尿道炎吃什么药| 震卦代表什么| 养性是什么意思| 正局级是什么级别| jay是什么意思| 加味逍遥丸和逍遥丸有什么区别| 吃什么能让子宫瘤变小| 梦见小葱是什么意思| 梦遗是什么| 凌字五行属什么| 伸什么缩什么| sayno是什么意思| 脖子落枕挂什么科| 挑什么| jio是什么意思| 21金维他什么时候吃效果最好| 乳房疼痛吃什么消炎药| 退工单是什么| 闰六月有什么讲究| 咖啡加奶叫什么| 老头晕是什么原因引起的| 非典型腺细胞是什么意思| 戊申五行属什么| 脚底板痛什么原因| 家长里短是什么意思| 肝化灶是什么意思| 吃燕麦片有什么好处| 什么是感光食物| 铲子是什么意思| 体内火气大吃什么降火| 持家是什么意思| 说话口臭是什么原因引起的| 为什么一直咳嗽| 蛇盘疮长什么样| 咸鱼什么意思| 巳时是什么时辰| 口大是什么字| 什么药治痒效果最好| 血稠吃什么食物好得快| 肠胀气是什么原因引起的怎么解决| 霸王餐是什么意思| 7月30号是什么星座| 灵芝泡酒有什么功效| 煮黑豆吃有什么功效| 为什么会长针眼| 狗摇尾巴是什么意思| 磋磨什么意思| 林可霉素主治什么病| 磨豆浆是什么意思| 房颤用什么药| 梦见白事场面什么意思| 贲门ca是什么意思| 混合型高脂血症是什么意思| 什么草地| 什么的嗓门| ns是什么| dd是什么意思| fpu是什么意思| 夏天能干什么| 红花泡水喝有什么功效| 劳燕分飞是什么意思| 獐子是什么动物| 为什么大姨妈迟迟不来| 剪舌系带挂什么科| 痛经是什么意思| 水杯什么材质好| 睾丸痛什么原因| 盆腔积液有什么症状有哪些| 足齐念什么| 五心烦热是什么意思| 慢性萎缩性胃炎伴糜烂吃什么药| 什么的河水| 肺部疼痛什么原因| 身上长癣是什么原因引起的| 蛞蝓是什么意思| 气管炎吃什么食物好| 腹泻拉水吃什么药| leg是什么意思| 一拃长是什么意思| 风疹吃什么药好得快| 宝宝发烧是什么原因引起的| 名士手表属于什么档次| 戒指戴哪个手指代表什么| 肋软骨炎吃什么药最好| 情难自禁是什么意思| 十一月二十二是什么星座| 牙周炎有什么症状| 什么叫蛋白质| 何德何能是什么意思| 眼晴干涩模糊用什么药| 拖累是什么意思| hrv是什么病毒| 慢性阑尾炎挂什么科| 泌尿系统感染什么症状| 端庄是什么意思| 牙龈肿痛挂什么科| 猫藓用什么药| 未时右眼跳是什么预兆| 右手中指指尖麻木是什么原因| 五险都有什么| 女人脸黄是什么原因该怎么调理| 牙结石不除有什么危害| 好奇的什么| 忠心不二是什么生肖| 槐花什么时候开花| 药材种植什么最赚钱| 口臭吃什么药| 肺肿瘤有什么症状| 月经前有褐色分泌物是什么原因| ovs是什么品牌| 肝郁血虚吃什么中成药| 卵泡刺激素高说明什么| 黑洞到底是什么| 什么是西米| 橄榄色是什么颜色| 吃什么会瘦| 眩晕是什么症状| 腋下有味道是什么原因| 喝什么醒酒| 贝前列素钠片主治什么病| bp是什么单位| 灵五行属性是什么| 西瓜有什么好处| 枸杞搭配什么喝最好| 阿联酋和迪拜什么关系| b超是什么| 货比三家是什么意思| 什么菊花茶降火最好| tin什么意思| 什么东西化痰效果最好最快| 霍金什么时候去世| 百度Jump to content

马冲什么生肖

From Wikipedia, the free encyclopedia
百度 而最亮眼的要数显示屏了,据说这是第八代凯美瑞第一次搭载三屏互联系统,包括10英寸彩色抬头显示屏(HUD)、8英寸中控触屏和7英寸仪表盘液晶屏的信息互联功能,各类信息一目了然,操作起来也很便捷。

Address space layout randomization (ASLR) is a computer security technique involved in preventing exploitation of memory corruption vulnerabilities.[1] In order to prevent an attacker from reliably redirecting code execution 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 stack, heap and libraries. When applied to the kernel, this technique is called kernel address space layout randomization (KASLR).[2]

History

[edit]

The Linux PaX project first coined the term "ASLR", and published the first design and implementation of ASLR in July 2001 as a patch for the Linux kernel. It is seen as a complete implementation, providing a patch for kernel stack randomization since October 2002.[3]

The first mainstream operating system to support ASLR by default was OpenBSD version 3.4 in 2003,[4][5] followed by Linux in 2005.

Benefits

[edit]

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 makes related memory-addresses unpredictable from the attackers' point of view. These values have to be guessed, and a mistaken guess is not usually recoverable due to the application crashing.

Effectiveness

[edit]

Address space layout randomization is based upon the low chance of an attacker guessing the locations of randomly placed areas. Security is increased by increasing the search space. Thus, address space randomization is more effective when more entropy is present in the random offsets. Entropy is increased by either raising the amount of virtual memory area space over which the randomization occurs or reducing the period over which the randomization occurs. The period is typically implemented as small as possible, so most systems must increase VMA space randomization.

To defeat the randomization, attackers must successfully guess the positions of all areas they wish to attack. For data areas such as stack and heap, where custom code or useful data can be loaded, more than one state can be attacked by using NOP slides for code or repeated copies of data. This allows an attack to succeed if the area is randomized to one of a handful of values. In contrast, code areas such as library base and main executable need to be discovered exactly. Often these areas are mixed, for example stack frames are injected onto the stack and a library is returned into.

The following variables can be declared:

  • (entropy bits of stack top)
  • (entropy bits of mmap() base)
  • (entropy bits of main executable base)
  • (entropy bits of heap base)
  • (attacked bits per attempt of stack entropy)
  • (attacked bits per attempt of mmap() base entropy)
  • (attacked bits per attempt of main executable entropy)
  • (attacked bits per attempt of heap base entropy)
  • (attempts made)
  • (total amount of entropy: )

To calculate the probability of an attacker succeeding, a number of attempts α carried out without being interrupted by a signature-based IPS, law enforcement, or other factor must be assumed; in the case of brute forcing, the daemon cannot be restarted. The number of relevant bits and how many are being attacked in each attempt must also be calculated, leaving however many bits the attacker has to defeat.

The following formulas represent the probability of success for a given set of α attempts on N bits of entropy.

  • (isolated guessing; address space is re-randomized after each attempt)
  • (systematic brute forcing on copies of the program with the same address space)

In many systems, can be in the thousands or millions. On 32-bit systems, a typical amount of entropy N is 8 bits.[6] For 2004 computer speeds, Shacham and co-workers state "... 16 bits of address randomization can be defeated by a brute force attack within minutes."[7] (The authors' statement depends on the ability to attack the same application multiple times without any delay. Proper implementations of ASLR, like that included in grsecurity, provide several methods to make such brute force attacks infeasible. One method involves preventing an executable from executing for a configurable amount of time if it has crashed a certain number of times.) On modern 64-bit systems, these numbers typically reach the millions at least.[citation needed]

Android,[8][non-primary source needed] and possibly other systems,[which?] implement Library Load Order Randomization, a form of ASLR which randomizes the order in which libraries are loaded. This supplies very little entropy. An approximation of the number of bits of entropy supplied per needed library appears below; this does not yet account for varied library sizes, so the actual entropy gained is really somewhat higher. Attackers usually need only one library; the math is more complex with multiple libraries, and shown below as well. The case of an attacker using only one library is a simplification of the more complex formula for .

  • l (number of libraries loaded)
  • β (number of libraries used by the attacker)

These values tend to be low even for large values of l, most importantly since attackers typically can use only the C standard library and thus one can often assume that . However, even for a small number of libraries there are a few bits of entropy gained here; it is thus potentially interesting to combine library load order randomization with VMA address randomization to gain a few extra bits of entropy. These extra bits of entropy will not apply to other mmap() segments, only libraries.

Reducing entropy

[edit]

Attackers may make use of several methods to reduce the entropy present in a randomized address space, ranging from simple information leaks to attacking multiple bits of entropy per attack (such as by heap spraying). There is little that can be done about this.

It is possible to leak information about memory layout using format string vulnerabilities. Format string functions such as printf use a variable argument list to do their job; format specifiers describe what the argument list looks like. Because of the way arguments are typically passed, each format specifier moves closer to the top of the stack frame. Eventually, the return pointer and stack frame pointer can be extracted, revealing the address of a vulnerable library and the address of a known stack frame; this can eliminate library and stack randomization as an obstacle to an attacker.

One can also decrease entropy in the stack or heap. The stack typically must be aligned to 16 bytes, and so this is the smallest possible randomization interval; while the heap must be page-aligned, typically 4096 bytes. When attempting an attack, it is possible to align duplicate attacks with these intervals; a NOP slide may be used with shellcode injection, and the string '/bin/sh' can be replaced with '////////bin/sh' for an arbitrary number of slashes when attempting to return to system. The number of bits removed is exactly for n intervals attacked.

Such decreases are limited due to the amount of data in the stack or heap. The stack, for example, is typically limited to MB[9] and grows to much less; this allows for at most 19 bits, although a more conservative estimate would be around 8–10 bits corresponding to 4–16 KB[9] of stack stuffing. The heap on the other hand is limited by the behavior of the memory allocator; in the case of glibc, allocations above 128 KB are created using mmap, limiting attackers to 5 bits of reduction. This is also a limiting factor when brute forcing; although the number of attacks to perform can be reduced, the size of the attacks is increased enough that the behavior could in some circumstances become apparent to intrusion detection systems.

Limitations

[edit]

ASLR-protected addresses can be leaked by various side channels, removing mitigation utility. Recent attacks have used information leaked by the CPU branch target predictor buffer (BTB) or memory management unit (MMU) walking page tables. It is not clear if this class of ASLR attack can be mitigated. If they cannot, the benefit of ASLR is reduced or eliminated.

Empirical analysis

[edit]

In August 2024 a paper [10] was published with an empirical analysis of major desktop platforms, including Linux, macOS, and Windows, by examining the variability in the placement of memory objects across various processes, threads, and system restarts. The results show that while some systems as of 2024, like Linux distributions, provide robust randomization, others, like Windows and macOS, often fail to adequately randomize key areas like executable code and libraries. Moreover, they found a significant entropy reduction in the entropy of libraries after the Linux 5.18 version and identify correlation paths that an attacker could leverage to reduce exploitation complexity significantly.

Implementations

[edit]

Several mainstream, general-purpose operating systems implement ASLR.

Android

[edit]

Android 4.0 Ice Cream Sandwich provides address space layout randomization (ASLR) to help protect system and third-party applications from exploits due to memory-management issues. Position-independent executable support was added in Android 4.1.[11] Android 5.0 dropped non-PIE support and requires all dynamically linked binaries to be position independent.[12][13] Library load ordering randomization was accepted into the Android open-source project on 26 October 2015,[8][non-primary source needed] and was included in the Android 7.0 release.

DragonFly BSD

[edit]

DragonFly BSD has an implementation of ASLR based upon OpenBSD's model, added in 2010.[14] It is off by default, and can be enabled by setting the sysctl vm.randomize_mmap to 1.

FreeBSD

[edit]

Support for ASLR appeared in FreeBSD 13.0.[15][16] It is enabled by default since 13.2.[17]

iOS (iPhone, iPod touch, iPad)

[edit]

Apple introduced ASLR in iOS 4.3 (released March 2011).[18]

KASLR was introduced in iOS 6.[19] The randomized kernel base is 0x01000000 + ((1+0xRR) * 0x00200000), where 0xRR is a random byte from SHA1 (random data) generated by iBoot (the 2nd-stage iOS Boot Loader).[20]

Linux

[edit]

The Linux kernel enabled a weak form of ASLR by default since the kernel version 2.6.12, released in June 2005.[21] The PaX and Exec Shield patchsets to the Linux kernel provide more complete implementations. The Exec Shield patch for Linux supplies 19 bits of stack entropy on a period of 16 bytes, and 8 bits of mmap base randomization on a period of 1 page of 4096 bytes. This places the stack base in an area 8 MB wide containing 524,288 possible positions, and the mmap base in an area 1 MB wide containing 256 possible positions.

ASLR can be disabled for a specific process by changing its execution domain, using personality(2).[22] A number of sysctl options control the behavior of mainline ASLR. For example, kernel.randomize_va_space controls what to randomize; the strongest option is 2. vm.mmap_rnd_bits controls how many bits to randomize for mmap.[23]

Position-independent executable (PIE) implements a random base address for the main executable binary and has been in place since April 18, 2004. It provides the same address randomness to the main executable as being used for the shared libraries. The PIE feature cannot be used together with the prelink feature for the same executable. The prelink tool implements randomization at prelink time rather than runtime, because by design prelink aims to handle relocating libraries before the dynamic linker has to, which allows the relocation to occur once for many runs of the program. As a result, real address space randomization would defeat the purpose of prelinking.

In 2014, Marco-Gisbert and Ripoll disclosed offset2lib technique that weakens Linux ASLR for PIE executables. Linux kernels load PIE executables right after their libraries; as a result, there is a fixed offset between the executable and the library functions. If an attacker finds a way to find the address of a function in the executable, the library addresses are also known. They demonstrated an attack that finds the address in fewer than 400 tries. They proposed a new randomize_va_space=3 option to randomize the placement of the executable relative to the library,[6] but it is yet to be incorporated into the upstream as of 2024.[24]

The Linux kernel 5.18 released May 2022 reduced the effectiveness of both 32-bit and 64-bit implementations. Linux filesystems call thp_get_unmapped_area to respond to a file-backed mmap. With a change in 5.18, files greater than 2 MiB are made to return 2 MiB-aligned addresses, so they can be potentially backed by huge pages. (Previously, the increased alignment only applied to Direct Access (DAX) mappings.) In the meantime, the C library (libc) has, over time, grown in size to exceed this 2 MiB threshold, so instead of being aligned to a (typically) 4 KiB page boundary as before, these libraries are now 2 MiB-aligned: a loss of 9 bits of entropy. For 32-bit Linux, many distributions show no randomization at all in the placement of the libc. For 64-bit Linux, the 28 bits of entropy is reduced to 19 bits. In response, Ubuntu has increased its mmap_rnd_bits setting.[25] Martin Doucha added a Linux Test Project testcase to detect this issue.[26]

Kernel address space layout randomization

[edit]

Kernel address space layout randomization (KASLR) enables address space randomization for the Linux kernel image by randomizing where the kernel code is placed at boot time.[27] KASLR was merged into the Linux kernel mainline in kernel version 3.14, released on 30 March 2014.[28] When compiled in, it can be disabled at boot time by specifying nokaslr as one of the kernel's boot parameters.[29]

There are several side-channel attacks in x86 processors that could leak kernel addresses.[30][31] In late 2017, kernel page-table isolation (KPTI aka KAISER) was developed to defeat these attacks.[32][33] However, this method cannot protect against side-channel attacks utilizing collisions in branch predictor structures.[34]

As of 2021, finer grained kernel address space layout randomization (or function granular KASLR, FGKASLR) is a planned extension of KASLR to randomize down to the function level by placing functions in separate sections and reordering them at boot time.[35]

Microsoft Windows

[edit]

Microsoft's Windows Vista (released January 2007) and later have ASLR enabled only for executables and dynamic link libraries that are specifically linked to be ASLR-enabled.[36] For compatibility, it is not enabled by default for other applications. Typically, only older software is incompatible and ASLR can be fully enabled by editing a registry entry HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\MoveImages,[37] or by installing Microsoft's Enhanced Mitigation Experience Toolkit.

The locations of the heap, stack, Process Environment Block, and Thread Environment Block are also randomized. A security whitepaper from Symantec noted that ASLR in 32-bit Windows Vista may not be as robust as expected, and Microsoft has acknowledged a weakness in its implementation.[38]

Host-based intrusion prevention systems such as WehnTrust[39] and Ozone[40] also offer ASLR for Windows XP and Windows Server 2003 operating systems. WehnTrust is open-source.[41] Complete details of Ozone's implementation are not available.[42]

It was noted in February 2012[43] that ASLR on 32-bit Windows systems prior to Windows 8 can have its effectiveness reduced in low memory situations. A similar effect also had been achieved on Linux in the same research. The test code caused the Mac OS X 10.7.3 system to kernel panic, so it was left unclear about its ASLR behavior in this scenario.

NetBSD

[edit]

Support for ASLR in userland appeared in NetBSD 5.0 (released April 2009),[44] and was enabled by default in NetBSD-current in April 2016.[45]

Kernel ASLR support on amd64 was added in NetBSD-current in October 2017, making NetBSD the first BSD system to support KASLR.[46]

OpenBSD

[edit]

In 2003, OpenBSD became the first mainstream operating system to support a strong form of ASLR and to activate it by default.[4] OpenBSD completed its ASLR support in 2008 when it added support for PIE binaries.[47] OpenBSD 4.4's malloc(3) was designed to improve security by taking advantage of ASLR and gap page features implemented as part of OpenBSD's mmap system call, and to detect use-after-free bugs.[48] Released in 2013, OpenBSD 5.3 was the first mainstream operating system to enable position-independent executables by default on multiple hardware platforms, and OpenBSD 5.7 activated position-independent static binaries (Static-PIE) by default.[47]

macOS

[edit]

In Mac OS X Leopard 10.5 (released October 2007), Apple introduced randomization for system libraries.[49]

In Mac OS X Lion 10.7 (released July 2011), Apple expanded their implementation to cover all applications, stating "address space layout randomization (ASLR) has been improved for all applications. It is now available for 32-bit apps (as are heap memory protections), making 64-bit and 32-bit applications more resistant to attack."[50]

As of OS X Mountain Lion 10.8 (released July 2012) and later, the entire system including the kernel as well as kexts and zones are randomly relocated during system boot.[51]

Solaris

[edit]

ASLR has been introduced in Solaris beginning with Solaris 11.1 (released October 2012). ASLR in Solaris 11.1 can be set system-wide, per zone, or on a per-binary basis.[52]

Exploitation

[edit]

A side-channel attack utilizing branch target buffer was demonstrated to bypass ASLR protection.[34] In 2017, an attack named "ASLR⊕Cache" was demonstrated which could defeat ASLR in a web browser using JavaScript.[53]

See also

[edit]

References

[edit]
  1. ^ Marco-Gisbert, Hector; Ripoll Ripoll, Ismael (2025-08-06). "Address Space Layout Randomization Next Generation". Applied Sciences. 9 (14): 2928. doi:10.3390/app9142928. hdl:10251/144813. ISSN 2076-3417.
  2. ^ Yeongjin Jang; Sangho Lee; Taesoo Kim. Breaking Kernel Address Space Layout Randomization with Intel TSX (PDF). 23rd ACM Conference on Computer and Communications Security. doi:10.1145/2976749.2978321.
  3. ^ Brad Spengler (October 2003). "PaX: The Guaranteed End of Arbitrary Code Execution" (PDF). grsecurity.net. Slides 22 through 35. Archived (PDF) from the original on 2025-08-06. Retrieved 2025-08-06.
  4. ^ a b Theo De Raadt (2005). "Exploit Mitigation Techniques (updated to include random malloc and mmap) at OpenCON 2005". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  5. ^ "OpenBSD Innovations". The OpenBSD project. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  6. ^ a b Marco-Gisbert, Hector; Ripoll, Ismael (2025-08-06). "On the Effectiveness of Full-ASLR on 64-bit Linux" (PDF). Archived from the original (PDF) on 2025-08-06. Retrieved 2025-08-06.
  7. ^ Shacham, H.; Page, M.; Pfaff, B.; Goh, E.J.; Modadugu, N.; Boneh, D (2004). On the Effectiveness of Address-Space Randomization. 11th ACM conference on Computer and communications security. pp. 298–307.
  8. ^ a b "Implement Library Load Order Randomization". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  9. ^ a b Transistorized memory, such as RAM, ROM, flash and cache sizes as well as file sizes are specified using binary meanings for K (10241), M (10242), G (10243), etc.
  10. ^ Binosi, Lorenzo; Barzasi, Gregorio; Carminati, Michele; Zanero, Stefano; Polino, Mario (2024). "The Illusion of Randomness: An Empirical Analysis of Address Space Layout Randomization Implementations". arXiv:2408.15107 [cs.CR].
  11. ^ "Android Security". Android Developers. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  12. ^ "oss-security". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  13. ^ "Revert "Reenable support for non-PIE executables"". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  14. ^ mmap - add mmap offset randomization Archived 2025-08-06 at the Wayback Machine, DragonFly Gitweb, 25 November 2010.
  15. ^ "Implement Address Space Layout Randomization (ASLR)". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  16. ^ "ASLR - FreeBSD Wiki". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  17. ^ "FreeBSD 13.2-RELEASE Release Notes". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  18. ^ Pwn2Own day 2: iPhone, BlackBerry beaten; Chrome, Firefox no-shows Archived 2025-08-06 at the Wayback Machine, Ars Technica, 11 March 2011
  19. ^ Stefan Esser (2025-08-06). "iOS 6 Exploitation 280 Days Later". Slide 19, "iOS 6 introduces KASLR". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  20. ^ Tarjei Mandt. "Attacking the iOS Kernel: A Look at 'evasi0n'" (PDF). Archived (PDF) from the original on 2025-08-06. Retrieved 2025-08-06.
  21. ^ Dang, Alan; Miller, Charlie (2025-08-06). "The NX Bit And ASLR". Tom's Hardware. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  22. ^ personality(2) – Linux Programmer's Manual – System Calls
  23. ^
  24. ^ "[PATCH] ASLRv3: randomize_va_space=3 preventing offset2lib attack". lore.kernel.org.
  25. ^ Miller, Justin (2025-08-06). "ASLRn't: How memory alignment broke library ASLR". zolutal's blog. Retrieved 2025-08-06.
  26. ^ "[LTP] [PATCH 2/2] Add test for ASLRn't bug - Martin Doucha". lore.kernel.org.
  27. ^ Jake Edge (2025-08-06). "Kernel address space layout randomization". LWN.net. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  28. ^ "Linux kernel 3.14, Section 1.7. Kernel address space randomization". kernelnewbies.org. 2025-08-06. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  29. ^ "kernel/git/torvalds/linux.git: x86, kaslr: Return location from decompress_kernel (Linux kernel source tree)". kernel.org. 2025-08-06. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  30. ^ KASLR is Dead: Long Live KASLR (PDF). Engineering Secure Software and Systems 2017. 2025-08-06.
  31. ^ Jang, Yeongjin; Lee, Sangho; Kim, Taesoo (2016). "Breaking Kernel Address Space Layout Randomization with Intel TSX" (PDF). Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. CCS '16. New York: Association for Computing Machinery. pp. 380–392. doi:10.1145/2976749.2978321. ISBN 9781450341394. S2CID 6293725. Archived (PDF) from the original on 2025-08-06. Retrieved 2025-08-06.
  32. ^ Corbet, Jonathan (2025-08-06). "The current state of kernel page-table isolation". Linux Weekly News. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  33. ^ Corbet, Jonathan (2025-08-06). "KAISER: hiding the kernel from user space". Linux Weekly News. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  34. ^ a b Evtyushkin, Dmitry; Ponomarev, Dmitry; Abu-Ghazaleh, Nael (2016). Jump over ASLR: Attacking branch predictors to bypass ASLR (PDF). 2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). pp. 1–13. doi:10.1109/MICRO.2016.7783743. ISBN 978-1-5090-3508-3. S2CID 3801142.
  35. ^ "Linux 5.16 Has Early Preparations For Supporting FGKASLR - Phoronix". www.phoronix.com. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  36. ^ "Windows ISV Software Security Defenses". Msdn.microsoft.com. 2025-08-06. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  37. ^ Windows Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition (PRO-Developer) ISBN 978-0-7356-2530-3
  38. ^ Ollie Whitehouse (February 2007). "An Analysis of Address Space Layout Randomization on Windows Vista" (PDF). Archived from the original (PDF) on 2025-08-06. Retrieved 2025-08-06.
  39. ^ "WehnTrust". Codeplex.com. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  40. ^ "Security Architects' Ozone". Security Architects. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  41. ^ "WehnTrust source code". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  42. ^ "Address-Space Randomization for Windows Systems" (PDF). Archived (PDF) from the original on 2025-08-06. Retrieved 2025-08-06.
  43. ^ Ollie (2025-08-06). "Research, Develop, Assess, Consult & Educate | Recx: A Partial Technique Against ASLR – Multiple O/Ss". Recxltd.blogspot.co.uk. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  44. ^ "Announcing NetBSD 5.0". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  45. ^ Christos Zoulas (2016). "PIE binaries and ASLR are on in the default build for amd64". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  46. ^ "Kernel ASLR on amd64". 2017. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  47. ^ a b Kurt Miller (2008). "OpenBSD's Position Independent Executable (PIE) Implementation". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  48. ^ "libc/stdlib/malloc.c". BSD Cross Reference, OpenBSD src/lib/. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  49. ^ "Mac OS X – Security – Keeps safe from viruses and malware". Apple. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  50. ^ "Security". Apple Inc. Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  51. ^ "OS X Mountain Lion Core Technologies Overview" (PDF). June 2012. Archived (PDF) from the original on 2025-08-06. Retrieved 2025-08-06.
  52. ^ Controlling Access to Machine Resources Archived 2025-08-06 at the Wayback Machine, Oracle Information Library, 26 October 2012.
  53. ^ AnC Archived 2025-08-06 at the Wayback Machine VUSec, 2017
[edit]
牙龈一直出血是什么原因 银属于五行属什么 生姜能治什么病 口是什么生肖 什么人容易得老年痴呆
player是什么意思 twin是什么意思 什么中药可以减肥 为什么减肥不掉秤 气胸是什么原因引起的
手指缝里长水泡还痒是什么原因 身体缺钾吃什么药 挣扎是什么意思 农历什么意思 高原反应的原因是什么
人为什么会得肿瘤 这是什么踏板 饭前饭后吃药有什么区别 后背痛是什么原因 冰粉是什么做的
心梗吃什么药好得快hcv7jop6ns4r.cn 血糖高不能吃什么食物xinjiangjialails.com 黑头发有什么好处hcv8jop3ns9r.cn 护手霜什么牌子的效果好hcv8jop0ns3r.cn 什么属于包皮过长hcv8jop7ns8r.cn
什么样的人着床晚hcv9jop1ns6r.cn 属龙的守护神是什么菩萨hcv8jop8ns1r.cn 扁平苔藓有什么症状hcv8jop8ns6r.cn 阴囊湿疹用什么药膏效果最好chuanglingweilai.com 什么东西补血效果最好hcv8jop7ns1r.cn
危楼是什么意思hcv9jop6ns4r.cn 激素水平是什么意思hcv8jop9ns5r.cn 食指比无名指长代表什么0735v.com 克拉是什么单位gangsutong.com 孕吐反应什么时候开始hcv8jop1ns7r.cn
精神支柱是什么意思hcv8jop6ns3r.cn 尺码m是什么意思hcv8jop0ns5r.cn 女人喝枸杞水有什么好处hcv9jop6ns8r.cn 鲁迅原名是什么hcv8jop5ns6r.cn 眼压高是什么意思0735v.com
百度