SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Android软件安全审计及
漏洞修复经验谈
360信息安全部 宋申雷
背景 - 安卓安全机制
user Process File
Linux基于UID和GID的安全机制
背景 - 安卓安全机制
背景 - 安卓安全机制
Permission
UID/GID
Android Runtime
Linux Kernel
背景 - 安卓安全机制
Permission用于具体操作进行权限细分和访问控制
背景 - 安卓安全机制
APK
signature permission
背景 - 安卓安全机制
Master Key漏洞轰动一时!!!
1. 打包系统签名的APP
2.系统签名的APP通过android:sharedUserId 申请
了android.uid.system这个UID
3. 注入恶意代码获得root权限
背景 - 安卓安全机制
Android的APK相当于Linux的UID
Android的Permission相当是Linux的GID
Android的Signature控制APK的UID和GID分配
Android Runtime
安卓APP攻击向量
安卓APP攻击向量
文件读写安全
数据加密安全
通信协议安全
IPC(进程间通信)安
全
组件安全
。。。。。。。
HTTPS
WebView
SQLlite
Intent
Action
Activity
。。。。。。。
Broadcast
安卓APP安全审计方法 基本方法
获取APP的所有组件信息
安卓APP安全审计方法 基本方法
分析AndroidManifest.xml 查找intent(意图)
安卓APP安全审计方法 基本方法
使用drozer或adb shell验证导出组件功能
安卓APP安全审计方法 基本方法
使用drozer扫描content provider
安卓APP安全审计方法 基本方法
设置代理抓包分析app的通信
安卓APP安全审计方法 自动化方法
通过定制脚本自动化获取攻击向量
安卓APP安全审计方法 自动化方法
通过定制Intent自动化测试IPC&组件安全漏洞
安卓APP安全审计方法 自动化方法
smail & java & dex 都能通过定制静态代码特征扫描发现漏洞
安卓APP安全审计方法 自动化方法
通过定制抓包脚本自动化测试通信和web安全问题
安卓APP安全审计方法 高级方法
• HOOK - 钩子,对要审计的函数进行HOOK,改变程序的流程。
• DEBUG – 调试,定位安全漏洞产生的原因。
• Reverse –逆向,在没有源代码的情况下,了解程序的流程。
安卓APP安全审计方法 高级方法
HOOK 修改或监控需要安全审计的类方法调用
安卓APP安全审计方法 高级方法
HOOK 检测APP X509TrustManager是否信任了全部证书
安卓APP安全审计方法 高级方法
• Smail Debug
重打包在manifest文件中加入android:debuggable="true",
$ apktool d -d -o out app.apk
$ apktool b -d -o out
• Make any application debuggable
HOOK设置debugFlags标志位
public ProcessStartResult start(final String processClass, final String niceName, int uid, int gid,
int[] gids, int debugFlags, int mountExternal, int targetSdkVersion, String seInfo, String[]
zygoteArgs)
……
if ((debugFlags & Zygote.DEBUG_ENABLE_DEBUGGER) != 0) { argsForZygote.add("--enable-
debugger"); }
钩上android.os.Process,把第5个参数设置成0x1(十六进制的1)
安卓APP安全审计方法 高级方法
./androgexf.py -i YOURAPP.apk -o YOURAPP.gexf
了解APP的程序流程,视化数据,分析类的方法调用流程等。
安卓APP安全审计方法 漏洞修复经验谈
自定义组件的permission
安卓APP安全审计方法 漏洞修复经验谈
安卓APP安全审计方法 漏洞修复经验谈
安卓APP安全审计方法 漏洞修复经验谈
关闭JavaScript
加载空白页
final String url = getIntent().getStringExtra("url");
wSettings.setJavaScriptEnabled(false):
if (!url.startsWith("file:")){
wSettings.setJavaScriptEnabled(true);
}
final String url = getIntent().getStringExtra("url");
String loadUrl = "about:blank";
if (!url.startsWith("file:")) {
loadUrl = url
}
安卓APP安全审计方法 漏洞修复经验谈
坑爹的安卓碎片化,为了兼容build api level太低,只能反射调用某
些函数修复漏洞!
安卓APP安全审计方法 漏洞修复经验谈
加密网络协议中的明文数据,不管protobuf、amf3还是xmpp!
安卓APP安全审计方法 漏洞修复经验谈
对外发布的APP关掉logcat的调试信息
Thanks!

Weitere ähnliche Inhalte

Andere mochten auch

当当网Docker应用实践
当当网Docker应用实践当当网Docker应用实践
当当网Docker应用实践正炎 高
 
Shobo(技術・基礎)
Shobo(技術・基礎)Shobo(技術・基礎)
Shobo(技術・基礎)Kenichi Sakai
 
Veganuary multipage article
Veganuary multipage article Veganuary multipage article
Veganuary multipage article JoeHeadford
 
T.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler Sunumu
T.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler SunumuT.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler Sunumu
T.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler Sunumu✔✔Baris UNLU✔✔
 
Lessons From Sport - Jon Reay, Aqueduct
Lessons From Sport - Jon Reay, AqueductLessons From Sport - Jon Reay, Aqueduct
Lessons From Sport - Jon Reay, Aqueductjreay
 
[KR, 한국어]Share job postings; 채용 공고 공유하기
[KR, 한국어]Share job postings; 채용 공고 공유하기[KR, 한국어]Share job postings; 채용 공고 공유하기
[KR, 한국어]Share job postings; 채용 공고 공유하기Jungmi Choi
 
The Jigsaw Puzzle of Tourism Online
The Jigsaw Puzzle of Tourism OnlineThe Jigsaw Puzzle of Tourism Online
The Jigsaw Puzzle of Tourism OnlineMarketing Lancashire
 
Lessons From Sport at Internet World 2012 - Jon Reay, Aqueduct
Lessons From Sport at Internet World 2012 - Jon Reay, AqueductLessons From Sport at Internet World 2012 - Jon Reay, Aqueduct
Lessons From Sport at Internet World 2012 - Jon Reay, Aqueductjreay
 
网易蜂巢容器公有云的docker实践
网易蜂巢容器公有云的docker实践网易蜂巢容器公有云的docker实践
网易蜂巢容器公有云的docker实践正炎 高
 
Power poin de informatica educativa
Power poin de informatica educativaPower poin de informatica educativa
Power poin de informatica educativaTaregelia Smith
 
Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI
Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI
Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI amrinarosada7x
 

Andere mochten auch (16)

当当网Docker应用实践
当当网Docker应用实践当当网Docker应用实践
当当网Docker应用实践
 
Imagenes
ImagenesImagenes
Imagenes
 
Shobo(技術・基礎)
Shobo(技術・基礎)Shobo(技術・基礎)
Shobo(技術・基礎)
 
Veganuary multipage article
Veganuary multipage article Veganuary multipage article
Veganuary multipage article
 
Formato 1 pdav
Formato 1 pdavFormato 1 pdav
Formato 1 pdav
 
Shobo(応用)
Shobo(応用)Shobo(応用)
Shobo(応用)
 
T.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler Sunumu
T.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler SunumuT.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler Sunumu
T.C. Ekonomi Bakanlığı Döviz Kazandırıcı Hizmetler Sunumu
 
Openstack
OpenstackOpenstack
Openstack
 
Lessons From Sport - Jon Reay, Aqueduct
Lessons From Sport - Jon Reay, AqueductLessons From Sport - Jon Reay, Aqueduct
Lessons From Sport - Jon Reay, Aqueduct
 
[KR, 한국어]Share job postings; 채용 공고 공유하기
[KR, 한국어]Share job postings; 채용 공고 공유하기[KR, 한국어]Share job postings; 채용 공고 공유하기
[KR, 한국어]Share job postings; 채용 공고 공유하기
 
The Jigsaw Puzzle of Tourism Online
The Jigsaw Puzzle of Tourism OnlineThe Jigsaw Puzzle of Tourism Online
The Jigsaw Puzzle of Tourism Online
 
Lessons From Sport at Internet World 2012 - Jon Reay, Aqueduct
Lessons From Sport at Internet World 2012 - Jon Reay, AqueductLessons From Sport at Internet World 2012 - Jon Reay, Aqueduct
Lessons From Sport at Internet World 2012 - Jon Reay, Aqueduct
 
网易蜂巢容器公有云的docker实践
网易蜂巢容器公有云的docker实践网易蜂巢容器公有云的docker实践
网易蜂巢容器公有云的docker实践
 
Contoh Soal Sistem Pencernaan Manusia
Contoh Soal Sistem Pencernaan ManusiaContoh Soal Sistem Pencernaan Manusia
Contoh Soal Sistem Pencernaan Manusia
 
Power poin de informatica educativa
Power poin de informatica educativaPower poin de informatica educativa
Power poin de informatica educativa
 
Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI
Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI
Struktur dan Fungsi Jaringan Hewan - Biologi SMA kelas XI
 

Ähnlich wie Android软件安全审计及漏洞修复经验谈.宋申雷

Android os분석(중문)
Android os분석(중문)Android os분석(중문)
Android os분석(중문)chon2010
 
TI702_Android_MID
TI702_Android_MIDTI702_Android_MID
TI702_Android_MIDguestd2ec7f
 
04.layman android google handheld device application design
04.layman android   google handheld device application design04.layman android   google handheld device application design
04.layman android google handheld device application designgaquay086
 
Zhanbos Drm Win383
Zhanbos Drm Win383Zhanbos Drm Win383
Zhanbos Drm Win383sumnny
 
恶性代码和分析方案
恶性代码和分析方案恶性代码和分析方案
恶性代码和分析方案Youngjun Chang
 
生成 Android 签名文件
生成 Android 签名文件  生成 Android 签名文件
生成 Android 签名文件 YUCHENG HU
 
生成 Android 签名文件
生成 Android 签名文件 生成 Android 签名文件
生成 Android 签名文件 YUCHENG HU
 
Mobile app security
Mobile app securityMobile app security
Mobile app securitydrewz lin
 
和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂imShining @DevCamp
 
Malware Introduction and Defense
Malware Introduction and DefenseMalware Introduction and Defense
Malware Introduction and DefenseNi Zhiqiang
 
Android应用开发 - 沈大海
Android应用开发 - 沈大海Android应用开发 - 沈大海
Android应用开发 - 沈大海Shaoning Pan
 
企业安全应急响应与渗透反击V0.04(程冲)
企业安全应急响应与渗透反击V0.04(程冲)企业安全应急响应与渗透反击V0.04(程冲)
企业安全应急响应与渗透反击V0.04(程冲)WASecurity
 
虚拟桌面云 终端用户运算未来展望
虚拟桌面云  终端用户运算未来展望虚拟桌面云  终端用户运算未来展望
虚拟桌面云 终端用户运算未来展望ITband
 
Android開發app
Android開發appAndroid開發app
Android開發app騰昱 魏
 
移动互联网中的Camera
移动互联网中的Camera移动互联网中的Camera
移动互联网中的CameraBin Shao
 
如何因應連網商機下的資安風險
如何因應連網商機下的資安風險如何因應連網商機下的資安風險
如何因應連網商機下的資安風險Onward Security
 
How does Apache Pegasus used in Xiaomi's Universal Recommendation Algorithm ...
How does Apache Pegasus used  in Xiaomi's Universal Recommendation Algorithm ...How does Apache Pegasus used  in Xiaomi's Universal Recommendation Algorithm ...
How does Apache Pegasus used in Xiaomi's Universal Recommendation Algorithm ...acelyc1112009
 

Ähnlich wie Android软件安全审计及漏洞修复经验谈.宋申雷 (19)

Android ADK
Android ADKAndroid ADK
Android ADK
 
Android os분석(중문)
Android os분석(중문)Android os분석(중문)
Android os분석(중문)
 
TI702_Android_MID
TI702_Android_MIDTI702_Android_MID
TI702_Android_MID
 
04.layman android google handheld device application design
04.layman android   google handheld device application design04.layman android   google handheld device application design
04.layman android google handheld device application design
 
Zhanbos Drm Win383
Zhanbos Drm Win383Zhanbos Drm Win383
Zhanbos Drm Win383
 
恶性代码和分析方案
恶性代码和分析方案恶性代码和分析方案
恶性代码和分析方案
 
生成 Android 签名文件
生成 Android 签名文件  生成 Android 签名文件
生成 Android 签名文件
 
生成 Android 签名文件
生成 Android 签名文件 生成 Android 签名文件
生成 Android 签名文件
 
Mobile app security
Mobile app securityMobile app security
Mobile app security
 
和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂
 
Malware Introduction and Defense
Malware Introduction and DefenseMalware Introduction and Defense
Malware Introduction and Defense
 
Android应用开发 - 沈大海
Android应用开发 - 沈大海Android应用开发 - 沈大海
Android应用开发 - 沈大海
 
企业安全应急响应与渗透反击V0.04(程冲)
企业安全应急响应与渗透反击V0.04(程冲)企业安全应急响应与渗透反击V0.04(程冲)
企业安全应急响应与渗透反击V0.04(程冲)
 
虚拟桌面云 终端用户运算未来展望
虚拟桌面云  终端用户运算未来展望虚拟桌面云  终端用户运算未来展望
虚拟桌面云 终端用户运算未来展望
 
Android
AndroidAndroid
Android
 
Android開發app
Android開發appAndroid開發app
Android開發app
 
移动互联网中的Camera
移动互联网中的Camera移动互联网中的Camera
移动互联网中的Camera
 
如何因應連網商機下的資安風險
如何因應連網商機下的資安風險如何因應連網商機下的資安風險
如何因應連網商機下的資安風險
 
How does Apache Pegasus used in Xiaomi's Universal Recommendation Algorithm ...
How does Apache Pegasus used  in Xiaomi's Universal Recommendation Algorithm ...How does Apache Pegasus used  in Xiaomi's Universal Recommendation Algorithm ...
How does Apache Pegasus used in Xiaomi's Universal Recommendation Algorithm ...
 

Mehr von 正炎 高

Analyzingbitcoinsecurity
AnalyzingbitcoinsecurityAnalyzingbitcoinsecurity
Analyzingbitcoinsecurity正炎 高
 
比特币分叉相关
比特币分叉相关比特币分叉相关
比特币分叉相关正炎 高
 
他山之石可以攻御
他山之石可以攻御他山之石可以攻御
他山之石可以攻御正炎 高
 
Mvvm及其组件体系@杨文坚
Mvvm及其组件体系@杨文坚Mvvm及其组件体系@杨文坚
Mvvm及其组件体系@杨文坚正炎 高
 
一个前端的自我修养 Winter
一个前端的自我修养 Winter一个前端的自我修养 Winter
一个前端的自我修养 Winter正炎 高
 
下一代Web前端技术 陈子舜
下一代Web前端技术 陈子舜下一代Web前端技术 陈子舜
下一代Web前端技术 陈子舜正炎 高
 
Ch04 secure software development_lifecycle
Ch04 secure software development_lifecycleCh04 secure software development_lifecycle
Ch04 secure software development_lifecycle正炎 高
 
Android混淆技巧与反混淆 小波
Android混淆技巧与反混淆 小波Android混淆技巧与反混淆 小波
Android混淆技巧与反混淆 小波正炎 高
 
Android 软件安全攻防研究现状 claud isf2012
Android 软件安全攻防研究现状 claud isf2012Android 软件安全攻防研究现状 claud isf2012
Android 软件安全攻防研究现状 claud isf2012正炎 高
 
移动客户端恶意行为分析系统
移动客户端恶意行为分析系统移动客户端恶意行为分析系统
移动客户端恶意行为分析系统正炎 高
 
基于大数据的Web攻击溯源
基于大数据的Web攻击溯源基于大数据的Web攻击溯源
基于大数据的Web攻击溯源正炎 高
 
钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2
钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2
钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2正炎 高
 

Mehr von 正炎 高 (13)

Analyzingbitcoinsecurity
AnalyzingbitcoinsecurityAnalyzingbitcoinsecurity
Analyzingbitcoinsecurity
 
比特币分叉相关
比特币分叉相关比特币分叉相关
比特币分叉相关
 
他山之石可以攻御
他山之石可以攻御他山之石可以攻御
他山之石可以攻御
 
Mvvm及其组件体系@杨文坚
Mvvm及其组件体系@杨文坚Mvvm及其组件体系@杨文坚
Mvvm及其组件体系@杨文坚
 
一个前端的自我修养 Winter
一个前端的自我修养 Winter一个前端的自我修养 Winter
一个前端的自我修养 Winter
 
下一代Web前端技术 陈子舜
下一代Web前端技术 陈子舜下一代Web前端技术 陈子舜
下一代Web前端技术 陈子舜
 
Ch04 secure software development_lifecycle
Ch04 secure software development_lifecycleCh04 secure software development_lifecycle
Ch04 secure software development_lifecycle
 
Android混淆技巧与反混淆 小波
Android混淆技巧与反混淆 小波Android混淆技巧与反混淆 小波
Android混淆技巧与反混淆 小波
 
Android 软件安全攻防研究现状 claud isf2012
Android 软件安全攻防研究现状 claud isf2012Android 软件安全攻防研究现状 claud isf2012
Android 软件安全攻防研究现状 claud isf2012
 
移动客户端恶意行为分析系统
移动客户端恶意行为分析系统移动客户端恶意行为分析系统
移动客户端恶意行为分析系统
 
基于大数据的Web攻击溯源
基于大数据的Web攻击溯源基于大数据的Web攻击溯源
基于大数据的Web攻击溯源
 
钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2
钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2
钱林松-专业逆向人才培养模式探讨与实践 - 21日上午分论坛2
 
圈圈App
圈圈App圈圈App
圈圈App
 

Android软件安全审计及漏洞修复经验谈.宋申雷