最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Android研發(fā)安全3-Service安全

標(biāo)簽:
Android

在Android系统开发中,Service是一个重要的组成部分。如果现在某些程序中的某部分操作是很耗时的,那么可以将这些程序定义在Service中,这样就可以在后台运行,也可以在不显示界面的形式下运行,即,Service实际上就是相当于一个没有图形界面的Activity程序,而且当用户执行某些操作需要进行跨进程访问的时候也可以使用Service来完成。

Service的分类

本地服务(Local)

    该服务依附在主进程上,不是独立的进程。本地服务在一定程度上节约了资源,由于是在同一进程因此不需要IPC,也不需要AIDL。相应bindService会方便很多。主进程被Kill后,服务便会终止。

远程服务(Remote)

    该服务是独立的进程,对应进程名格式为所在包名加上你指定的android:process字符串。由于是独立的进程,因此在Activity所在进程被Kill的时候,该服务依然在运行,不受其他进程影响,有利于为多个进程提供服务具有较高的灵活性。但由于独立的进程,会占用一定资源,并且使用AIDL进行IPC稍微麻烦一点。一些提供系统服务的Service通常是常驻的。

Service组件已知产生的安全问题

  1. 权限提升

  2. Service劫持

  3. 拒绝服务

  4. 消息伪造

安全问题案例

以拒绝服务问题为例,常见的拒绝服务分为两种:

1.java.lang.NullPointerException 空指针异常导致的拒绝服务 ClassCastException 
2.类型转换异常导致的拒绝服务

这里写图片描述

POC内传入畸形数据即可引发crash,捕获异常即可修复。

研发人员该如何预防

不同Service的安全描述

  • 私有Service:不能被其他应用调用,相对安全

  • 公共Service:可以被任意应用调用

  • 可信Service:只能被可以信任的应用调用

  • 内部Service:只能被内部应用调用

intent-filter与exported属性配置方法

  • 私有service不定义intent-filter并且设置exported为false

  • 公开的service设置exported为true,intent-filter可以定义或者不定义

  • 内部或可信service设置exported为true,intent-filter不定义

安全研发建议

  • 应用内部使用的Service应设置为私有

  • 针对Service接收到的数据应该验证并谨慎处理

  • 内部Service需要使用签名级别的protectionLevel来判断是否未内部应用调用

  • 不建议在onCreate方法调用的时候决定是否提供服务,建议在onStartCommand、onBind、onHandleIntent等方法被调用的时候做判断

  • 使用显示意图只针对有明确服务需求的情况 尽量不发送敏感信息 可信任的Service需要对第三方可信公司的app签名做效验


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消