Android Root技术:绕过PXN策略分析

需积分: 15 2 下载量 112 浏览量 更新于2024-08-16 收藏 2.1MB PPT 举报
"关于作者-Android Root利用技术漫谈:绕过PXN" 本文是一篇由360冰刃实验室安全研究员潘剑锋、赵建强和陈耿佳撰写的关于Android Root利用技术的文章,主要讨论如何绕过Android系统中的PXN(Permission eXecute Never)防护机制。PXN是ARM平台为了防止用户空间代码在内核态执行而设计的一种安全特性,当处理器尝试在内核模式下执行用户空间的代码时,会触发Permission fault错误。 PXN的实现原理在于ARM的第一级页表中设置PXN位为1,阻止内核执行用户空间的代码。这一机制自2014年起在三星的部分32位旗舰机型中启用,并在2015年后成为所有64位设备的标准配置,以增强系统的安全性。 然而,攻击者可以通过各种方法绕过PXN保护。其中一种常见的方式是通过Return-Oriented Programming (ROP) 或 Jump-Oriented Programming (JOP) 技术来构建rop链。例如,文章引用了CVE-2015-3636漏洞的利用示例,攻击者可以控制程序执行流程,泄露栈指针(sp)地址,然后修改addr_limit寄存器的值,通常是将其设置为0xFFFFFFFFFFFFFFFF,从而允许用户态代码在内核空间执行。 在实例1中,攻击者构造rop链,通过泄露sp地址并修改addr_limit,使得内核能够执行用户空间的指令。而在实例2中,KeenTeam团队展示了如何利用类似的方法,通过泄漏sp,以及使用X0、X1和X2寄存器的值来修改addr_limit,达到同样的目的。 文章揭示了在面对PXN防护时,攻击者可能采用的技术手段和步骤,这包括但不限于通过ROP和JOP技术分步实现提权,绕过内核对用户空间代码执行的限制。这些技术细节对于理解Android系统的安全挑战,以及如何防御和应对这类攻击具有重要的参考价值。同时,这也突显了安全研究人员持续努力对抗黑客攻击,提升Android系统安全性的必要性。