su权限,root权限,Rootkit/Hook/Binder(Linux,Android)

2023-11-23 09:08

本文主要是介绍su权限,root权限,Rootkit/Hook/Binder(Linux,Android),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

> 免Root实现Android静默安装(非无障碍)- https://mp.weixin.qq.com/s/IN9ooXWqgeHhOIbaOWYmAw
免Root实现Android静默安装- https://github.com/gtf35/app_process-shell-use
最早利用app_process进程实现无 root 权限使用的开源应用(虽然已经闭源,仍然尊重并感谢 liudongmiao)Brevent -https://github.com/brevent/Brevent

 Android system log viewer on Android phone without root. - https://github.com/Zane96/Fairy
 利用app_process进程实现无 root 权限使用的优秀开源应用Android上app_process启动java进程 -https://blog.csdn.net/u010651541/article/details/53163542
 使用 app_process 来调用高权限 API -https://haruue.moe/blog/2017/08/30/call-privileged-api-with-app-process/

> AndroidRootkit一般分为应用级Rootkit和内核级Rootkit,Linux Rootkit

1. AndroidRootkit一般分为应用级Rootkit和内核级Rootkit,Linux Rootkit
  在android上捣鼓了一下linux的内核rootkit。一个完整的内核rootkit大致可分为3个部分,分别为一:自身隐藏,二:信息收集,三:系统攻击。
 安卓Rootkit开发技术要点- http://laokaddk.blog.51cto.com/368606/1153466/
 两个linux内核rootkit--之一:enyelkm- http://blog.csdn.net/dog250/article/details/5303687

2.Hook Native/Hook Java,用户API Hook/内核API Hook??
3.Binder,OpenBinder(IPC)??
4. root权限:临时Root和永久Root
  root的本质就是往 /system/bin/ 下放一个su文件,不检查调用者权限的su文件。普通程序可以调用该su来运行root权限的命令。
  android superuser白名单。Root的过程其实就是把su文件放到/system/bin/ Superuser.apk 放到system/app下面,还需要设置/system/bin/su可以让任意用户可运行,有set uid和set gid的权限。即要在android机器上运行命令:adb shell chmod 4755 /system/bin/su。而通常,厂商是不会允许我们随便这么去做的,我们就需要利用操作系统的各种漏洞,来完成这个过程。
  Superuser(root)- https://github.com/koush/Superuser  
  Superuser(root)- http://superuser.googlecode.com/svn/trunk

  简述静默安装的原理,如何在无需root权限的情况下实现静默安装?
  伪装成系统应用,这就要给app打上系统应用的签名,但是这些签名在小米等手机上是没用的。通过把应用放在system/app的目录下也可以实现。

-- 在5.1.+后获取运行中进程呢
无法卸载app(DevicePolicManager)- https://github.com/BolexLiu/SuPerApp
Example code for "How-To SU" - https://github.com/Chainfire/libsuperuser
/**
     * 判断当前手机是否有ROOT权限
     * @return
     */
    public static boolean isRoot(){
        boolean bool = false;
 
        try{
            if ((!new File("/system/bin/su").exists()) && (!new File("/system/xbin/su").exists())){
                bool = false;
            } else {
                bool = true;
            }
        } catch (Exception e) {
       
        } 
        return bool;
    }

/**
     * 应用程序运行命令获取 Root权限,设备必须已破解(获得ROOT权限)
     * @param command 命令:String apkRoot="chmod 777 "+getPackageCodePath(); RootCommand(apkRoot);
     * @return 应用程序是/否获取Root权限
     */
    public static boolean RootCommand(String command)
    {
        Process process = null;
        DataOutputStream os = null;
        try
        {
            process = Runtime.getRuntime().exec("su");
            os = new DataOutputStream(process.getOutputStream());
           
            os.writeBytes(command + "\n");
            os.flush();
            
            os.writeBytes("exit\n");
            os.flush();
            process.waitFor();
        } catch (Exception e)
        {
            Log.d("*** DEBUG ***", "ROOT REE" + e.getMessage());
            return false;
        } finally
        {
            try
            {
                if (os != null)
                {
                    os.close();
                }
                process.destroy();
            } catch (Exception e) {
            }
        }
        Log.d("*** DEBUG ***", "Root SUC ");
        return true;
    } 

这篇关于su权限,root权限,Rootkit/Hook/Binder(Linux,Android)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/416835

相关文章

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、

Android实现打开本地pdf文件的两种方式

《Android实现打开本地pdf文件的两种方式》在现代应用中,PDF格式因其跨平台、稳定性好、展示内容一致等特点,在Android平台上,如何高效地打开本地PDF文件,不仅关系到用户体验,也直接影响... 目录一、项目概述二、相关知识2.1 PDF文件基本概述2.2 android 文件访问与存储权限2.

Android Studio 配置国内镜像源的实现步骤

《AndroidStudio配置国内镜像源的实现步骤》本文主要介绍了AndroidStudio配置国内镜像源的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、修改 hosts,解决 SDK 下载失败的问题二、修改 gradle 地址,解决 gradle

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro