Android程序的安全系统--以root权限进行操作

别再乱放变量了!手把手教你用Keil MDK将STM32H743数据精准分配到AXI SRAM和DTCM 本文详细介绍了如何在STM32H743开发中利用Keil MDK工具链实现变量在AXI SRAM和DTCM等不同内存区域的精准分配。通过解析STM32H743内存架构、Keil MDK配置方法和代码层面的变量分配技术,帮助开发者优化系统性能,提升实时性应用的效率。特别适合需要高效内存管理的嵌入式开发者。 阅读详情

Android程序的安全系统

最近在移植Android过程中遇到了Android程序(apk)权限的问题。最近也对这方面进行了一些了解,在此和大家分享。

     Android框架是基于Linux内核构建,所以Android安全系统也是基于Linux的安全架构建立的。在Linux安全系统中,用户和组起着重要的作用,Linux中所有的资源给不同的用户和用户组设置了不同的访问属性。如果你对Linux下面用户和组的概念不熟悉,请先补习一下Linux基础知识。

    在Android系统中,系统为每一个应用程序(apk)创建了一个用户和组。这个用户和组都是受限用户,不能访问系统的数据,只能访问自己的文件和目录,当然它也不能访问其他应用程序的数据。这样设计可以尽可能地保护应用程序的私有数据,增强系统的安全性和健壮性。

     但是有一些应用程序是需要访问一些系统资源的。比如Setting程序,他就需要访问wiffi,在系统中创建删除文件等等操作。怎样做到这一点儿呢?Android通过一定途径可以获得system权限。获得system用户权限,需要以下步骤:

1. 在应用程序的AndroidManifest.xml中的manifest节点中加入android:sharedUserId="android.uid.system"这个属性。 
2. 修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行 
3. 使用mm命令来编译,生成的apk就有修改系统时间的权限了。

     一般情况下system用户权限就已经够用了,system用户可以在系统中创建和删除文件,访问设备等等。但是有些情况下system权限还是不够的。比如:设置网卡IP地址,ifconfig命令是需要root权限的。我可以很肯定的说,在Android下面应用程序是没有可能拿到root权限的。但是如果我的应用程序需要root权限怎么办呢?只能想办法绕般过去。就以我的问题为例,设置网卡IP地址,root权限下面命令为:

ifconfig eth0 192.168.1.188

在普通用户或者system用户权限下面这条命令是不起作用的,但是不会返回失败和异常,这个我个人认为是Android的bug。那么怎样实现这个功能呢?我想出了两个办法。

1、系统启动的时候init进程创建一个后台进程,该进程处于root用户权限下面。用来监听系统中应用程序的请求(可以用socket实现),并代其完成。这样应用程序就可以执行root用户权限的任务了。

2、实现一个虚拟的设备,该设备的功能就是在内核态帮应用程序执行相应的命令。Linux内核态没有权限的问题了。肯定可以执行成功。

     我解决设置网卡IP地址问题时,选择是后者。相对来说设计比较简单。



如何在非root安卓设备上让Termux获取root权限 在经过root的安卓手机上,我们可以获取管理权限,可以在系统权限级别上调整和编辑应用程序,如SuperSu、 Kingroot、 Magisk等等方式。如果要root设备,那么建议使用magisk方式,毕竟它是不会轻易修改系统文件的。而如果你不想root设备,那么就可以用FakeRoot这个方法来安装sudo命令。我们要怎么在没有root安卓设备的情况下,来让termux获取root权限或者安装sudo命令行?其实,我们可以下载安装FakeRoot软件包来简单实现。 阅读详情

相关推荐

root安卓原理,手机root作用

先将手机切换到Bootloader模式,用USB连接手机到电脑,并且确认它已经处于待调试的状态,比如输入adb devices,显示出你的设备,并且状态是device,输入命令。root的su文件可以通过卡刷的形式刷入,即手机进入recovery模式进行刷入,Recovery模式指的是一种可以对安卓机内部的数据或系统进行修改的模式(类似于windowsPE或DOS),可以在该模式下更改手机的数据,相当于管理员级别,可以随意清除数据和增加数据,甚至可以抹除整个系统,所以放入一个su文件还是可以的。

