论文部分内容阅读
金融危机后,在制造业的发展出现了一些新动向,各国政府纷纷提出战略计划兴建下一代制造业,如工业互联网,中国制造2025等,这种战略意在通过信息技术赋能工业,使其流程优化,降低成本,提高效率,从而释放更大的生产力。由于工业互联网往往存在安全攸关行业,确保工业互联网的安全具有特别重要的意义。为了方便工业系统中子系统之间的协作,工业互联网中的不同子系统之间互联程度越来越高。系统将面临更多的外来安全威胁。在工控系统投入实际运行前,运用有效的测试技术及时发现整个系统可能存在的漏洞,提前修补预防,避免实际运行中的风险意义重大。当前,将传统的模糊测试技术运用于工控系统漏洞的发现是一种有效的方法;但存在一些限制之处:(1)对测试人员要求较高,需要测试人员根据系统中运行的通讯协议规范设计恰当的测试用例,来实施测试。(2)测试周期较长,从测试用例的设计到测试结束,需要花费较长的时间,在面临比较亟待投入运行的系统时,无法高效的完成测试任务。(3)不具有普适性;传统方法每次都需要根据特定的测试目标设计相应的测试用例,不能达到一次设计多处使用的效果。本文基于深度对抗学习提出一种打破上述限制的模糊测试用例生成方法。首先从待测试的系统中抓取大量的通讯数据,对数据进行预处理作为方法中所建立的深度对抗学习模型的训练数据。其次,设计建立生成对抗网络中的生成模型和判别模型,用所获得的数据对模型进行训练得到特定的模型。用生成模型生成大量的测试用例数据。再次,用生成的数据对系统进行压力测试,引发系统异常。最后,根据系统的异常,找到系统异常的原因,进行修补改进。实际环境中的实验结果证明该方法表现出了较好的性能,在不同的工控系统测试中均能获得较高的测试效果,达到测试目的,能有效引发系统异常行为。在测试效率上和测试目标无关性上都达到预期的结果。