【转】Android APP安全测试简介

198 阅读2分钟

移动APP面临的威胁:木马、病毒、钓鱼、破解、篡改、二次打包、账号窃取、广告植入、信息劫持等

一、Android APP安全测试思路分析:

1.安全测试工具

2.基础环境

3.数据安全

4.程序安全

5.数据传输

6.业务安全

二、APP面临的风险

1.不安全的服务器访问控制

2.不安全的数据存储

3.传输层保护不足

4.非预期的数据泄露

5.脆弱的认证和授权

6.已知的不安全加密方式

7.客户端注入

8.通过不被信任的输入改变安全设定

9.会话处理不当

10.缺乏二进制保护

三、业务数据流

数据输入基础环境安全
数据存储数据安全
内部传输程序安全
通讯通讯安全
服务器业务安全


四、所需知识

LinuxAndroid系统编程逆向其它知识 
常用操作命令adb命令Java语法Smali语法http/ https
 安全框架NDK编程Dex文件格式html
 程序运行机制SDK编程ARM汇编XSS
 常见漏洞  JS


五、使用工具

大部分工具获取地址:www.androiddevtools.cn/

 

六、基础环境安全

1.基础环境安全测试内容:反编译、逆向、Intent注入、键盘记录、屏幕截取等

2.反编译

  反编译步骤请参考:blog.csdn.net/bbs11007/ar…

3.反编译后能干啥?修改资源文件,比如替换应用图标、名称、版本,甚至植入广告等

七、数据安全

 1.数据存储、日志,硬编码中的用户信息泄露,应用数据一般都存放在/data/data/<appname>目录下,检查sharedpreference 、files、databases存储的用户信息,比如用户的密码、电话、银行卡等信息是否明文显示,或不安全的加密方式

2.查看数据库文件:chmod修改文件夹或文件权限,使用adb pull命令导出到本地,然后用数据库软件查看,比如SQLite

3.日志的检测,检查内容和上面相似

 adb shell

ps | grep mw 查找到客户端的进程号

logcat | grep pid 查看进程输出的日志

4.硬编码检测:反编译出来的Smali源码中搜索关键字符串,password,admin,AES_KEY等,是否有账号密码等信息

八、程序安全

1.防止二次打包,篡改

2.Smali :    blog.csdn.net/bbs11007/ar…

九、安全扫描工具

在google市场下个AVL pro用里面的应用分析器

十、其它测试推荐

1.IOS

bbs.pediy.com/thread-1632…

2.Android

bbs.pediy.com/thread-1632…

(以上内容纯属学习摘取,大家共同学习进步)
--------------------- 

原文:blog.csdn.net/baidu_37461…
版权声明:本文为博主原创文章,转载请附上博文链接!