h824015249的博客 2288

Android 4.3 安全提升,Set-UID-Root 权限提升不再起作用,原先的ROOT方法将失效

Android目前的ROOT的基本原理,是通过系统漏洞获取ROOT SHELL权限,然后往手机里面push 最核心的两个文件,su可执行文件和superUSer.apk。 后者用于管理对应用的授权,而前者则真正用来提升权限至ROOT。 当APK需要进行高权限操作时,使用Shell方式进行: su xxxxx 即可,此时(假设用户授权了,通过superUser.apk)xxxx的命令就会以ROOT用

东方欲晓的专栏 2755

Android系统ROOT权限开放实战指南

市面上存在许多ROOT工具,例如KingRoot、One Click Root、Magisk等,这些工具各有特点,适用于不同的设备和Android版本。KingRoot是其中较为流行的选项,它支持广泛的设备和系统版本,并提供了简易的一键ROOT体验。One Click Root是专为桌面用户设计,通过电脑进行ROOT操作,提供较高的成功率。Magisk则以其”无修改ROOT”的方法著称,能够在不触及系统分区的情况下实现ROOT,极大地降低了系统更新时失去ROOT的风险。

weixin_33812391的博客 1997

Android系统权限和root权限

Android系统权限和root权限 1. Android权限说明     Android系统是运行在Linux内核上的,Android与Linux分别有自己的一套严格的安全及权限机制,Android系统权限相关的内容,(一)linux文件系统上的权限-rwxr-x--x system   system       4156 2012-06-30 16:12 test.apk.    代表的是相应...

大木星的某卫星上的小角落 1125

SWAT模型非点源模拟原理

目录引言模型概述非点源污染模拟原理物质迁移内容过程营养物农药病原菌运移河道水质模型营养元素的地表水体循环河道水质模拟藻类模拟氮元素磷元素生化需氧量及溶解氧重金属的运移蓄水体水质模拟 引言 今天无意接触到这一块,就记录下来了。 模型概述 1、流域中非点源污染的来源主要是农业化肥和农药的施用。 2、氮、磷等营养物和农药的迁移和转化取决于化合物在土壤环境中经历的转化过程。 3、SWAT模型可以模拟水文相应单元内氮、磷完整的营养物循环过程和任何一种农药的降解过程。 4、SWAT模拟流域内泥沙、藻类、溶解氧、有机污染

DoWayChan的博客 4877

抓包抖音充值页面实现微信支付宝充值抖币,可提供api

抓包抖音充值接口教程,实现微信支付宝充值抖币收款通道

eeeee1212的博客 1万+

apk获取system权限及root权限

获取system权限: 1.在manifest的manifest标签中加入属性:android:sharedUserId="android.uid.system"   同一个uid可以像在同一进程一样可以互相访问资源,拥有同样的权限,但是必须使用相同的密钥签名 2.在Android.mk中加入LOCAL_CERTIFICATE := platform    指定LOCAL_CERTIFIC

淡淡的宁静的博客 6045

野火STM32F407(骄阳)+无刷直流驱动板+永磁同步电机控制学习记录(四)(基于HAL库)

以上内容都是参考别人资料自学的,很多地方都是凭感觉,因为理论部分不太会算,只要电机能转就行,其他性能指标都没考虑,因为不会,所以这纯属是学习记录帖。带宽在500时,电流波动小,但是响应很慢,就是堵转后不太容易恢复转动。速度环带宽设定小了,响应不够快,带宽设定大了波动比较大,电机感觉起来也震一点,而且,当带宽设到200的时候,启动直接就锁死了,应该是PI增益设定太大了。电流环带宽的试验:去掉速度环,让Iq_Set=2,Ud=0,此时电机是电流环闭环控制,用手堵转电机然后松开,看电流的波动以及响应情况。

XUEXIDEXIAOhai的博客 4553

Android应用程序永久获取root权限方法

