摘要

Android操作系统提供了丰富的应用程序间消息传递机制,其中基于意图的通信是Android应用程序组件间的一种重要通信机制。该机制促进了应用程序间的协作,并通过增加组件重用减轻了开发人员的负担。但是这一消息传递机制可能被滥用,例如应用程序将错误消息发送给目标应用程序,从而导致目标应用程序崩溃。针对这个问题,提出一种基于模糊测试的健壮性检测方法,并实现了意图模糊测试工具ICCDroidFuzzer。该方法通过静态分析获取组件相关信息来构造测试套件,并将其发送给目标组件,同时监测Android系统日志,以发现是否存在运行时崩溃。使用ICCDroidFuzzer检测了420个真实的商业应用程序,通过对实验结果进行分析,发现了19种导致应用程序崩溃的异常。该工具可以自动化地对应用程序的健壮性进行测试,适用于没有人为干预的大量Android应用程序的测试。