美文网首页
通过Service提权

通过Service提权

作者: 禅座 | 来源:发表于2019-06-14 13:51 被阅读0次

前台进程是优先级最高的类型。


image.png

在官方指南中有介绍: 创建一个前台服务用于提高app在按下home键之后的进程优先级
startForeground(ID,Notification):使Service成为前台Service。 前台服务需要在通知栏显示一条:


image.png

API level < 18 :参数2 设置 new Notification(),图标不会显示。
API level >= 18:在需要提优先级的service A启动一个InnerService。两个服务都startForeground,且绑定同样的 ID。Stop 掉InnerService ,通知栏图标被移除.
Home之后查看adj值


image.png

代码实现

public class ForgroundService extends Service {
    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public void onCreate() {
        super.onCreate();
        //让服务变成前台服务
        startForeground(10, new Notification());
        //如果 18 以上的设备 启动一个Service startForeground给相同的id
        //然后结束这个Service
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
            startService(new Intent(this, InnnerService.class));
        }
    }


    public static class InnnerService extends Service {

        @Override
        public void onCreate() {
            super.onCreate();
            startForeground(10, new Notification());
            stopSelf();
        }

        @Nullable
        @Override
        public IBinder onBind(Intent intent) {
            return null;
        }
    }
}

AndroidManefest中进行静态注册

<service android:name=".service.ForgroundService" />
<service android:name=".service.ForgroundService$InnnerService" />

MainActivity开启该service

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //通过Service 提权
        startService(new Intent(this, ForgroundService.class));
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
    }
}

相关文章

  • 通过Service提权

    前台进程是优先级最高的类型。 在官方指南中有介绍: 创建一个前台服务用于提高app在按下home键之后的进程优先级...

  • SQL Server 2000提权

    By simeon SQLServer 2000提权有多个方法,通过SQL Tools查询工具进行提权,通过SQL...

  • 7、通过sudo 提权

    sudo 提权 一.sudo: 某个用户能够以另外一个用户的身份通过某主机执行某命令 useradd admin ...

  • 网络安全-Day48-wind提权(二)

    windows空格提权 1、使用命令查看错误配置的路径(wmic service get name,display...

  • 17.提权

    提权方法:溢出漏洞提权、数据库提权(mysql提权(udf提权,mof提权,自启动提权)、mssql提权)、第三方...

  • k8s Service、Ingress

    Service 是Kubernetes 最核心的概念、通过创建 Service 可以为一组具有相同功能的容器应用提...

  • searchsploit使用攻略

    在提权过程中需要通过掌握的信息来对系统、软件等存在的漏洞进行搜索,获取其利用的poc,通过编译后,实施提权。sea...

  • 11、🍓数据库提权及脱取

    ?数据库提权 仅仅关注操作系统的提权安全是不够的,攻击者会通过数据库进行提权,所以数据库的权限安全也是非常重要的。...

  • 网络安全-Day51-Dll劫持提权

    Dll劫持提权 介绍: 通过劫持一个重要的系统函数,执行任意代码。由于webshell提权,一般来说只要放到有网络...

  • 提权漏洞

    提权,顾名思义就是提高自己在服务器中的权限,就比如在 Windows 中你本身登录的用户是 guest,通过提权后...

网友评论

      本文标题:通过Service提权

      本文链接:https://www.haomeiwen.com/subject/dchlxctx.html