在项目的过程中,有可能会要实现类似360优化大师、安卓优化大师的软件搬家、静默安装等需要root权限的功能,或者类似SET_PREFERRED_APPLICATIONS、MOVE_PACKAGE 等需要系统的权限,必须要有系统签名。 咱们拿 软件搬家 来当例子(通过获取系统权限,而不是弹出系统的应用管理界面来搬家):   实现方式: 1、想办法获取系统权限,但是这个一般办不到,因为不同...

hfgerr的专栏 2234

GitHub漏洞挖掘与CVE提交实战指南:从发现到编号的完整链路

GitHub开源项目是现代软件供应链的核心节点,其安全漏洞直接影响全球数百万系统的机密性、完整性与可用性。理解漏洞本质需回归CIA三元组原理,而真实可利用性依赖对协议解析层、配置加载区和依赖传递链等高危模块的精准识别。技术价值在于将模糊的‘可疑逻辑’转化为符合MITRE CVE标准的可验证事件,支撑SDL流程、威胁情报建设与供应链风险管理。典型应用场景包括甲方安全工程师推动供应商修复、独立研究者参与负责任披露,以及DevSecOps团队构建自动化风险坐标系。本文基于27次CVE提交经验,聚焦GitHub代码

weixin_33646989的博客 650

ISP Tuning实战:从零开始调校相机传感器的完整流程(附避坑指南)

本文详细介绍了ISP Tuning的完整实战流程,即如何从零开始调校相机传感器以优化成像质量。内容涵盖从黑电平校正、镜头阴影校正等基础标定,到自动曝光、伽马校正、色彩校正等核心画质调校,再到降噪与锐化的平衡策略,并提供了关键的避坑指南。掌握ISP Tuning是提升相机传感器性能、实现从‘能用’到‘好用’的关键技术。

weixin_32098457的博客 196

Android应用程序获得root权限

Android应用程序获得root权限 我在博文《Android程序的安全系统》中提到两种让root权限的办法。最近在网上发现很多朋友转载那篇文章,但是对那篇文章中提到的第一种方法怎样实现,不是很明白。本文将会以一个例子实现来演示怎样让一个Android应用程序获得root权限。 问题     我遇到的问题是我想在Java应用程序中动态mount一个NFS的系统,但是执行moun

guangguang3的专栏 882

【Python】多分类算法—Random Forest

【Python】多分类算法—Random Forest 本文将主要就Random Forest(随机森林)的多分类应用进行描述,当然也可运用于二分类中 文章目录【Python】多分类算法—Random Forest前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 本文主要引用的是sklearn 一、pandas是什么? 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。 二、使用步骤 1.引入库 代码如下(示例): import nump

weixin_43166884的博客 1万+

Android系统权限和root权限大全

Android权限说明 Android系统是运行在Linux内核上的,Android与Linux分别有自己的一套严格的安全及权限机制, Android系统权限相关的内容, (一)linux文件系统上的权限 -rwxr-x--x system   system       4156 2012-06-30 16:12 test.apk. 代表的是相应的用户/用户组及其他人对此文件

不只是写代码的程序员 4987

图解说明JLink驱动与目标板电源匹配的关键细节

深入讲解JLink驱动安装及使用过程中,如何正确匹配目标板电源,避免常见通信故障。通过图解方式清晰展示关键连接细节,确保调试稳定可靠,是嵌入式开发中不可或缺的实战经验分享。

weixin_42173218的博客 431

HQChart实战教程19 - PC端分时图定制tooltip

HQChart实战教程19 - PC端分时图定制tooltip序效果步骤1. 创建一个外部tooltip的div2. 注册标题绘制事件3. 标题绘制回调函数格式说明eventdataobjtooltip显示函数HQChart代码地址 序 hqchart分时图是不带tooltip, 如果我们需要在PC端页面显示tooltip,我们可以通过注册绘制标题事件,来自己做一个div显示数据。 参考教程HQChart实战教程7-自定义显示手势点击K线显示信息 效果 步骤 1. 创建一个外部tooltip的div 在外

小银 2447

如何使Android应用程序获得root权限

