android-app

综合检测平台

http://app.sdsecurity.org.cn:8181/

 

 

 

参考文章

https://mp.weixin.qq.com/s/eiQ5L2u5ndpD4Mzi1QnETw
https://blog.csdn.net/qq_36771588/article/details/108548317
https://github.com/hluwa/FRIDA-DEXDump frida脱壳
https://www.anquanke.com/member/131652 frida从入门到进阶
https://mp.weixin.qq.com/s/9ZPaONrAcm4aJI913S2AIQ 签名校验绕过
https://github.com/zyq8709/DexHunter
https://github.com/dstmath/frida-unpack

 

Android apk信息提取

https://twitter.com/AmitMDubey/status/1272982285277491200

 

包签名 - (非原始签名说明包被修改过,可能被植入木马)

 

CVE-2017-13156(Janus签名)

 

调试证书使用 -(1.无法在应用市场上架,2.影响迭代更新)

为Debug或Android说明使用的调试证书

 

 

应用加壳

 

SO文件加壳

 

启动隐藏服务风险

 

全局异常检测

 

启用VPN服务检测

 

系统权限使用

Android.permission.INSTALL_PACKAGES  #允许程序安装应用
Android.permission.WRITE_SECURE_SETTINGS    #读写系统敏感设置
Android.permission.MOUNT_FORMAT_FILESYSTEMS   #格式化文件系统
Android.permission.MOUNT_UNMOUNT_FILESYSTEMS  #在sd卡内创建和删除文件权限
Android.permission.RESTART_PACKAGES   #结束系统任务

 

ProtectionLevel权限

 

sharedUserid检测

 

master key漏洞

 

allowBackup

 

debuggable

 

模拟器权限 - 用户位置任意篡改

 

测试模式发布

 

组件 - Activity

类型:DDOS |  信息泄露

 

组件 - Service

类型:DDOS |  信息泄露

 

组件 - Receiver

类型:DDOS |  信息泄露

 

组件 - provider

类型:信息泄露 | 目录遍历 | SQL注入(uri搜索 - addURI)|任意文件读写

 

debug/test敏感组件信息泄露

 

组件功能未实现引发DDOS

 

Intent-based

 

PendingIntent误用Intent

 

Intent敏感数据泄露风险

 

Fragment注入

风险:导致本地拒绝服务漏洞,fragment 注入攻击可导致应用的敏感信息泄露、远程代码执行

 

动态注册广播风险

风险:越权|信息泄露|DDOS

 

WebView远程执行

 

WebView XSS

 

WebView明文存储密码

 

WebView组件忽略SSL证书验证错误

风险:劫持 | 用户敏感信息泄露

 

WebView系统隐藏接口未移除

CVE-2012-663

CVE-2014-1939

 

WebView组件克隆应用

风险:远控

 

数据库任意读写

 

SharedPreference全局读写

风险:用户敏感信息泄露

 

内部文件全局读写

 

HTTPS未校验主机名

风险:劫持

 

HTTPS 未校验服务器证书

风险:劫持

 

getDir数据全局可读写

 

随机数不安全使用风险 

 

发送广播信息泄漏风险

 

剪贴板信息泄露风险

 

SD卡数据泄漏风险

 

资源文件泄露风险 

 

URL敏感信息检测

 

外部加载dex

 

外部加载so

 

日志数据泄漏风险

 

弱加密检测

 

RSA加密算法不安全使用风险

 

Java代码混淆检测

 

证书明文存储风险

 

SO未使用编译器堆栈保护风险

 

恶意可执行程序感染漏洞

 

应用运行其它可执行程序风险 

 

应用Root设备运行风险 

 

截屏攻击风险 

 

本地端口开放越权

 

FFmpeg任意文件读取

风险:可以访问手机中任意文件,导致用户信息泄露

 

代码保护不足

未混淆

未加固

代码中编写测试账户信息

密钥硬编码

   对密钥离散存储于资源文件中,并动态加载使用

服务端证书检测 - 测试客户端程序是否严格检查服务器端证书信息,避免用户访问钓鱼网站后,泄露密码等敏感信息。SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER为忽略证书验证

      对SSL证书进行强校验,包括证书是否合法、主机域名是否合法和证书的有效期。修改Allow_all_hostname_verfier

Janus安卓签名漏洞

      将App升级到最新的Signature scheme V2签名机制;

      开发者及时校验App文件的开始字节,以确保App未被篡改。

WebView漏洞
Android 4.2之前版本对addJavascriptInterface的输入参数进行过滤;
Android 4.2及之后版本,使用声明@JavascriptInterface来代替addjavascriptInterface
控制相关权限或者尽可能不要使用js2java的bridge

随机数加密破解漏洞

Intent协议解析越权漏洞

KeyStore漏洞
SQL注入漏洞
  
参数化
预编译
过滤

 

公共组件漏洞

组件Content Provider配置错误,导致数据泄漏

组件Activity配置错误,导致登录页面被绕过

组件Service配置错误,导致非法权限提升

组件Broadcast Receiver配置错误,导致拒绝服务、非法越权

 

应用配置错误

关闭allowbackup备份

关闭Debuggable属性,防止应用信息篡改泄露风险

 数据安全

SQLLite读取权限安全性
创建应用内部存储文件时,调用了openOrCreateDatabase,并将访问权限设置为MODE_WORLD_READABLE或者MODE_WORLD_WRITEABLE

私有文件泄露风险
创建应用内部存储文件时,调用了openFileOutput,并将访问权限设置为MODE_WORLD_READABLE或者MODE_WORLD_WRITEABLE,若设备被root也可进行读写。
设置为MODE_PRIVATE模式

SharedPrefs任意读写漏洞
创建应用SharedPreference时,调用了getSharedPreferences,并将访问权限设置为MODE_WORLD_READABLE或者MODE_WORLD_WRITEABLE

日志泄露风险

 cookie等用户隐私被窃取

不要将不必要组件导出;如需导出,禁止使用File协议;如需使用File协议,禁止js执行:setJavaScriptEnabled(False)
对file域下符号链接限制不当,可导致cookie等用户隐私被窃取

 

https://mp.weixin.qq.com/s/eiQ5L2u5ndpD4Mzi1QnETw

posted @ 2019-08-04 18:01  7hang  阅读(1413)  评论(0编辑  收藏  举报