您的位置:首页 > 移动开发 > Android开发

Android应用安全测试点滴

2015-07-19 16:32 369 查看
一般使用模拟器进行测试,因为root权限不受限制

1. 反编译

流行的工具有apktool,dex2jar,jd-gui等

首先,安全的应用代码需要做混淆

2.签名

经过反编译的apk需要重新签名,如果一个安全的应用要求能够识别别修改后的apk并停止运行

3. android:exported = true要检查是否可以跳过安全检查,比如有安全要求的应用要特别的留意,如果一个支付软件,跳过安全检查做一些事,那岂不是逆天了。

通过apktool等反编译得到AndroidManifest.xml这个文件里面所有exported=true的检查

使用adb shell am start -n com.package.name/com.package.name.ActivityName来启动actvity

所以除非必要 android:exported = true时不存在的,如果需要请用增加自定义权限来控制

4. tcpdump 可以抓到手机端数据,假设我们在一个公共wifi登录一些应用我们会不会留下我们自己的蛛丝马迹呢,当然不希望留,但是情况令人悲观,包括一些大公司的应用,有的甚至密码都是明文,使用网易新闻的人注意了,你的邮箱啥的,密码可能只是base64编码,怎么办(一年以前的探索,最近没看)

5. root权限

有些用户使用root权限,这个对于用户是非常大的风险,因为根据那个机制,所有应用都有权限申请,一旦是root权限了,该应用就有权力为所欲为,有些应用把数据写到data/data的自己,包含用户名密码明文,不可取的方法,测试的时候留意这些xml存储的是啥

6. 渗透工具Drozer的帮忙

Drozer原名mercury,是一款不错的Android APP安全评估工具,具体可以参考http://www.freebuf.com/tools/26503.html

可以尝试使用来发现潜在问题

其实还有很多,鉴于本人水平有限,有些还需要了解使用,一直在收集一些资料,可惜太少了,攻防之战在不断的演变,不断地关注才是上策

附录:android渗透测试工具大集合:
http://www.freebuf.com/tools/36880.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息