`

Android root 原理学习

阅读更多

学习资源: http://www.zhihu.com/question/21074979

 

Android的root安全机制主要涉及的是Linux的安全机制。

其主要原理涉及:

  • SUID: 拥有该权限的程序,在程序调用过程中,程序的运行权限会自动升级到root。
  • su: 运行后进入superuser状态。在Android系统中,su运行是依赖于调用者的权限状态;如果是非root用户进行调用会出现权限不足的问题。
  • system区允许SUID,data不允许SUID
  • system区在默认状态下,只有root用户具有可写权限

结合上述几点,实现root的路径是:

  • 制作一个Android上可用的su
  • 将su程序放入到/system/中
  • 将放入的su权限设置为SUID(chmod 4755)

上述的整体结构:

  • su: 为所有程序提供一个root调用接口 (这个容易得到,可以自己compile)
  • 寻找一个接口将上述su放置上去(寻找系统漏洞,在root状态上完成su的部署)。这个接口主要是通过具有SUID权限的程序运行我们要求的部署操作将su进行安装。而引导程序运行我们要求代码的一般方法有缓冲区溢出攻击。

找了一圈,目前开源的就是一个Android2.3的vold漏洞,后面有机会去试试。

通过上述理论学习,我更为深入地理解了SUID的用途与风险,并结合学习了缓冲区溢出的具体作用。上下连通了,不容易啊。

分享到:
评论

相关推荐

    Android手机一键Root原理分析.zip项目安卓应用源码下载

    Android手机一键Root原理分析.zip项目安卓应用源码下载Android手机一键Root原理分析.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考

    Android手机一键Root原理分析.zip

    Android 应用开发源码 参考与学习使用

    Android-免root兼容所有android屏幕实时共享及远程控制

    在Android平台上,实现屏幕实时共享和远程控制是一项重要的功能,尤其在远程协助、教育、协作以及游戏直播等场景中有着广泛的应用。...对于学习和理解Android屏幕共享和远程控制的实现原理,这是一个宝贵的资源。

    Android手机一键Root原理分析-IT计算机-毕业设计.zip

    Android应用源码开发Demo,主要用于毕业设计学习。

    Android应用源码之手机一键Root原理分析-IT计算机-毕业设计.zip

    Android应用源码开发Demo,主要用于毕业设计学习。

    Android-免root兼容所有android屏幕实时共享及远程控制.zip

    通过分析这个项目,我们可以学习到如何在Android平台上实现屏幕共享和远程控制,同时了解如何处理权限问题、设备适配、通信协议设计以及安全性等方面的知识。这些技能对于Android开发者来说非常有价值,特别是那些...

    Android新技术学习——阿里巴巴免Root无侵入AOP框架Dexposed

    在本文中,我们将深入探讨Dexposed框架的核心原理、应用场景以及如何使用它来增强Android应用的灵活性。 Dexposed框架是基于Dalvik虚拟机的,利用字节码插桩技术,在不改变原有应用代码的情况下,实现了对Android...

    android手机启动原理图

    Android手机启动原理图详解 Android系统作为全球最广泛使用的移动操作系统之一,其启动过程涉及到许多复杂的组件和步骤。...学习和掌握这些知识,能让我们更好地驾驭Android平台,实现高效、稳定的应用开发。

    手机一键Root原理分析.zip

    android 源码学习. 资料部分来源于合法的互联网渠道收集和整理,供大家学习参考与交流。本人不对所涉及的版权问题或内容负法律责任。如有侵权,请通知本人删除。感谢CSDN官方提供大家交流的平台

    Root Hundreds and Thousands of Android Devices with One

    文件名“Wen Xu - Root Hundreds and Thousands of Android Devices with One Generic Exploit.pdf”可能包含了一篇由作者Wen Xu撰写的详细报告或论文,深入探讨了这个通用exploit的工作原理、实现方式、可能的影响...

    android备份,恢复源码

    本项目主要关注的是联系人和短信的备份与恢复,通过源码实现,这使得开发者可以深入理解其工作原理并进行自定义扩展。以下是关于这个主题的详细知识: 1. **Android备份服务**: Android系统提供了`BackupAgent`类...

    android ICS 动画原理与实现分析

    Android ICS 动画原理与实现分析主要涵盖了Android系统中动画机制的核心概念和技术。...通过深入学习和实践,开发者能够更好地理解和利用Android的动画系统,为用户提供更加流畅和引人入胜的体验。

    Android Superuser源码

    本文将深入探讨Superuser的源码,揭示其在Android系统中的核心功能、工作原理以及如何通过源码学习和理解其内部机制。 一、Superuser的职责 1. 权限管理:Superuser作为Android系统的root权限管理系统,负责监控和...

    Android应用源码安卓源码(172个合集).zip

    Android手机一键Root原理分析.zip Android手机的VoIP客户端 Sipdroid.rar Android有未接来电后处理(判断未接来电).rar Android模仿乐淘的应用程序分析源码.zip Android游戏源码——忍者快跑.rar Android自动发送短信...

    测试root的demo apk

    总的来说,这个【测试root的demo apk】项目为Android开发者提供了一个学习和研究root技术的平台,通过源码分析,他们可以了解到root过程中的关键技术和注意事项。同时,通过博主提供的支持,开发者们也能在遇到问题...

    Android例子源码免root实现截屏.zip

    总之,这个Android截屏示例源码提供了一种无root截图的方法,涉及到屏幕内容捕获、位图操作、文件保存等多个技术点,对于学习Android应用开发尤其是图形界面和用户交互的开发者来说,具有很好的参考价值。...

    Android代码实现模拟点击操作

    `sendevent`命令的工作原理是向Linux内核的输入子系统发送模拟事件。基本格式如下: ``` sendevent <设备路径> <事件类型> <事件代码> <事件值> ``` - **设备路径**:通常为`/dev/input/event*`,表示设备的...

    Android superuser 源码

    本文将深入探讨Android superuser源码,揭示其工作原理,帮助开发者理解和利用这一工具。 首先,理解"superuser"的含义至关重要。在Linux内核(Android基于Linux)中,root权限代表了系统最高级别的访问权限,拥有...

    I2CJNI.rar_Android jni_android_android i2c_android i2c通信 JNI_i2c

    综上,"I2CJNI.rar"提供了一个使用Android JNI进行I2C通信的实践案例,对于学习如何在Android平台上通过JNI访问硬件资源,尤其是与I2C设备交互的开发者来说,这是一个宝贵的参考资料。通过研究这个项目,开发者可以...

    Android公共库(缓存,下拉ListView,下载管理,Pro 静默安装,root运行,Java公共类)

    这些公共库的源码分析和学习可以帮助开发者深入理解Android系统的工作原理,提升代码质量,同时也能节省开发时间。通过阅读和研究这些模块的实现,开发者可以学习到如何优化代码结构,提高代码的可读性和可维护性,...

Global site tag (gtag.js) - Google Analytics