移动应用的黑盒测试(2)

来源:互联网 发布:如何将mac照片导入u盘 编辑:程序博客网 时间:2024/05/22 04:36


基于设备的移动应用漏洞确认

根据移动应用的功能,测试人员应在模拟器或客户端提供的物理设备中执行测试,或兼而有之。在测试过程中,测试者应确认应用的功能,并针对任何内部的逻辑控制和外部连接。因为移动应用在许多方面是不同的,应当使用下面的步骤来测试每一种应用:

1、映射应用的功能

应当人工检查应用程序,确认其功能和应用程序访问不同组件的方法。评估团队应当重点关注如何确认外部的网络连接,以及数据存储、用户输入和许可等问题。

2、监视连接

移动应用有许多连接到外部源的方式。测试者应当使用代理工具和网络嗅探器,用来监视每一个请求和响应。还要记录数据通信,以便于日后的分析。如果应用程序使用了蓝牙或其它连接,为了捕获数据通信,开发团队应当使移动设备与一个服务器进行配对使用。

3、检查数据处理

由于应用程序的使用,数据可能存在于多个不同的位置。用户或非授权方有可能通过各种方式访问敏感信息或应用。评估应当确认敏感信息在何处产生,并分析如下情形中如何保护数据:由于用户交互而提交给应用的用户输入;用于输入到应用程序中的文件;在正常使和应用期间产生的文件;由于程序的例外进程所生产的应用程序日志;应用程序和设备(它们有可能将敏感数据放在非正常的或非法的位置)的缓存机制;通过网络连接而从外部服务器获得的数据。

4、反编译应用程序

只要条件允许,就应当对应用程序进行反编译,其目的是为了检查有可能使应用程序的漏洞被利用的危险方法,如检查是否有缓冲区溢出问题。虽然许多移动平台是基于Java的,但它们自己的编译器与传统的安全工具并不兼容。如今许多平台都有其反编译器,如黑莓和安卓,苹果也提供了一个反编译器。这些工具能够深入分析应用程序的逻辑,并可以进行有限的静态代码分析。

5、检查加密机制

任何时候都应当保护静态数据和传输中的数据,使其不被未获得授权的人员访问。测试人员应当检查移动设备和任何网络服务器的通信加密情况,检查应用程序是否将文件保存到了设备上,或在备份过程中是否发生过转移。

作者:zsb190623 发表于2013-5-25 19:32:25 原文链接http://www.csdn123.com/html/blogs/20130525/16191.htm
0 0
原创粉丝点击