<br /><br />       写这篇文章前,首先要感谢Simon_fu,他的两篇关于root权限的文章对于我的工作起到了非常大的帮助,这篇文章可以说是对他的文章的一个补充。Simon_fu的文章可以参考如下两个网页:<br />Android程序的安全系统<br />Android应用程序获得 root权限<br /> <br />       一般来说,Android下的应用程序可以“直接”得到的最大的权限为system,但是如果我们需要在程序中执行某些需要root权限的命令,如ifconfig

silvervi的专栏 5万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Android程序安全系统和一键Root

Android系统安全和一键Root

chali1314的博客 1104

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Android之——申请获取ROOT权限

有时候我们写 Android APP,需要让它获取 ROOT 权限,那么如何让 APP 去向系统申请呢?下面提供一个方法,前提是系统是已经 ROOT 权限了,能够执行能 su 命令。如果不能,可以参考上一篇: 获取Android系统的ROOT权限 。 ALPermissionManager 类 package com.allen; import android.util.Log; impo...

Allen_ww的博客 5980

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

android 版本权限差别,安卓手机root前后有什么区别 root后哪些高权限操作

很多人都知道手机root一下,有更高的权限,就只知道这样说,当时很多人都不知道root前后有什么区别,下文就让小编跟大家介绍一下安卓手机root前后区别跟root后会有什么更高的权限操作吧,一起来看看了解一下吧。安卓手机root前后区别跟更高权限操作介绍:手机root区别:下面这些内容都是安卓手机ROOT权限获取之前所不能做到的:1、获取手机最高权限之后,我们可以给手机设置防火墙,关闭一些不需要上...

weixin_32535637的博客 1129

android电视root权限获取,各大安卓电视盒子通用!用无线获取ROOT权限教程!

各大安卓电视盒子通用!用无线获取ROOT权限教程!相信大家都听到了一个消息就是广电发布了一则消息,所有的电视盒子必须统一使用TVOS1.0系统。然而对于市场上的盒子来讲安卓盒子占了99%,这样看来对安卓盒子的影响还是挺大的【安卓盒子最受影响!电视机顶盒须统一装TVOS】。既然安卓盒子所占的比例那么多,下面也给大家带来了安卓盒子通用的ROOT教程,一起来看看吧。安卓盒子root教程:1、下载adb工...

weixin_29840475的博客 3万+

什么是root权限(什么叫root权限)

功能:通过root,用户可以越过手机制造商的限制,卸载预装的程序,或运行需要系统权限的动作。在设置界面中找到“应用设置”,点击进入应用设置界面。在Android系统中,root权限等同于Windows系统的管理员权限,具体来说,它有以下几方面的含义:超级管理权限:获得root权限后,用户可以执行系统层面的操作,包括但不限于修改系统文件、应用程序的文件以及系统设置等。手机root后,您就可以获取手机系统的超级管理员权限,能访问或者修改几乎所有的文件,出于安全和稳定性原因手机厂商是不想让用户访问和修改的。

weixin_44884047的博客 3455

Android下以root权限启动程序

Android下以root权限启动程序 使用Android手机的人很多,很多人都会安装第三方的ROM,这些第三方的ROM一般都可以获取到root权限。但是即使在可以获取root权限的ROM上,java程序权限也是很低的。如何启动一个root权限的程序来完成某些高权限的任务呢?答案是使用su。第三方ROM上的su一般都是修改过的,可以被java程序调用。因此我们可以把高权限的操作放到一个单独

路人甲的专栏 6909

java root权限_Android应用获取Root权限

在项目的过程中,有可能会要实现类似360优化大师、安卓优化大师的软件搬家、静默安装等需要root权限的功能,或者类似SET_PREFERRED_APPLICATIONS、MOVE_PACKAGE等需要系统的权限,必须要有系统签名。咱们拿 软件搬家 来当例子(通过获取系统权限,而不是弹出系统的应用管理界面来搬家):实现方式:1、想办法获取系统权限,但是这个一般办不到,因为不同厂家出厂的手机系统签名...

weixin_31937289的博客 2166
上一篇: Android应用程序获得root权限
下一篇: Linux 内核机制--阻塞与非阻塞机制及Poll/Select分析
计算机与认知
博客等级 码龄14年 31粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值