1. Android开发工具 配置环境,开发工具,测试机或者虚拟机,adb
2. 实践app安全 2.2 检查app的证书和签名 解压apk文件
1 2 3 4 5 6 7 8 输出证书内容 keytool -printcert -file META-INF/CERT.RSA 查看签名文件内容 cat META-INF/CERT.SF 查看证书 openssl pkcs7 -inform DER -in META-INF/CERT.RSA -noout -print_certs -text
2.3 对Android app签名 1 2 3 4 5 生成keystore keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore 对APK重新签名 jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore demo.keystore -signedjar demo_signed.apk
2.4 验证app的签名 1 2 验证APK签名 jarsigner -verify -verbose demo_signed.apk
3. Android安全评估工具 集成环境:Santoku(基于Ubuntu,集成部分移动安全工具)
drozer
1 2 3 4 5 6 7 8 9 10 11 12 启动drozer agent adb forward tcp:31415 tcp:31415 drozer console connect run app.package.list run app.package.list -f app名 run app.package.info -a 包名 run app.activity.info -a 包名 run app.provider.info -a 包名 run app.service.info -a 包名 run app.broadcast.info -a 包名 run app.package.attacksurface 包名 run app.activity.start --action *** --category *** --component ***
编写drozer模块
4. 利用app中的漏洞
logcat
网络流量:tcpdump
使用drozer攻击导出的组件
对app做中间人攻击(Burpsuite或其他MITM工具
5.保护app
组件,不必要导出
定制权限
content provider路径
防御sql注入
验证app的签名(防篡改)
反逆向工程(检测安装程序,模拟器,调试标志位)
Proguard删除日志和/或进行混淆
DexGuard进行高级混淆
6.逆向app 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 java To dex javac -source 1.6 -target 1.6 Example.java #dx路径:D:\AndroidSDK\build-tools\22.0.1\lib\dx.jar dx --dex --output=Example.dex Example.class dex文件格式 dex文件解析: #dexdump路径:D:\AndroidSDK\build-tools\22.0.1\dexdump dexdump Example.dex dx --dex --verbose-dump --dump-to=outfile.txt Example.class dex To smali baksmali.jar Example.dex -o out smali To dex smali.jar out -o out.dex dex2java dex2jar Example.dex jd-gui NDK so库 objdump -D ×××.so gdbserver+gdb
7.网络安全
验证SSL自签名证书(注意不要使用网络上的错误代码)
使用onionkit库中的StrongTrustmanager
SSL pinning–限定受信SSL的范围
8.原生代码中漏洞的利用和分析
溢出及root漏洞,略
自动fuzzing测试Android原生代码:
Radamsafuzzer
busybox
9.加密与在开发时使用设备管理策略
使用加密库
生成对称加密密钥
保护SharedPreferences数据
基于口令的加密
用SQLCipher加密数据库
Android Keystore provicer
在开发时使用设备管理策略
最終更新:2019-01-31 12:31:41
水平不济整日被虐这也不会那也得学,脑子太蠢天天垫底这看不懂那学不会