Android病毒分析技巧和方法
分析前的准备工作:
- 析前首先了解应用自身的的功能,不要将应用自身的工作当作恶意行为来处理.
- 看权限,根据应用的权限判断应用可以产生哪些行为,并判断出这些权限是否和应用的功能相关,如果有与应用本身不相关的功能那么针对这些权限的产生的行为要进行确认
- 的病毒属于在正常应用中插入恶意代码,并且病毒行为需要的权限和应用本身需要的权限是重复的,此时要辨别出那些代码是病毒的代码,那些是应用本身的代码
- 的应用确实需要一些看似和应用无关的权限,比如很多杀入软件也有发送短信的权限和代码,这点可以通过运行程序查看是否有相应的提示,比如在应用界面会有短信反馈意见的提示.
常规分析的方法:
- 压程序后从程序的入口顺序分析程序的运行流程的行为,跳过不必要的代码
- 序运行的包括Application类,主Activity或者各种广播接收者.
- 后顺着入口继续分析Service,Thread,AyncTask等.
- 行过程中可以通过运行命令 tcpdump -p -vv -s 0 -w xxx.pcap的办法对获取网络传输数据,通过分析pcap可以帮助判断是否有隐私窃取行为和远程控制行为
- 行程序过程中连接eclipse,可以通过CatLog和File Explorer查看应用的一些反馈信息和使用的文件等,Emulator Control可以模拟发送短息、接打电话、位置定位来帮助判断是否有系统破坏行为等.
快速分析的方法:
- 感api直接查找法
- 用DroidBox和APIMonitor监控进出的网络数据,文件读写,发出的短信和通话记录,加密类api等.
- 线分析工具和杀毒软件检查,根据以上提供的信息进行行为确认或者重点分析
获取不直接数据的方法:
- 压后在目标代码处