Skip to content

Latest commit

 

History

History
152 lines (92 loc) · 6.16 KB

Android安全.md

File metadata and controls

152 lines (92 loc) · 6.16 KB

Android安全


免责声明

本文档仅供学习和研究使用,请勿使用文中的技术源码用于非法用途,任何人造成的任何负面影响,与本人无关.


抓包方法

单纯模拟手机端流量不抓其他应用


安卓手机/安卓模拟器<--设置代理-->Brup

模拟器打开 wifi 设置选项,长按点击 修改网络

代理选择本机的 IP 地址

在 burp 的选项中添加监听项

模拟器访问 http://burp 下载 ca 证书

到文件管理器中,将下载的 cacert.der 改为 .cer 后缀

到设置-安全

选择从 SD 卡安装

选择 .cer 文件安装

随便命名,用途选 vpn和应用


安卓模拟器<--->Proxifier 代理<--->Burp

代理服务器设置为 burp 监听端口

已夜神模拟器为例,使用的网络进程有:NoxVMHandle Frontend

NoxVMHandle Frontend 进程对应的应用程序文件加入代理规则。

重启模拟器,模拟器安装 burp 的 CA 证书,记得 ca 文件名改成 .crt,抓包测试


通过获取手机 Root 权限,将 BurpSuite 的证书导入系统域中


ssl-pinning 证书锁定

SSL/TLS Pinning 提供了两种锁定方式: Certificate Pinning 和 Public Key Pinning

  • 证书锁定

    需要将 APP 代码内置仅接受指定域名的证书,而不接受操作系统或浏览器内置的 CA 根证书对应的任何证书,通过这种授权方式,保障了 APP 与服务端通信的唯一性和安全性,因此我们移动端 APP 与服务端(例如 API 网关)之间的通信是可以保证绝对安全。但是 CA 签发证书都存在有效期问题,所以缺点是在证书续期后需要将证书重新内置到 APP 中。

  • 公钥锁定

    提取证书中的公钥并内置到移动端 APP 中,通过与服务器对比公钥值来验证连接的合法性,在制作证书密钥时,公钥在证书的续期前后都可以保持不变(即密钥对不变),所以可以避免证书有效期问题。

证书锁定旨在解决移动端 APP 与服务端通信的唯一性,实际通信过程中,如果锁定过程失败,那么客户端 APP 将拒绝针对服务器的所有 SSL/TLS 请求,FaceBook/Twitter 则通过证书锁定以防止 Charles/Fiddler 等抓包工具中间人攻击


APK渗透

在线反编译器

在线检测

信息收集

案例

ESFileExplorers CVE-2019-6447 任意文件读取

  • 简介

    基于 Android 平台的 ES File Explorer File Manager application 4.1.9.7.4 及之前版本中存在安全漏洞,该漏洞源于 ES 应用程序在运行一次之后,TCP 59777 端口并未关闭依旧可以通过 HTTP 协议接收 JSON 数据。攻击者可通过向 TCP 59777 端口发送请求利用该漏洞读取任意文件或执行应用程序。

  • POC | Payload | exp


系统漏洞

Android's overlay attacks


Source & Reference