AirJD 焦点
AirJD

没有录音文件
00:00/00:00
加收藏

安卓应用程序安全性分析 by 唐祝寿

发布者 security
发布于 1449709259140  浏览 5906 关键词 Android, 移动开发 
分享到

第1页

安卓应用程序 安全性分析

pLL(at)mobeisecurity.com



第2页

检查项目很多



组件安全 Activity劫持检测 Activity暴露检测 广播劫持检测 广播伪造检测 广播暴露检测 服务劫持检测 服务暴露检测 Content-provider暴 露检测





敏感方法 拨打电话 发送短信息 获取短信息 获取通信录 拦截短信 代码自修改 动态类加载 注册为设备管理器 …



第3页

检查项目很多

Ref: Android系统安全漏洞检测与利用(诸葛 建伟)



第4页

检查过程很复杂

• 开发者文档描述有问题

– 不清晰 – 有错误 – 很复杂

• 安全性依赖个人能力

– 审查很复杂 – 无现成工具



第5页

代码安全分析的几个层面

• 静态分析

– 配置文件上的安全检测(AndroidManifest.XML、 签名、hash)

– 代码层面上的安全检测 – 关联分析 – 代码逻辑上的分析

• 动态分析



第6页

安全评估动态检测方法

• Intent-fuzzer • Content-fuzzer • Drozer



第7页

恶意程序动态测试



• 代码覆盖能力测试



Anubis B-chao Fireeye



SMS_send _onCreate Y

Y

Y



SMS_send_o SMS_send_but nDestroy ton_onClick YY

NN

NN



SMS_send_vi ew_onTouch Y

N

N



SMS_send_wit SMS_sen h_conditions _receive NN

NN

NN



第8页

恶意程序动态测试

• 指纹特征

– b-chao(https://b-chao.com/) – DEVICEID:000000000000000;TEL:15555215554;IMSI:310260000000000 – fireeye(https://fireeye.ijinshan.com/) – name:TaintDroid Notification Service;packageName:org.appanalysis – anubis(https://anubis.iseclab.org/) – TEL:15555215554;IMEI:89014103211118510720 – foresafe(http://www.foresafe.com/) – DEVICEID:000000000000000;TEL:15555215554;IMEI:89014103211118510720;IMS

I:310260000000000

REF: DISSECTING THE ANDROID BOUNCER



第9页

配置文件上的安全检测

• 广告分析 • 部分组件安全 • 查杀特征



第10页

代码层面上的安全检测

• 代码扫描



第11页

代码层面上的安全检测



Dex、apk输入 预处理(反编译、代码预处理)

抽象语法树 控制流与符号表

数据流 污点传播分析



静态分析



第12页

关联分析

• 安全评估 • “恶意”行为是否经过”交互”?

– 调用序列问题 – 什么样子的交互?



第13页

关联分析

死代码or来自jni的调用?



第14页

逻辑上的问题

导致停止功能永远都不会被执行到



第15页

识别程序的意图

假淘宝分析结果,使用的权限比一般应用少得多



第16页

恶意|非恶意界限不明确

• 支付宝比faketaobao使用的权限还多 • 有些恶意程序没恶意行为

Ref:VisualThreat信息安全公司



第17页

攻击技术走在检测技术前头

• 混淆代码

– 1000a.1000b = 1000c – 1000.1000 = 1000

• reflection • 加密代码 • 加固 •…



第18页

攻击技术走在检测技术前头

Smali和java语法上的差别,导致常规分析工具 无法识别这是一个identifier还是一个number



第19页

还有更多工作要做



第20页

这里…



第21页

这里…



第22页

App的安全不只包含客户端代码安全



支持文件格式:*.pdf
上传最后阶段需要进行在线转换,可能需要1~2分钟,请耐心等待。