摘要

物联网(internet of things, IoT)设备漏洞带来的安全问题引发了研究人员的广泛关注,出于系统稳定性的考虑,设备厂商往往不会及时更新IoT固件中的补丁,导致漏洞对设备安全性影响时间更长;同时,大部分IoT固件文件源码未知,对其进行漏洞检测的难度更大。基于机器学习的代码比较技术可以有效应用于IoT设备的漏洞检测,但是这些技术存在因代码特征提取粒度粗、提取的语义特征不充分和代码比较范围未进行约束而导致的高误报问题。针对这些问题,提出一种基于神经网络的两阶段IoT固件漏洞检测方法。基于代码的多维特征缩小代码比较范围,提高比较的效率和精确度;再基于代码特征,用神经网络模型对代码相似程度进行学习,从而判断二进制IoT固件的代码与漏洞代码的相似程度,以检测IoT固件中是否存在漏洞,最后实验证明了所提方法在IoT固件检测中的有效性。