• 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
高级检索

基于人工智能的物联网恶意代码检测综述

刘奇旭, 刘嘉熹, 靳泽, 刘心宇, 肖聚鑫, 陈艳辉, 朱洪文, 谭耀康

刘奇旭, 刘嘉熹, 靳泽, 刘心宇, 肖聚鑫, 陈艳辉, 朱洪文, 谭耀康. 基于人工智能的物联网恶意代码检测综述[J]. 计算机研究与发展, 2023, 60(10): 2234-2254. DOI: 10.7544/issn1000-1239.202330450
引用本文: 刘奇旭, 刘嘉熹, 靳泽, 刘心宇, 肖聚鑫, 陈艳辉, 朱洪文, 谭耀康. 基于人工智能的物联网恶意代码检测综述[J]. 计算机研究与发展, 2023, 60(10): 2234-2254. DOI: 10.7544/issn1000-1239.202330450
Liu Qixu, Liu Jiaxi, Jin Ze, Liu Xinyu, Xiao Juxin, Chen Yanhui, Zhu Hongwen, Tan Yaokang. Survey of Artificial Intelligence Based IoT Malware Detection[J]. Journal of Computer Research and Development, 2023, 60(10): 2234-2254. DOI: 10.7544/issn1000-1239.202330450
Citation: Liu Qixu, Liu Jiaxi, Jin Ze, Liu Xinyu, Xiao Juxin, Chen Yanhui, Zhu Hongwen, Tan Yaokang. Survey of Artificial Intelligence Based IoT Malware Detection[J]. Journal of Computer Research and Development, 2023, 60(10): 2234-2254. DOI: 10.7544/issn1000-1239.202330450

基于人工智能的物联网恶意代码检测综述

基金项目: 中国科学院青年创新促进会(2019163);中国科学院战略性先导科技专项项目(XDC02040100);中国科学院网络测评技术重点实验室项目;网络安全防护技术北京市重点实验室项目
详细信息
    作者简介:

    刘奇旭: 1984年生. 博士,教授,博士生导师. 主要研究方向为网络攻防技术、网络攻击发现、溯源与取证

    刘嘉熹: 1997年生. 博士研究生. 主要研究方向为恶意代码分析、网络攻防技术、机器学习

    靳泽: 1995年生. 博士. 主要研究方向为物联网安全和网络攻防技术

    刘心宇: 1997年生. 博士研究生. 主要研究方向为Web安全、Android安全

    肖聚鑫: 1999年生. 博士研究生,主要研究方向为网络攻防技术、物联网安全、流量分析

    陈艳辉: 1996 年生. 博士研究生. 主要研究方向为网络攻防、恶意软件、机器学习

    朱洪文: 1998年生. 硕士研究生. 主要研究方向为Web安全、恶意代码检测

    谭耀康: 1998年生. 硕士研究生. 主要研究方向为Web安全、程序分析

    通讯作者:

    靳泽(jinze@iie.ac.cn

  • 中图分类号: TP309.5;TP391

Survey of Artificial Intelligence Based IoT Malware Detection

Funds: This work was supported by the Youth Innovation Promotion Association CAS (2019163) , the Strategic Priority Research Program of Chinese Academy of Sciences (XDC02040100) , the Project of CAS Key Laboratory of Network Assessment Technology, and the Project of Beijing Key Laboratory of Network Security and Protection Technology.
More Information
    Author Bio:

    Liu Qixu: born in 1984. PhD, professor,PhD supervisor. His main research interests include network attack and defense technology, cyber-attacks discovery, and attribution and forensic

    Liu Jiaxi: born in 1997. PhD candidate. Her main research interests include malware analysis, network attack and defense technology, and machine learning

    Jin Ze: born in 1995. PhD. His main research interests include IoT security, and network attack and defense technology

    Liu Xinyu: born in 1997. PhD candidate. Her main research interests include Web security and Android security

    Xiao Juxin: born in 1999. PhD candidate. His main research interests include network attack and defense technology, IoT security, and traffic analysis

    Chen Yanhui: born in 1996. PhD candidate. His main research interests include network attack and defense, malware, and machine learning

    Zhu Hongwen: born in 1998. Master candidate. His main research interests include Web security and malware detection

    Tan Yaokang: born in 1998. Master candidate. His main research interests include Web security and program analysis

  • 摘要:

    近年来,随着物联网(Internet of things, IoT)设备的大规模部署,针对物联网设备的恶意代码也不断出现,物联网安全面临来自恶意代码的巨大威胁,亟需对物联网恶意代码检测技术进行综合研究. 随着人工智能(artificial intelligence, AI)在计算机视觉和自然语言处理等领域取得了举世瞩目的成就,物联网安全领域也出现了许多基于人工智能的恶意代码检测工作. 通过跟进相关研究成果,从物联网环境和设备的特性出发,提出了基于该领域研究主要动机的分类方法,从面向物联网设备限制缓解的恶意代码检测和面向性能提升的物联网恶意代码检测2方面分析该领域的研究发展现状. 该分类方法涵盖了物联网恶意代码检测的相关研究,充分体现了物联网设备独有的特性以及当前该领域研究存在的不足. 最后通过总结现有研究,深入讨论了目前基于人工智能的恶意代码检测研究中存在的问题,为该领域未来的研究提出了结合大模型实现物联网恶意代码检测,提高检测模型安全性以及结合零信任架构3个可能的发展方向.

    Abstract:

    In recent years, with the large-scale deployment of Internet of things (IoT) devices, there has been a growing emergence of malicious code targeting IoT devices. IoT security is facing significant threats from malicious code, necessitating comprehensive research on IoT malware detection techniques. Following the remarkable achievements of artificial intelligence (AI) in fields such as computer vision (CV) and natural language processing (NLP), the IoT security field has witnessed numerous efforts in AI-based malware detection as well. By reviewing relevant research findings and considering the characteristics of IoT environments and devices, we propose a classification method for the primary motivations behind research in this field and analyze the research development in IoT malware detection from two perspectives: malware detection techniques towards IoT device limitation mitigation and IoT malware detection techniques towards performance improvement. This classification method encompasses the relevant research in IoT malware detection, which also highlights the unique characteristics of IoT devices and the current limitations of the IoT malware detection field. Finally, by summarizing existing research, we extensively discuss the challenges present in AI-based malware detection and present three possible directions for future research that consists of combining foundation models in IoT malware code detection, improving the safety of detection models, and combining zero trust architecture in this field.

  • 一直以来,高性能计算机(high performance computer, HPC)都是解决科学研究各领域实际问题的重要工具,依靠HPC的强大计算能力,能使很多求解空间极大的科研问题在现实可见的时间内完成解算.

    最近20年,科学研究已经从计算科学时代进入数据科学范式时代,科学家需要从海量的数据中去探索科学规律和突破科学发展瓶颈,这就意味着传统的用高密度计算去模拟复杂现象进行科学研究的方法需要创新发展,用高性能计算与人工智能相融合的新方法(HPC+AI)去解决实际问题,正逐渐成为一种行之有效的科研方法,例如2020年的戈登贝尔高性能计算应用奖就颁发给基于深度学习实现1亿原子分子动力学的应用[1].

    人工智能应用的开发和运行,往往依赖于人工智能编程框架,如TensorFlow[2],Pytorch[3]等,这些框架在本质上均是数据流计算系统,它们将神经网络模型组织成数据流图,并利用图节点融合、图剪枝、常量传播等技术进行图优化,然后再通过运行系统将图节点调度到实际的计算资源上执行. 换言之,数据流计算系统是支撑人工智能应用的重要基础软件,但是,要在国产高性能计算机上支持高效的数据流系统,则面临着严峻的挑战.

    从底层硬件的角度来说,国产异构众核处理器具有独特的复杂结构,新一代国产异构处理器sw26010pro[4-5]具有多级计算资源、多层次存储和多级互联网络结构,在体系架构上与传统的多核CPU、众核GPU以及专用的人工智能处理器相比有着本质的区别.

    要在sw26010pro上高效执行数据流系统,需重点解决2个问题:

    1)如何充分利用sw26010pro的众核计算资源. 计算核心阵列是国产异构众核处理器的性能来源,具有众多的精简核心和强大算力,但也存在着访存效率低、片上缓存小和管理复杂等实际问题. 为实现数据流图的高效执行,就需要实现自适应的众核阵列加速方法,能够自动加速数据流图中的关键节点,充分利用众核计算资源.

    2)如何设计高效的两级并行策略,充分利用国产异构众核处理器的全片计算资源.sw26010pro采用全片多核组集成的体系结构,每个核组都是同构的众核阵列,多核组之间可以共享全局存储,数据流图中的节点执行以单核组为基本单元. 要充分结合硬件结构特性,实现两级并行策略,通过相应的图优化和调度方法,确保多核组能够并行执行数据流图,提升系统性能.

    对于上层用户而言,传统高性能计算机的软件环境也很难满足HPC+AI领域应用的动态化和智能化需求,并且,用户更希望将重心放在上层算法设计上,而非底层体系结构相关的优化上.

    为此,本文提出了一种面向国产异构众核处理器的数据流计算系统swFLOWpro,支持使用TensorFlow接口构建数据流计算和深度学习典型模型,并实现了对用户透明的众核并行加速,可以支持数据流程序的高效开发,在运行时充分利用国产异构众核处理器的硬件能力.

    本文的主要贡献有4点:

    1)在国产异构众核处理器上构建了功能完备的数据流计算系统swFLOWpro,能够支持以深度学习为代表的数据流应用的开发和运行;

    2)设计并实现了一种专门针对国产异构众核处理器的核心计算加速引擎swHMAE,将之与数据流计算系统松耦合,实现自动化的众核并行加速及算子分析、调试功能;

    3)针对sw26010pro的多核组共享内存结构,设计了一种面向异构融合体系结构的两级并行策略,结合图分裂技术,能充分利用全片核组的计算资源;

    4)基于swFLOWpro进行Alexnet,ResNet,VGG,Inception等典型CNN神经网络模型训练测试,实验结果表明本文设计的数据流计算系统能够获得很好的异构众核并行加速效果.

    传统的冯•诺依曼计算机以控制流为执行模型,而数据流计算则采用了不同的思路,将程序组织成有向图,每个图节点表示一个算子,边则代表节点之间的依赖关系,数据在边上流动,当一个节点的所有输入数据均已就绪时,该节点就会被启动. 数据流计算由程序本身的数据依赖关系来激活计算,更有利于充分发挥其天然的可并行性.

    20世纪90年代,麻省理工大学提出一种基于数据流思想的处理器设计方案,该方案没有共享存储和寄存器的设计,数据直接在计算部件之间流动. 当一条指令所有操作数均已就绪时,即可以进入执行状态. 这种体系架构能够充分挖掘程序的指令级可并行性,但也存在着运行开销大、并行粒度过小等实际问题,与传统计算机系统的天渊之别也限制了其进一步发展.

    相关研究[6]还提出了一种硬件集成数据流芯片和冯•诺依曼架构芯片的体系结构设计,程序在编译系统的支持下,可以在运行过程中动态调度到不同的芯片架构上去. 这种处理器架构设计比较新颖,但对编译和硬件实现的环境要求比较高.

    纯硬件的数据流计算系统面临着诸多问题,最本质的问题在于其与传统计算机软硬件生态无法兼容,发展严重受限. 于是,数据流计算机逐渐向与冯•诺依曼架构融合的方向发展,出现了“类数据流”计算机,这一类计算机融合了控制流和数据流的思想,将程序组织成一系列的宏指令或者代码块,每个宏指令或代码块内部采用数据流执行模式,而在宏指令和代码块之间依然采用传统的控制流思想进行组织管理,该类计算机包括TRIPS[7],T3,EVX等. 类数据流计算机将数据流的思想用于最底层的指令层面,在程序层面则保持着和传统架构相同的程序逻辑,例如EDGE[8]架构执行模型,就是将程序编译成由超块组成的控制流图,将超块内部的代码编译成数据流指令,数据直接在计算部件之间流动而不通过寄存器,但EDGE架构必须运行在专门的类数据流处理器架构上,通用性较差. 目前,最常见的数据流系统是在传统冯•诺依曼架构上实现的软件数据流系统.

    Codelet[9-10]执行模型由特拉华大学提出,它是一种针对E级计算机的需求而进行设计的细粒度并行、事件驱动的程序执行模型. Codelet模型从数据流执行模型中得到启发,结合传统的冯•诺依曼体系架构,形成了一种在通用计算机上运行的数据流程序执行系统.

    TensorFlow是一款具有数据流思想的软件计算系统,该系统运行于通用处理器架构上,并对众核GPU和人工智能专用芯片TPU有后端支持.TensorFlow是人工智能领域非常热门的编程框架,它将人工智能的算法模型组织成数据流图,并通过运行支持数据流图的高效映射和资源分配.TensorFlow给用户提供了丰富的API接口来构建数据流计算,对深度学习的支持也比较完善,不过缺乏对于国产异构众核架构的后端支持.

    在国产异构众核处理器上,关于数据流计算系统的研究也一直在进行中.

    SunwayFlow[11]是基于神威太湖之光高性能计算机系统开发的数据流计算系统,该系统将Codelet执行模型移植到国产处理器上,并使用高性能共轭梯度基准测试(HPCG)作为测试数据,获得10.32倍的加速效果. 但SunwayFlow支持的Codelet模型适用范围有限,特别是对深度学习的支持严重不足.

    swCaffe[12-13]是面向国产异构众核处理器的深度学习编程框架,它在底层通过swDNN库支持众核加速,针对VGG-16有4倍的加速效果. 但是Caffe框架[14]的编程接口已逐渐被淘汰,而swCaffe要实现众核加速,对模型的参数也有严格的限制,已无法适应数据流计算和深度学习应用的实际需求.

    swFLOW[15]是2021年推出的针对国产异构众核处理器的数据流计算系统,该系统重构了TensorFlow框架,支持在sw26010处理器上执行数据流计算,针对典型神经网络模型有10.42倍的加速. 不过,swFLOW在功能上只支持TensorFlow的C++接口,在优化设计上重点考虑面向大规模计算资源的分布式训练,缺乏针对单进程的深度优化,也没有针对全片多核组运行模式的优化支持,实际使用效果有待增强.

    针对上述多款数据流计算系统软件的缺陷,本文设计并实现了面向国产异构众核处理器sw26010pro的新一代数据流计算系统swFLOWpro.该系统在编程接口支持上复用了TensorFlow的前端模块,可以完全兼容TensorFlow的Python和C++编程接口,提升系统易用性,在后端则通过独立的核心计算加速引擎模块来提供针对数据流图节点的执行加速,除此之外,还针对sw26010pro的多核组共享内存设计,开发了一种面向异构融合的两级并行方法,从而提升全片计算资源的应用效率.

    Megatron-LM[16]主要讨论如何在大规模GPU集群上通过tensor/pipline/data等多种并行模式高效实现大模型的训练,通过并行模式的混合能够提升10%的数据吞吐量,在3072个GPU上训练1万亿参数模型,单GPU峰值效率达到52%.

    Gspmd[17]提出一种基于编译器的自动化机器学习并行系统,可以在单节点代码上通过添加编译指示实现自动化并行代码生成,在2048块TPUv3上达到了50%~62%的计算利用率.

    DAPPL[18]面向大模型提出了结合数据并行和流水线并行方法的并行训练框架,主要解决的问题是针对模型结构和硬件配置决策最优并行策略,如何调度数据流计算的不同流水线阶段.

    Alpa[19]针对分布式深度学习训练提出了算子内和算子间并行策略,通过系统化的方式将分布式并行策略的优化空间结构化,并在这个优化空间中寻找最优策略并实现自动化.Alpa以计算图为输入,输出并行方案,主要考虑如何划分子图和计算任务调度.

    目前,面向数据流计算的相关研究大多是针对大模型和大规模并行系统,专注于如何切割数据流图并将其调度到各计算节点上,本文则主要针对sw26010pro的异构众核结构和普通深度学习模型,专注于单处理器内部的计算流程,通过算子内和算子间的两级并行策略,高效利用单处理器计算能力. 在后续工作中,swFLOWpro会在寻找最优并行策略以及调度模型的优化上加强研究.

    本节主要介绍国产异构众核处理器sw26010pro的结构特点,以及swFLOWpro的整体架构和工作流程.

    sw26010pro是一款国产异构众核处理器,它包含6个核组(core group , CG),核组之间通过片上环网互连,每个核组包含2种异构核心,一种是管理核心(management processing element,MPE),另一种是计算核心(computing processing elements, CPE),1个MPE和1个8×8的CPE组成1个异构计算阵列. 一般而言,MPE主要负责计算任务、全局内存和运算核心的管理;CPE负责计算任务的执行,每个CPE通过一个软件管理的片上便签存储器(LDM)来提升访存效率. sw26010pro结构如图1所示.

    图  1  sw26010pro结构
    Figure  1.  The structure of sw26010pro

    sw26010pro采用SW64自主指令集设计. 其中, MPE具有32 KB L1指令缓存、32 KB L1数据高速缓存和512 KB L2高速缓存;CPE支持512 b的SIMD运算,支持双精度、单精度和半精度浮点及整数等多种数据类型的向量运算,每个CPE具有独立的指令缓存和片上LDM存储,其中LDM可以配置为L1数据缓存,也可以配置为用户管理的局存空间,支持通过DMA方式实现LDM和全局内存之间的数据传输;支持通过RMA方式实现不同CPE之间的LDM存储传输.

    sw26010pro全处理器包含6个同构的核组,6核组之间可以共享全局内存. 通常情况下,1个进程运行在1个核组上,多个核组之间通过MPI消息进行通信,但这样会导致单进程可用的内存空间和计算能力都较小,频繁的MPI通信也会造成性能损失. 事实上,通过多核组的共享全局内存,可以结合多线程管理和核组资源分配,实现全片视角的统一编程,这样能大幅度提升单进程的可用内存空间和计算能力,减少进程间通信造成的性能损失.

    与常规的处理器设计不同,sw26010pro将更多的硬件逻辑用于计算,从而最大程度地提升计算密度,精简的CPE核心设计导致了其计算能力很强,但访存能力较弱. sw26010pro提供了用户可以显式管理的LDM存储来弥补访存与计算能力不匹配的问题,从而支持用户充分挖掘异构众核的计算能力. 不过,这种设计模式就意味着程序的高效运行需要更加复杂的优化策略和更加全面的算法改造.

    对于数据流计算和深度学习领域的编程用户来说,他们更关注的是数据流图的结构、模型的构造以及训练模型的超参数调整等上层算法设计,而非底层硬件细节和体系结构相关优化技术.

    为此,swFLOWpro的主要设计目标就是构建国产异构众核处理器与用户之间的桥梁,提供可移植性强、功能丰富的编程接口,并将底层硬件细节对用户透明,实现自动化的众核并行加速.

    swFLOWpro数据流计算系统的整体架构图如图2所示.swFLOWpro系统可以划分为2个子模块:前端模块和后端模块. 中间层由C-API桥接.

    图  2  swFLOWpro整体架构
    Figure  2.  The overall architecture of swFLOWpro

    前端模块是一个支持多语言的编程环境,它提供基于数据流图的编程模型,方便用户使用TensorFlow 的Python和C++编程接口构造各种复杂的计算图,从而实现各种形态的模型搭建.

    C-API是桥接前端模块和后端模块的中间层次,主要是通过SWIG(simplified wrapper and interface generator)机制支持前端多语言编程环境与C++实现的后端模块之间的通道.

    为保证系统的易用性和提升深度学习程序的可移植性,swFLOWpro框架的前端模块和C-API复用了TensorFlow框架的相应模块,主要是为了保持对TensorFlow编程的兼容性.

    后端模块则是体系结构相关的运行模块,也是swFLOWpro针对sw26010pro架构特点重点开发的模块.swFLOWpro的后端模块主要包括数据流图优化、运行时系统、算子(OP)实现层等子模块. 其中,数据流图优化模块支持面向异构众核处理器的混合精度训练优化和节点融合优化,混合精度训练优化在数据流图中插入数据类型转化节点,将单精度运算转换为效率更高、精度更低的半精度运算,而在更新参数节点等对精度要求更高的节点之前,再将半精度转化为单精度,从而支持混合精度训练;图节点融合优化则将多个图节点融合,形成更大的计算单元,减少内存管理开销,提升运行效率. 运行时系统主要负责计算图节点的管理、调度、执行以及内存分配,根据图中依赖关系依次执行各个节点. OP实现层则是针对sw26010pro的存储层次和结构特点,将OP的定义和执行解耦,通过独立的异构众核加速引擎(swHMAE)实现对关键性能OP的众核加速,这一部分将在2.3节中详细介绍.

    swHMAE是一个独立于swFLOWpro系统之外的独立模块,其设计目的是为数据流计算系统提供一个松耦合的、体系结构相关深度优化的核心计算加速框架. 框架整体结构如图3所示.

    图  3  swHMAE 结构
    Figure  3.  The structure of swHMAE

    swHMAE提供了一系列性能关键计算的调用接口,这些接口在swFLOWpro的算子实现层进行调用,而其真正实现则集成于一个独立的动态库中.

    swHMAE提供的这些接口是完全虚拟化的,仅用来描述要完成哪种运算和需要哪些参数,swHMAE可以向上支持不同的人工智能编程框架或数据流系统的图节点实现模块,向下则可以调用多种众核加速算法库,也可以集成用户自定义的众核算法,具有很好的可扩展性.

    在swHMAE中,针对不同的计算类型,主要完成2方面的工作:1)收集核心计算的参数. 2)根据参数类型、参数特性及输入规模,判断是否适合使用众核加速,如不适合,则该API返回失败,swFLOWpro将调用默认的实现算法;否则,swHMAE将根据不同的参数类型和规模自适应地选择最优的异构众核加速算法.

    swHMAE支持的核心计算类型涵盖了数据流计算常见的计算类型,核心计算类型既有深度学习领域的常见计算,例如卷积、矩阵乘、激活、归一化等,这类计算的众核加速主要是通过swDNN,swBLAS,Sw_OPs等第三方库来支持,又有一些更通用的数据流计算节点类型,如批量数据的基础运算、数据的Padding,tile,slice等访存操作,以及其他一些定制的计算类型.

    swHMAE的工作原理算法如算法1所示:

    算法1. swHMAE工作原理算法.

    输入:计算类型OP-type, 张量t1,t2,…,数据类型 data-type,常量参数params

    输出:计算结果张量t-results.

    ① if notSuitforMCOP-type,params,t1,t2,…)

    ②  return false;/* 如果该OP不适合众核加速返 回false,执行swFLOWpro的默认计算模式 */

    ③ end if

    timing_or_debug_this_op_start();

    ⑤ if OP-type $\in $ {SW_Conv,SW_Activate, SW_Pooling}

    ⑥  t-results = swDNNOP-type,params,t1,t2,…);

    ⑦ else if OP-type $\in $ {SW_Matmul}

    ⑧  t-results = swBLASOP-type,params, t1,t2,…);

    ⑨ else

    t-results=MC_accelete_opOP-type,params, t1,t2,…);

    ⑩ end if

    timing_or_debug_this_op_end();

    ⑫ return true.

    swHMAE是面向国产异构众核处理器的数据流计算后端,作为一个独立模块,它将关键计算的众核加速与数据流系统的整体框架解耦,既能够高效利用swDNN, swBLAS,sw_OPs等众核计算库,由于本身也集成了一系列众核优化算子,也能够对更多的核心计算进行众核加速.

    swHMAE针对非计算密集类运算实现了众核加速算法,其主要思想是通过数据分割将运算任务分配到各CPE上执行,通过DMA数据传输机制将具有局部性的数据显式地搬运到CPE的片上内存LDM中,并通过2个数据传输缓冲的动态切换,实现数据传输与数据计算的并行操作,其算法思想如图4所示.

    图  4  CPE双缓冲算法思想
    Figure  4.  Double buffer algorithm idea for CPE

    除此之外,swHMAE还可以通过多种方式对关键计算进行调试、错误定位和性能分析,进一步提升易用性.

    swHMAE的松耦合和模块化设计使得用户可以更加方便地集成新的众核计算到swFLOWpro系统中去. 事实上,swHMAE还可以支持其他的数据流计算系统,其仅需要在原始系统中做极少量的修改.

    在异构融合的众核处理器上执行数据流图的基本流程为:MPE负责数据流图的生成、优化和调度管理;在执行过程中,将已满足执行需求的图节点分配到众核阵列上执行.

    有2种任务分配方法可以考虑:1)将每个节点调度到1个CPE上,CPE阵列协同完成整个数据流图的执行过程;2)将CPE阵列视为一个整体部件,所有计算核心共同完成数据流图中的一个节点.

    第1种任务分配方法与异构融合众核架构的适应性并不好,其主要原因有3点:1)单CPE的访存能力有限,其LDM的容量大小也很难承载一个完整的图节点计算逻辑,比如卷积、矩阵乘等常用算子,在单CPE上执行效率较差;2)数据流图的可并行性有限,考虑某些具有强相关性的数据流图,每个节点都依赖于上一个节点的计算结果,则程序在这种模式下执行的效率就会很差,因为大部分时间内CPE可能因为依赖另一个CPE的计算结果而处于等待状态;3)负载均衡问题,由于每个数据流图节点运算量相差较大,保证各计算核心的负载均衡也是个难以解决的问题.

    本文主要采用第2种任务分配方法,也就是将CPE阵列视为整体部件,所有CPE协同完成一个图节点的执行过程,这样每个CPE的计算任务量都在可以接受的范围之内,而在每个图节点内部,主要通过数据分割的方式将输入数据映射到各个CPE上,这样能保证LDM空间够用和保证各计算节点的负载均衡性. 并且,由于并行发生在图节点内部,整体效率不会受限于数据流图本身的可并行性.

    图5是在sw26010pro的单核组上运行一个数据流图的示例.

    图  5  面向单核组的数据流调度示例
    Figure  5.  Dataflow scheduling example for single CG

    输入数据的后继图节点是Reshape,该节点是为了改变输入形状,属于功能类算子,所以将其调度到MPE上执行即可;其后的Matmul,Biasadd,Softmax都是计算密集的图节点,需要调度到CPE阵列上进行众核并行计算,例如,CPE在执行Matmul图节点的时候,首先将矩阵进行分块,每个CPE执行子矩阵乘法运算,再通过CPE阵列内部的RMA操作进行全局通信,获得原始矩阵的乘法运算结果.

    sw26010pro异构众核芯片采用多核组设计,处理器内部包含6个同构的核组,每个核组都有一个MPE和一个8×8的CPE阵列. 因此,要在6核组结构上实现更高层次的并行.

    在单核组内部,我们将1个图节点分配到1个MPE或者1个CPE阵列上执行,实现了低层次的图节点内并行;在基于全片视角的多核组上,利用6个等价队列分别维护由上层图计算过程产生的计算任务;在运行核组选择过程中采用Round-Robin的轮询调度策略;在计算任务选择中采用先入先出(FIFO)方法,进而支持高层次的图节点间并行. 这就是本节提出的两级并行策略,该策略能够充分适应sw26010pro的异构融合架构.

    值得注意的是,图节点间的并行要求图节点之间没有数据依赖关系,但实际上一般单输入的数据流计算图可并行性并不高,如果将不同的图节点调度到不同核组上,由于图节点之间的数据依赖关系,会导致部分核组处于空闲状态,需要等待其他核组的计算结果才能开始计算.

    为此,本文设计了一种图分裂优化方法,首先将输入数据进行平均分割,分割之后的每个输入都进行相同的数据流图执行流程,在输出结果时再进行归并,从而生成并行性更好的数据流计算图.

    图5的数据流图为例,将split值设置为2,经过图分裂之后的数据流图如图6所示.

    图  6  经过图分裂之后的数据流调度示例
    Figure  6.  Dataflow scheduling example after graph splitting

    经过图分裂之后,数据并行输入到不同的数据流子图中,每个子图都是原数据流图的一个复制,各个子图之间没有强相关性,从而具有很好的可并行性,可以映射到不同的处理器分区上执行.

    图分裂是一种与体系结构无关的图变换技术,分裂值split可以调整,以适应不同的硬件体系结构. 如果众核处理器集成更多的核组数,只需要提升分裂值,无需改变整体算法就能充分利用硬件计算资源.

    在具体实现上,本文采用多线程机制来管理图节点的调度,根据核组数来确定线程个数. 在sw26010pro上会启动6个线程来执行数据流图,每个线程绑定在1个核组上运行,这样能保证各线程不存在资源冲突问题.

    调度器将所有图节点组织成任务池,并记录每个节点的前继节点. 在执行过程中,一个图节点可能处于不可用、可用、执行中、完成中这4种状态的一种. 每种状态对应一个任务池.

    初始情况下,将没有前继节点的图节点状态设置为“待命”,其余节点状态均设置为“不可用”. 线程函数从任务池里通过抢占方式获取一个图节点任务,如果该图节点的已处于可用状态(所有前继节点均已完成),则执行该节点,并将该节点状态设置为“执行中”,完成后则设置状态为“完成”. 值得注意的是,线程选择下一个执行节点时,优先从该节点的后继节点中选取,如果后继节点不可用,则从该节点前继节点的其他后继节点中选择. 这种搜索方法可以使得单个相对独立的数据流子图在一个线程内部完成.

    图节点状态变换关系如图7所示.

    图  7  图节点状态变换图
    Figure  7.  Graph node state transformation diagram

    本文选择6种典型神经网络模型作为数据流计算的输入,通过TensorFlow编程接口编写数据流程序,实现这些模型的训练过程,这些模型及其变种也是HPC+AI领域应用经常使用的模型. 具体模型信息如表1所示.

    表  1  6种典型神经网络模型
    Table  1.  Six Typical Neural Network Models
    典型模型输入数据参数量计算量/GFLOP
    Alexnet[20] 227×227×3 61.1×106 0.77
    VGG16[21] 224×224×3 138.36×106 15.61
    ResNet50[22] 224×224×3 25.56×106 4.14
    ResNet101 224×224×3 44.55×106 7.87
    Inception3[23] 299×299×3 21.16×106 5.75
    Inception4[24] 299×299×3 41.22×106 10.48
    下载: 导出CSV 
    | 显示表格

    测试硬件平台为sw26010pro处理器,其包含6个核组,6个MPE和384个CPE,全片主存空间大小为96 GB,每个CPE的片上高速缓存LDM大小为256 KB.

    软件环境为swFLOWpro数据流计算系统、swHMAE核心计算加速引擎,以及swPython编程环境.

    本文选择众核加速比ManyAccRatio作为主要的性能评价指标,其定义为:

    $$ ManyAccRatio=\frac{MPE\_time}{CPE\_time}\times 100\% , $$

    其中MPE_time表示在MPE主核上的运行时间,CPE_time表示在单核组阵列上的运行时间. 由于sw26010pro结构的特殊性,其与GPU,TPU等人工智能专用芯片的性能对比意义不大,通过众核加速比可以体现SwFlowpro在sw26010pro独特的异构融合结构上的适配性和优化效果.

    本文使用swFLOWpro构建了6种典型模型,并统计了模型中所有核心计算(数据流图节点)类型,选择7种典型核心计算类型,通过swHMAE引擎进行众核加速. 具体统计信息如表2所示.其中Conv2D, Conv2DBackpropFilter, Conv2DBackpropInput都是卷积类计算,Matmul是矩阵乘计算,Relu是激活类计算,Poolmax是池化类计算,ApplyGradientDescent是训练更新参数计算.

    表  2  典型核心计算
    Table  2.  Typical Core Computing
    核心计算类型分类
    Conv2DSW_Conv
    Conv2DBackpropFilterSW_Conv
    Conv2DBackpropInputSW_Conv
    MatmulSW_Matmul
    ReluSW_Activate
    PoolmaxSW_Pooling
    ApplyGradientDescentSW_OPs
    下载: 导出CSV 
    | 显示表格

    表1的6种典型模型中,统计了典型核心计算在sw26010pro的单核组CPE上的运行时间,通过对比swFLOWpro未经众核优化的MPE运行时间,并获得众核加速比.详细测试数据如表3所示.通过计算,获得的各类型的典型核心计算众核加速比如图8所示.

    表  3  典型模型中的典型核心计算测试时间
    Table  3.  Test Time of Typical Core Computing in Typical Models ms
    模型Conv2DConv2DBackpropFilterConv2DBackpropInputMatmulReluPoolmaxApplyGradientDescent
    Alexnet-MPE 153470 141700 51100 20260 352 340 528
    Alexnet-CPE 611 1320 238 548 11 23 21
    VGG16-MPE 1629210 1114340 718380 37430 5260 2120 1080
    VGG16-CPE 3140 1910 2310 1120 119 172 50
    ResNet50-MPE 250690 285090 152940 181 2170 373 250
    ResNet50-CPE 652 1690 1690 9 56 24 14
    ResNet101-MPE 578400 552900 303010 182 3410 372 449
    ResNet101-CPE 1060 2200 2220 9 90 24 25
    Inception3-MPE 489790 443940 216850 86 2140 3730 215
    Inception3-CPE 1160 1480 1540 3 61 278 16
    Inception4-MPE 1019110 1010510 472480 21 3610 6370 413
    Inception4-CPE 2670 2960 3660 0.8 101 503 26
    下载: 导出CSV 
    | 显示表格

    卷积类运算是实验的6种典型模型的关键,也是swHMAE实现众核加速的重点运算.swHMAE会根据输入规模和相关参数,自适应选择swDNN库中最优的算法实现. 由图8实验结果可以看出,Conv2D的众核加速比达250~545,Conv2DBackpropFilter的众核加速比达107~583,Conv2DBackpropInput的众核加速比达90~310,加速效果良好.

    图  8  不同典型模型的卷积类核心计算众核加速比
    Figure  8.  The many-core acceleration ratios of convolutional core computing for different typical models

    其他核心计算类型的众核加速比测试数据如图9所示.

    图  9  不同典型模型的其他核心计算众核加速比
    Figure  9.  The many-core acceleration ratios of other core computing for different typical models

    针对矩阵乘类核心计算,swHMAE从swBLAS库中自适应选择众核算法. 测试表明,矩阵乘核心计算的众核加速比仅有26.1~38.7,由表3可以看出,本文选择的典型模型都是卷积类神经网络,矩阵乘的计算量很小,不能充分发挥CPE从核阵列的全部计算能力. 除此之外,swBLAS库中矩阵是按列优先模式存储,在接入模型时还需要先进行矩阵转置. 所以,矩阵乘的实际众核加速比效果远低于卷积类算子,在后续工作中可以针对矩阵转置进行优化.

    针对Relu激活类运算,swHMAE通过swDNN库进行加速,众核加速比达到26.1~38.7.

    除了计算密集类运算之外,模型中也会用到一些其他算子,这类算子虽然计算量小,但如果不进行众核优化,则会成为性能瓶颈. 如本文实验选择的更新参数操作(ApplyGradientDescent),是模型训练中常见的算子类型,但缺乏专属的算法库支持. 本文选择在swHMAE中直接集成其众核优化算法,实验表明众核加速比达13.9~25.2.

    测试结果表明,在sw26010pro上,卷积类运算的众核加速比要远高于其他运算类型,这主要是因为国产异构众核的架构设计对于卷积这类计算密集类运算的适应性更好.

    本文使用swFLOWpro+swHMAE运行6种典型模型的训练过程,单步训练batch大小统一设置为32.

    实验分别测试在sw26010pro的单MPE和单CPE阵列上的单步训练时间,并计算众核加速比. 测试数据如表4所示.

    表  4  典型模型的单步训练测试数据
    Table  4.  Single Step Training Test Data of Typical Models
    典型模型MPE运行时间/sCPE运行时间/s众核加速比
    Alexnet 379.8 3.1 123
    VGG16 3525.5 10.2 346
    ResNet50 973.6 8.2 119
    ResNet101 1876.6 12.1 155
    Inception3 1373.1 11.9 115
    Inception4 2996.9 20.1 149
    下载: 导出CSV 
    | 显示表格

    图10可见,VGG16模型的众核加速比最高,达到346,其余的模型加速比相差不大,在115~155之间.

    图  10  典型模型的众核加速比
    Figure  10.  Muti-core acceleration ratios of typical models

    模型的性能与模型中各类型核心计算的性能紧密相关,由4.1节测试结果可知,在sw26010pro上,卷积类运算的众核加速比要远高于其他运算,所以卷积类运算占比较高的模型,在sw26010pro上的整体加速比也更高.

    本文统计了在6种典型模型中,卷积类和非卷积类核心计算的运行时间占比,如表5所示. 这6种典型模型都属于卷积神经网络,它们的卷积类运算占比为82.5%~97.4%.

    表  5  典型模型的卷积类和非卷积类核心运算占比
    Table  5.  Core Computing Proportion of Convolutional and Non-Convolutional of Typical Models %
    典型模型Conv2DConv2DBackpropFilterConv2DBackpropInput非卷积类运算
    Alexnet 11.5 27.2 54.8 6.5
    VGG16 11.1 37.2 49.1 2.6
    ResNet50 9.2 25.3 48 17.5
    ResNet101 10.1 23.7 51.3 14.9
    Inception3 11.8 31.6 40.5 16.1
    Inception4 11.6 29.7 45.2 13.5
    下载: 导出CSV 
    | 显示表格

    表5中,VGG16的卷积类运算占比最高,达到了97.4%(11.1%+37.2%+49.1%),所以这个模型的众核加速比也最高,Alexnet的卷积类运算虽然占比高达93.5%(11.5%+27.2%+54.8%),但由于其卷积类运算的计算量较小,不能充分发挥sw26010pro的计算能力,所以整体众核加速比只有123.

    实验表明,针对典型模型的训练过程,swFLOWpro+swHMAE比原始运行模型,特别是卷积类计算占比较高的模型(如实验中的VGG16)有显著的众核加速效果.

    我们将sw26010pro的单处理器(包含6个核组)作为一个执行单元,测试6种典型模型经过面向全片的两级并行优化之后的加速效果.

    首先,测试不使用图分裂技术的6个核组并行加速效果,在这种模式下,6个核组的利用效率受限于不同模型构建出的数据流图本身的可并行性,测试数据如图11所示.

    图  11  不使用图分裂技术的典型模型全片加速比
    Figure  11.  Full chip acceleration ratios of typical models without graph splitting technology

    加速比最高的是Inception4模型,达1.49;最低的是Alexnet模型,达1.19.这是因为,Inception模型本身的数据流图具有不错的可并行性,而模型结构简单的Alexnet模型可并行性并不好.

    整体而言,在不使用图分裂的情况下,6核组的加速比较低,这是因为计算图的核心计算节点之间存在依赖关系,导致高层次的节点间并行不能同时进行计算,限制了并行效果,这也是本文提出图分裂技术的主要原因.

    然后,使用图分裂技术进行优化,将split值分别设为2,4,6,并测试典型模型在全片6核组上运行对比单核组(split = 1)运行的加速比,测试数据如图12所示.

    图  12  典型模型使用图分裂技术后的全片加速比
    Figure  12.  Full chip acceleration ratios of typical models with graph splitting

    12中加速效果最好的是ResNet50(split = 6),加速比达4.96,并行效率达到了82.6%. 通过使用图分裂技术,选择合适的参数split,典型模型全片加速比能达到1.78~4.96.

    图分裂技术结合面向异构融合的两级并行策略,在sw26010pro的多核组异构众核结构上取得了很好的并行效果,测试表明,图分裂技术针对典型模型的性能提升效果最高达到246%(ResNet50),最低也能达到50%(AlexNet).

    值得一提的是,从实验数据中也可以看出2个问题:1)sw26010pro的众核结构对模型和核心计算的计算量要求较高,一些轻量级的模型无法充分利用众核资源,所以Alexnet的单核组和6核组加速比都不理想. 2)图分裂结束也会带来图节点数量的大幅度增长,会增大内存需求,对于Inception这种本身就具有一定并行性的计算图,会出现图节点膨胀的现象,进而增大节点调度和分配的开销,所以其6核组并行加速比只有2.54~2.88,这也是图分裂技术目前存在的缺陷.

    本文提出了一种面向新一代国产异构众核处理器的数据流计算系统swFLOWpro,该系统通过核心计算加速引擎swHMAE支持在国产异构众核处理器上的并行加速,并提出面向异构融合的两级并行策略,支持面向国产异构众核处理器全芯片视角的调度和并行方法. 实验表明,swHMAE针对卷积类核心计算,众核加速比达90~545,针对其他核心计算,众核加速比达13.9~38.7;swFLOWpro+swHMAE支持典型模型在sw26010pro上的高效执行,VGG16模型众核加速比可达346;通过面向异构融合的数据流调度策略,全片ResNet50加速比达4.96倍,6核组并行效率达到82.6%.

    未来的工作主要包括3个方面:1)继续拓展swHMAE支持的核心计算类型;2)优化面向全片多核组的两级并行策略,优化图分裂算法,探索更高效的数据流调度算法,提升图节点间并行效率;3)完善系统,支持更多种类的神经网络模型高效运行,并引入新的优化算法.

    作者贡献声明:肖谦提出了技术方案,实现系统和撰写论文;赵美佳和李名凡负责核心计算众核优化实现和论文完善;沈莉和陈俊仕负责数据流调度算法实现和优化;周文浩和王飞负责部分实验代码编写;安虹提出指导意见并修改论文.

  • 图  1   2018—2023年5月基于人工智能的物联网恶意代码检测代表性研究统计

    Figure  1.   AI-based IoT malware detection representative research statistics from 2018 to May 2023

    图  2   物联网系统的结构层次及其面临的安全威胁

    Figure  2.   Structural layers of IoT system and the threats they face

    图  3   物联网设备内部架构

    Figure  3.   Internal architecture of IoT devices

    图  4   本文提出的物联网恶意代码检测分类方法

    Figure  4.   IoT malware detection taxonomy method proposed by this paper

    表  1   开源物联网恶意代码数据集

    Table  1   Open Source IoT Malware Datasets

    数据类型数据集支持的CPU架构数据收集方式
    可执行文件TWISC[32]MIPS,ARM,PPC,SPARC,X86,X86_64互联网下载
    Badthings[26]MIPS,ARM,PPC,SPARC,SH4互联网下载
    firmware[33]MIPS,ARM,PPC,SPARC,X86,X86_64互联网下载
    IoTPoT[6]MIPS,ARM,PPC,SPARC,X86,X86_64,m68k部署蜜罐捕获
    VirusTotal[34]多种常见物联网CPU架构用户自主提交
    VirusShare[35]多种常见物联网CPU架构部署检测设备捕获
    流量数据包IoT-23[36]多种常见物联网CPU架构真实环境捕获
    Bot-IoT[37]多种常见物联网CPU架构实验室模拟
    ToN_IoT[38]多种常见物联网CPU架构真实环境捕获
    MedBIoT[39]多种常见物联网CPU架构真实环境捕获
    Kitsune[40]多种常见物联网CPU架构实验室模拟
    下载: 导出CSV

    表  2   基于人工智能的跨架构物联网恶意代码检测技术对比

    Table  2   Comparison of AI-based Cross-Architecture IoT Malware Detection Techniques

    数据来源特征类别人工智能算法数据集支持的架构年份
    文献[25]操作码及APISVM,kNNIoTPOTARM,MIPS,MIPSE2019
    文献[52]操作码及APISVM,kNNIoTPOTARM,MIPS,MIPSEL2018
    文献[59]操作码及CFGSVMfirmwareARM,MIPS,PPC,SPARC,X86,X86_642019
    文献[63]操作码及ELF文件特征CNNVirusTotalARM,MIPS,PPC,SPARC2020
    文献[58]操作码及IGRNN-CNNIoTPoT,VirusShareARM,MIPS,PPC2020
    文献[68]字节序列SVMVirusTotalARM,MIPS,PPC,SPARC,X86、X86_642020
    文献[69]字节序列SVMVirusTotalARM,MIPS,PPC,SPARC,X86,X86_642020
    文献[70]字节序列Bi-GRU-CNNTWISCARM,MIPS,X86,SuperH4,PPC2022
    文献[50]可打印字符串聚类IoTPOTARM,MIPS,PPC,SPARC2018
    文献[27]可打印字符串RF,kNN,SVMVirusTotalARM,MIPS,X86,X86-64,PPC,SPARC2020
    文献[71]图相关特征RF,kNN,SVM,MLP,LRVirusTotalARM,MIPS,SPARC,X86,X86-64,PPC2023
    文献[75]图相关特征GNNARM,MIPS,SPARC,PPC,X86-642021
    文献[72]系统调用KMMVirusTotalARM,Intel X862023
    下载: 导出CSV

    表  3   基于人工智能资源限制的物联网恶意代码检测技术对比

    Table  3   Comparison of Resource-constrained AI-based IoT Malware Detection Techniques

    数据来源资源限制类别限制缓解方案特征选择/处理方法人工智能算法年份
    文献[79]计算资源限制降低特征维度Word2VecMLP2021
    文献[80] 计算资源限制降低特征维度ACOSVM2023
    文献[81] 计算资源限制降低特征维度相关性分析Random Forest,Bagging,Stacking,SVM,LR,kNN2021
    文献[82] 计算资源限制降低特征维度SVM,Random Forest,Decision Tree2023
    文献[84] 计算资源限制降低特征维度图像化CNN2023
    文献[33] 计算资源限制降低算法复杂度N-gramCFD2020
    文献[85] 计算资源限制降低算法复杂度C500-CFGSVM2019
    文献[88]内存限制设计轻量级模型LiMNet2021
    文献[87] 内存限制设计轻量级模型图像化LCNN2021
    文献[91]电力限制设计可独立于物联网设备部署的检测图像化CNN2021
    文献[92] 电力限制 设计可独立于物联网设备部署的检测过滤电信号噪声Seq2Seq2020
    文献[93] 电力限制 设计可独立于物联网设备部署的检测SVM2018
    下载: 导出CSV

    表  4   性能提升的物联网恶意代码检测技术对比

    Table  4   Comparison of Performance-enhancing IoT Malware Detection Techniques

    数据来源检测对象技术重心人工智能算法数据集来源年份
    文献[96]二进制可执行文件提高检测准确率CNN+LSTMVirusTotal,VirusShare2021
    文献[99] 二进制可执行文件提高检测准确率ResNet18+MobileNetV2+DenseNet161未公开2022
    文献[98] 二进制可执行文件提高检测准确率GCNN未公开2023
    文献[97] 二进制可执行文件提高检测准确率FPTVirusShare2019
    文献[101] 二进制可执行文件检测混淆恶意代码SVM未公开2020
    文献[102] 二进制可执行文件检测混淆恶意代码Inception-v3未公开2022
    文献[103] 二进制可执行文件检测混淆恶意代码Bi-LSTM+EfficientNet-B3VirusTotal2021
    文献[111] 二进制可执行文件检测混淆恶意代码Bi-LSTM+SPP-Net未公开2022
    文献[100] 二进制可执行文件提高检测模型鲁棒性VGAE-MalGAN未公开2023
    文献[119]流量数据及时发现攻击行为Auto-encoder未公开2018
    文献[15] 流量数据提高检测模型性能ANNToN_IoT2022
    文献[122] 流量数据提高检测模型性能RFIoT-232022
    文献[114] 流量数据提高检测模型性能FastGRNNMedBIoT2020
    文献[120] 流量数据及时发现攻击行为LR,kNN,RF,AdaBoost未公开2019
    下载: 导出CSV

    表  5   挑战与机遇

    Table  5   Challenges and Opportunities

    类别 具体内容
    面临的挑战缺少针对物联网设备特性的评估指标;
    缺少统一可用的动态分析环境;
    缺乏对攻击的鲁棒性.
    未来研究方向结合大模型实现物联网恶意代码检测;
    提高检测模型安全性;
    结合零信任架构实现检测.
    下载: 导出CSV
  • [1]

    STATISTA. Number of Internet of things (IoT) connected devices worldwide from 2019 to 2021 [EB/OL]. [2023-05-29]. https://www.statista.com/statistics/1183457/iot-connected-devices-worldwide/

    [2]

    Wall S. 2022 Cyber threat report[R]. Santa Clara, CA: Palo Alto Networks, 2022: 5−7

    [3]

    Antonakakis M, April T, Bailey M, et al. Understanding the Mirai botNet[C] //Proc of the 26th USENIX Security Symp. Berkeley, CA: USENIX Association, 2017: 1093−1110

    [4]

    Griffioen H, Doerr C. Examining Mirai’s battle over the Internet of things[C] //Proc of the 27th ACM SIGSAC Conf on Computer and Communications Security (CCS). NewYork: ACM, 2020: 743−756

    [5] 国家互联网应急中心. 物联网安全威胁情报(2022年10月)[R]. 北京: 国家计算机网络应急技术处理协调中心, 2022: 1−426

    CNCERT. IoT security threat intelligence report (Oct 2022)[R]. Beijing: National Computer Network Emergency Response Technical Team/Coordination Center of China, 2022: 1−426 (in Chinese)

    [6]

    Pa Y M P, Suzuki S, Yoshioka K, et al. IoTPOT: Analysing the rise of IoT compromises[C] //Proc of the 9th USENIX Workshop on Offensive Technologies (WOOT). Berkeley, CA: USENIX Association, 2015: 1−9

    [7]

    Breitenbacher D, Homoliak I, Aung Y L, et al. HADES-IoT: A practical host-based anomaly detection system for IoT devices[C] //Proc of the 24th ACM Asia Conf on Computer and Communications Security. New York: ACM, 2019: 479−484

    [8]

    Çetin O, Gañán C, Altena L, et al. Cleaning up the Internet of evil things: Real-world evidence on ISP and consumer efforts to remove mirai[C] //Proc of the 26th Annual Network and Distributed System Security Symp (NDSS). Reston, VA: The Internet Society, 2019: 1−5

    [9]

    Xu Yiwen, Jiang Yu, Yu Lu, et al. Brief industry paper: Catching IoT malware in the wild using HoneyIoT[C] //Proc of the 27th Real-Time and Embedded Technology and Applications Symp (RTAS). Piscataway, NJ: IEEE, 2021: 433−436

    [10]

    Dang Fan, Li Zhenhua, Liu Yunhao, et al. Understanding fileless attacks on Linux-based IoT devices with honeycloud[C] //Proc of the 17th Annual Int Conf on Mobile Systems, Applications, and Services. New York: ACM, 2019: 482−493

    [11]

    Downing E, Mirsky Y, Park K, et al. DeepReflect: Discovering malicious functionality through binary reconstruction[C] //Proc of the 30th USENIX Security Symp. Berkeley, CA: USENIX Association, 2021: 3469−3486

    [12]

    Alrawi O, Ike M, Pruett M, et al. Forecasting malware capabilities from cyber attack memory images[C] //Proc of the 30th USENIX Security Symp. Berkeley, CA: USENIX Association, 2021: 3523−3540

    [13]

    Wang Qi, Wajih H, Ding Li, et al. You are what you do: Hunting stealthy malware via data provenance analysis[C] //Proc of the 27th Annual Network and Distributed System Security Symp (NDSS). Reston, VA: The Internet Society, 2020: 1−17

    [14]

    Chen Jinyin, Hu Keke, Yu Yue, et al. Software visualization and deep transfer learning for effective software defect prediction[C] //Proc of the ACM/IEEE 42nd Int Conf on Software Engineering. New York: ACM, 2020: 578−589

    [15]

    Jamal A, Hayat M F, Nasir M. Malware detection and classification in IoT network using ANN[J]. Mehran University Research Journal Of Engineering & Technology, 2022, 41(1): 80−91

    [16] 张书钦,白光耀,李红,等. 多源数据融合的物联网安全知识推理方法[J]. 计算机研究与发展,2022,59(12):2735−2749 doi: 10.7544/issn1000-1239.20210954

    Zhang Shuqin, Bai Guangyao, Li Hong, et al. IoT security knowledge reasoning method of multi-source data fusion[J]. Journal of Computer Research and Development, 2022, 59(12): 2735−2749 (in Chinese) doi: 10.7544/issn1000-1239.20210954

    [17] 张玉清,周威,彭安妮. 物联网安全综述[J]. 计算机研究与发展,2017,54(10):2130−2143 doi: 10.7544/issn1000-1239.2017.20170470

    Zhang Yuqing, Zhou Wei, Peng Anni. Survey of internet of things security[J]. Journal of Computer Research and Development, 2017, 54(10): 2130−2143 (in Chinese) doi: 10.7544/issn1000-1239.2017.20170470

    [18] 杨毅宇,周威,赵尚儒,等. 物联网安全研究综述:威胁,检测与防御[J]. 通信学报,2021,42(8):188−205 doi: 10.11959/j.issn.1000-436x.2021124

    Yang Yiyu, Zhou Wei, Zhao Shangru, et al. Survey of IoT security research: Threats, detection and defense[J]. Journal on Communications, 2021, 42(8): 188−205 (in Chinese) doi: 10.11959/j.issn.1000-436x.2021124

    [19]

    Chen Jiongyi, Diao Wenrui, Zhao Qingchuan, et al. IoTFuzzer: Discovering memory corruptions in IoT through app-based fuzzing[C] //Proc of the 25th Annual Network and Distributed System Security Symp (NDSS). Reston, VA: The Internet Society, 2018: 1−15

    [20]

    Symantec. Symantec: Security response [EB/OL]. [2023-05-16]. https://www.symantec.com/connect/blogs/iot-devicesbeing-increasingly-used-ddos-attacks

    [21]

    Egg S. Standing egg chooses MIPS CPUs for sensor hubs targeting mobile, IoT, wearables and automotive [EB/OL]. [2023-05-29]. https://electroiq.com/files/files/ables-and-automotive_xqh4b2rmudu6skntuhhadd/

    [22] 彭安妮,周威,贾岩,等. 物联网操作系统安全研究综述[J]. 通信学报,2018,39(3):22−34

    Peng Anni, Zhou Wei, Jia Yan, et al. Survey of the Internet of things operating system security[J]. Journal on Communications, 2018, 39(3): 22−34 (in Chinese)

    [23]

    Hackett R. Why a hacker dumped code behind colossal website trampling botnet [EB/OL]. [2023-05-16]. https://finance.yahoo.com/news/why-hacker-dumped-code-behind-145847907.html?

    [24]

    Shekari T, Cardenas A A, Beyah R. MaDIoT 2.0: Modern high-wattage IoT botnet attacks and defenses[C] //Proc of the 31st USENIX Security Symp. Berkeley, CA: USENIX Association, 2022: 3539−3556

    [25]

    Ban T, Isawa R, Huang S Y, et al. A cross-platform study on emerging malicious programs targeting IoT devices[J]. IEICE Transactions on Information and Systems, 2019, 102(9): 1683−1685

    [26]

    Alrawi O, Lever C, Valakuzhy K, et al. The circle of life: A large-scale study of the IoT malware lifecycle[C] //Proc of the 30th USENIX Security Symp. Berkeley, CA: USENIX Association, 2021: 3505−3522

    [27]

    Lee Y T, Ban T, Wan T L, et al. Cross platform IoT-malware family classification based on printable strings[C] //Proc of the 19th Int Conf on Trust, Security and Privacy in Computing and Communications (TrustCom). Piscataway, NJ: IEEE, 2020: 775−784

    [28]

    Clements A A, Almakhdhub N S, Saab K S, et al. Protecting bare-metal embedded systems with privilege overlays[C] //Proc of the 2017 IEEE Symp on Security and Privacy (SP). Piscataway, NJ: IEEE, 2017: 289−303

    [29]

    Xu Yiwen, Yin Zijing, Hou Yiwei, et al. MIDAS: Safeguarding IoT devices against malware via real-time behavior auditing[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2022, 41(11): 4373−4384 doi: 10.1109/TCAD.2022.3200908

    [30]

    Zhou Jie, Du Yufei, Shen Zhuojia, et al. Silhouette: Efficient protected shadow stacks for embedded systems[C] //Proc of the 29th USENIX Security Symp. Berkeley, CA: USENIX Association, 2020: 1219−1236

    [31]

    Imteaj A, Thakker U, Wang Shiqiang, et al. A survey on federated learning for resource-constrained IoT devices[J]. IEEE Internet of Things Journal, 2021, 9(1): 1−24

    [32]

    TWISC Research Centers. IoT-based end-to-end system security [EB/OL]. [2023-05-29].https://www.twisc.org/research-centers/

    [33]

    Phu T N, Tho N D, Hoang L H, et al. An efficient algorithm to extract control flow-based features for IoT malware detection[J]. The Computer Journal, 2020, 64(4): 599−609

    [34]

    VirusTotal. VirusTotal [EB/OL]. [2023-05-19]. https://www.virustotal.com/gui/home/upload

    [35]

    VirusShare. VirusShare [EB/OL]. [2023-05-26]. https://virusshare.com/

    [36]

    Parmisano A, Garcia S, Erquiaga M J. A labeled dataset with malicious and benign IoT network traffic[EB/OL]. [2023-06-04]. https://www.stratosphereip.org/datesets-iot23

    [37]

    Koroniotis N, Moustafa N, Sitnikova E, et al. Towards the development of realistic botnet dataset in the Internet of things for network forensic analytics: Bot-IoT dataset[J]. Future Generation Computer Systems, 2019, 100: 779−796 doi: 10.1016/j.future.2019.05.041

    [38]

    Moustafa N. The ToN_IoT datasets [EB/OL]. [2023-05-24]. https://www.unsw.adfa.edu.au/unsw-canberra-cyber/cybersecurity/ADFA-ton-iot-Datasets/

    [39]

    Guerra-Manzanares A, Medina-Galindo J, Bahsi H, et al. MedBIoT: Generation of an IoT botnet dataset in a medium-sized IoT network[C] //Proc of the 6th Int Conf on Information Systems Security and Privacy (ICISSP). Setúbal, Portugal: Scitepress, 2020: 207−218

    [40]

    Mirsky Y, Doitshman T, Elovici Y, et al. Kitsune: An ensemble of autoencoders for online network intrusion detection[J]. arXiv preprint, arXiv: 1802.09089, 2018

    [41]

    Vailshery L S. Malware for network devices [EB/OL]. [2023-05-29]. https://www.statista.com/statistics/1183457/iot-connected-devices-worldwide/

    [42]

    Ronen E, Shamir A, Weingarten A O, et al. IoT goes nuclear: Creating a ZigBee chain reaction[C] //Proc of the 2017 IEEE Symp on Security and Privacy (S&P). Piscataway, NJ: IEEE, 2017: 195−212

    [43]

    Costin A, Zaddach J. IoT malware: Comprehensive survey, analysis framework and case studies[R]. Las Vegas, LA: Black Hat, 2018: 1−9

    [44]

    Raju A D, Abualhaol I Y, Giagone R S, et al. A survey on cross-architectural IoT malware threat hunting[J]. IEEE Access, 2021, 9: 91686−91709 doi: 10.1109/ACCESS.2021.3091427

    [45]

    Ngo Q D, Nguyen H T, Le V H, et al. A survey of IoT malware and detection methods based on static features[J]. ICT Express, 2020, 6(4): 280−286 doi: 10.1016/j.icte.2020.04.005

    [46]

    Clincy V, Shahriar H. IoT malware analysis[C] //Proc of the 43rd Annual Computer Software and Applications Conf (COMPSAC). Piscataway, NJ: IEEE, 2019: 920−921

    [47]

    Imteaj A, Mamun Ahmed K, Thakker U, et al. Federated learning for resource-constrained IoT devices: Panoramas and state of the art[J]. Federated and Transfer Learning, 2022, 27: 7−27

    [48]

    Venkatasubramanian M, Lashkari A H, Hakak S. IoT malware analysis using federated learning: A comprehensive survey[J]. IEEE Access, 2023, 11: 5004−5018 doi: 10.1109/ACCESS.2023.3235389

    [49]

    Vignau B, Khoury R, Hallé S, et al. The evolution of IoT malwares, from 2008 to 2019: Survey, taxonomy, process simulator and perspectives[J]. Journal of Systems Architecture, 2021, 116: 102143 doi: 10.1016/j.sysarc.2021.102143

    [50]

    Alhanahnah M, Lin Qicheng, Yan Qiben, et al. Efficient signature generation for classifying cross-architecture IoT malware[C] //Proc of the Conf on Communications and Network Security (CNS). Piscataway, NJ: IEEE, 2018: 1−9

    [51]

    Cozzi E, Graziano M, Fratantonio Y, et al. Understanding Linux malware[C] //Proc of the 2018 IEEE Symp on Security and Privacy (S&P). Piscataway, NJ: IEEE, 2018: 161−175

    [52]

    Ban T, Isawa R, Yoshioka K, et al. A cross-platform study on IoT malware[C] //Proc of the 11th Int Conf on Mobile Computing and Ubiquitous Network (ICMU). Piscataway, NJ: IEEE, 2018: 1−2

    [53]

    Davie H. Assemblers and Loaders: DW Barron, Macdonald and Janes Computer Monographs[M]. Amsterdam, Netherlands: Elsevier, 1979

    [54]

    Bilar D. Opcodes as predictor for malware[J]. International Journal of Electronic Security and Digital Forensics, 2007, 1(2): 156−168 doi: 10.1504/IJESDF.2007.016865

    [55]

    Yewale A, Singh M. Malware detection based on opcode frequency[C] //Proc of the 2016 Int Conf on Advanced Communication Control and Computing Technologies (ICACCCT). Piscataway, NJ: IEEE, 2016: 646−649

    [56]

    Santos I, Brezo F, Nieves J, et al. Idea: Opcode-sequence-based malware detection[C] //Proc of the Engineering Secure Software and Systems: Second Int Symp (ESSoS). Berlin: Springer, 2010: 35−43

    [57]

    Venkatraman S, Alazab M. Use of data visualisation for zero-day malware detection[J]. Security and Communication Networks, 2018, 2018: 1−13

    [58]

    Vasan D, Alazab M, Venkatraman S, et al. MTHAEL: Cross-architecture IoT malware detection based on neural network advanced ensemble learning[J]. IEEE Transactions on Computers, 2020, 69(11): 1654−1667 doi: 10.1109/TC.2020.3015584

    [59]

    Phu T N, Hoang L H, Toan N N, et al. CFDVex: A novel feature extraction method for detecting cross-architecture IoT malware[C] //Proc of the 10th Int Symp on Information and Communication Technology. New York: ACM, 2019: 248−254

    [60]

    O’Kane P, Sezer S, McLaughlin K, et al. SVM training phase reduction using dataset feature filtering for malware detection[J]. IEEE Transactions on Information Forensics and Security, 2013, 8(3): 500−509 doi: 10.1109/TIFS.2013.2242890

    [61]

    Zhang Jixin, Qin Zheng, Yin Hui, et al. A feature-hybrid malware variants detection using CNN based opcode embedding and BPNN based API embedding[J]. Computers & Security, 2019, 84: 376−392

    [62]

    Lyda R, Hamrock J. Using entropy analysis to find encrypted and packed malware[J]. IEEE Security & Privacy, 2007, 5(2): 40−45

    [63]

    Tien C W, Chen S W, Ban T, et al. Machine learning framework to analyze IoT malware using elf and opcode features[J]. Digital Threats: Research and Practice, 2020, 1(1): 1−19

    [64]

    Nethercote N, Seward J. Valgrind: A framework for heavyweight dynamic binary instrumentation[J]. ACM Sigplan Notices, 2007, 42(6): 89−100 doi: 10.1145/1273442.1250746

    [65]

    Shoshitaishvili Y, Wang Ruoyu, Salls C, et al. Sok: (State of) the art of war: Offensive techniques in binary analysis[C] //Proc of the 2016 IEEE Symp on Security and Privacy (S&P). Piscataway, NJ: IEEE, 2016: 138−157

    [66]

    Raff E, Barker J, Sylvester J, et al. Malware detection by eating a whole exe[J]. arXiv preprint, arXiv: 1710.09435, 2017

    [67]

    Yakura H, Shinozaki S, Nishimura R, et al. Neural malware analysis with attention mechanism[J]. Computers & Security, 2019, 87: 101592

    [68]

    Wan T L, Ban T, Lee Y T, et al. IoT-malware detection based on byte sequences of executable files[C] //Proc of the 15th Asia Joint Conf on Information Security (AsiaJCIS). Piscataway, NJ: IEEE, 2020: 143−150

    [69]

    Wan T L, Ban T, Cheng S M, et al. Efficient detection and classification of Internet-of-things malware based on byte sequences from executable files[J]. IEEE Open Journal of the Computer Society, 2020, 1: 262−275 doi: 10.1109/OJCS.2020.3033974

    [70]

    Chaganti R, Ravi V, Pham T D. Deep learning based cross architecture Internet of things malware detection and classification[J]. Computers & Security, 2022, 120: 102779

    [71]

    Wu C Y, Ban T, Cheng S M, et al. IoT malware classification based on reinterpreted function-call graphs[J]. Computers & Security, 2023, 125: 103060

    [72]

    Zhao Yang, Kuerban A. MDABP: A novel approach to detect cross-architecture IoT malware based on PaaS[J]. Sensors, 2023, 23(6): 3060

    [73]

    pancake. Radare2 [EB/OL]. [2023-05-29]. https://rada.re/r/

    [74]

    Narayanan A, Chandramohan M, Venkatesan R, et al. Graph2vec: Learning distributed representations of graphs[J]. arXiv preprint, arXiv: 1707.05005, 2017

    [75]

    Li Chuangfeng, Shen Guangming, Sun Wei. Cross-architecture Intenet-of-things malware detection based on graph neural network[C] //Proc of the 2021 Int Joint Conf on Neural Networks (IJCNN). Piscataway, NJ: IEEE, 2021: 1−7

    [76]

    He Tianxiang, Han Chansu, Isawa R, et al. Scalable and fast algorithm for constructing phylogenetic trees with application to IoT malware clustering[J]. IEEE Access, 2023, 11: 8240−8253 doi: 10.1109/ACCESS.2023.3238711

    [77]

    Redini N, Machiry A, Wang Ruoyu, et al. Karonte: Detecting insecure multi-binary interactions in embedded firmware[C] //Proc of the 2020 IEEE Symp on Security and Privacy (S&P). Piscataway, NJ: IEEE, 2020: 1544−1561

    [78] 中国信息通信研究院. 物联网安全白皮书(2018)[R]. 北京: 中国信息通信研究院, 2018: 1−426

    CAICT. IoT security white paper (2018) [R]. Beijing: China Academy of Information and Communications Technology, 2018: 1−426(in Chinese)

    [79]

    Qiao Yanchen, Zhang Weizhe, Du Xiaojiang, et al. Malware classification based on multilayer perception and Word2Vec for IoT security[J]. ACM Transactions on Internet Technology, 2021, 22(1): 1−22

    [80]

    El-Ghamry A, Gaber T, Mohammed K K, et al. Optimized and efficient image-based IoT malware detection method[J]. Electronics, 2023, 12(3): 708

    [81]

    Yaokumah W, Appati J K, Kumah D. Machine learning methods for detecting Internet-of-things (IoT) malware[J]. International Journal of Cognitive Informatics and Natural Intelligence, 2021, 15(4): 1−18

    [82]

    Lee H, Kim S, Baek D, et al. Robust IoT malware detection and classification using opcode category features on machine learning[J]. IEEE Access, 2023, 11: 18855−18867 doi: 10.1109/ACCESS.2023.3247344

    [83]

    Mikolov T, Chen Kai, Corrado G, et al. Efficient estimation of word representations in vector space[J]. arXiv preprint, arXiv: 1301.3781, 2013

    [84]

    Dhanya K, Vinod P, Yerima S Y, et al. Obfuscated malware detection in IoT Android applications using Markov images and CNN[J]. IEEE Systems Journal, 2023, 17(2): 2756−2766

    [85]

    Phu T N, Hoang L, Toan N N, et al. C500-CFG: A novel algorithm to extract control flow-based features for IoT malware detection[C] //Proc of the 19th Int Symp on Communications and Information Technologies (ISCIT). Piscataway, NJ: IEEE, 2019: 568−573

    [86] 云安全联盟大中华区. 物联网安全关键技术白皮书[R]. 香港: 云安全联盟大中华区, 2023

    CSA GCR. IoT security key technologies white paper[R]. Hong Kong, CSA GCR, 2023(in Chinese)

    [87]

    Yuan Baoguo, Wang Junfeng, Wu Peng, et al. IoT malware classification based on lightweight convolutional neural networks[J]. IEEE Internet of Things Journal, 2021, 9(5): 3770−3783

    [88]

    Giaretta L, Lekssays A, Carminati B, et al. LiMNet: Early-stage detection of IoT botnets with lightweight memory networks[C] //Proc of the 26th European Symp on Research in Computer Security. Berlin: Springer, 2021: 605−625

    [89]

    Ma Ningning, Zhang Xiangyu, Zheng Haitao, et al. ShuffleNet V2: Practical guidelines for efficient cnn architecture design[C] //Proc of the European Conf on Computer Vision (ECCV). Berlin: Springer, 2018: 116−131

    [90]

    Javed F, Afzal M K, Sharif M, et al. Internet of things (IoT) operating systems support, networking technologies, applications, and challenges: A comparative review[J]. IEEE Communications Surveys & Tutorials, 2018, 20(3): 2062−2100

    [91]

    Pham D P, Marion D, Mastio M, et al. Obfuscation revealed: Leveraging electromagnetic signals for obfuscated malware classification[C] //Proc of the Annual Computer Security Applications Conf. New York: ACM, 2021: 706−719

    [92]

    Ding Fei, Li Hongda, Luo Feng, et al. DeepPower: Non-intrusive and deep learning-based detection of IoT malware using power side channels[C] //Proc of the 15th ACM Asia Conf on Computer and Communications Security. New York: ACM, 2020: 33−46

    [93]

    Azmoodeh A, Dehghantanha A, Conti M, et al. Detecting crypto-ransomware in IoT networks based on energy consumption footprint[J]. Journal of Ambient Intelligence and Humanized Computing, 2018, 9: 1141−1152 doi: 10.1007/s12652-017-0558-5

    [94]

    Maxfield C. Embedded markets study-Integrating IoT and advanced technology designs, application development & processing environments[R]. Cambridge, MA: AspenCore, 2017

    [95]

    Samantray O P, Tripathy S N. IoT-malware classification model using byte sequences and supervised learning techniques[C] //Proc of Int Conf on the Next Generation of Internet of Things (ICNGIoT 2021). Berlin: Springer, 2021: 51−60

    [96]

    Dib M, Torabi S, Bou-Harb E, et al. A multi-dimensional deep learning framework for IoT malware classification and family attribution[J]. IEEE Transactions on Network and Service Management, 2021, 18(2): 1165−1177 doi: 10.1109/TNSM.2021.3075315

    [97]

    Dovom E M, Azmoodeh A, Dehghantanha A, et al. Fuzzy pattern tree for edge malware detection and categorization in IoT[J]. Journal of Systems Architecture, 2019, 97: 1−7 doi: 10.1016/j.sysarc.2019.01.017

    [98]

    Alsubaei F S, Alshahrani H M, Tarmissi K, et al. Graph convolutional neural network based malware detection in IoT-cloud environment[J]. Intelligent Automation & Soft Computing, 2023, 36(3): 2897−2914

    [99]

    Atitallah S B, Driss M, Almomani I. A novel detection and multi-classification approach for IoT-malware using random forest voting of fine-tuning convolutional neural networks[J]. Sensors, 2022, 22(11): 4302−4324 doi: 10.3390/s22114302

    [100]

    Yumlembam R, Issac B, Jacob S M, et al. IoT-based Android malware detection using graph neural network with adversarial defense[J]. IEEE Internet of Things Journal, 2023, 10(10): 8432−8444 doi: 10.1109/JIOT.2022.3188583

    [101]

    Darabian H, Dehghantanha A, Hashemi S, et al. An opcode-based technique for polymorphic Internet of things malware detection[J]. Concurrency and Computation: Practice and Experience, 2020, 32(6): 5173

    [102]

    Naeem H, Alshammari B M, Ullah F. Explainable artificial intelligence-based IoT device malware detection mechanism using image visualization and fine-tuned CNN-based transfer learning model[J]. Computational Intelligence and Neuroscience, 2022, 7: 1−17

    [103]

    Baek S, Jeon J, Jeong B, et al. Two-stage hybrid malware detection using deep learning[J]. Human-Centric Computing and Information Sciences, 2021, 11(27): 10−22967

    [104]

    Alasmary H, Anwar A, Park J, et al. Graph-based comparison of IoT and Android malware[C] //Proc of the 7th Int Conf on CSoNet. Berlin: Springer, 2018: 259−272

    [105]

    Alasmary H, Khormali A, Anwar A, et al. Analyzing and detecting emerging Internet of things malware: A graph-based approach[J]. IEEE Internet of Things Journal, 2019, 6(5): 8977−8988 doi: 10.1109/JIOT.2019.2925929

    [106]

    He Kaiming, Zhang Xiangyu, Ren Shaoqing, et al. Deep residual learning for image recognition[C] //Proc of the IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2016: 770−778

    [107]

    Sandler M, Howard A, Zhu Menglong, et al. MobileNetV2: Inverted residuals and linear bottlenecks[C] //Proc of the IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2018: 4510−4520

    [108]

    Huang Gao, Liu Zhuang, Van Der Maaten L, et al. Densely connected convolutional networks[C] //Proc of the IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2017: 4700−4708

    [109]

    Senge R, Hüllermeier E. Top-down induction of fuzzy pattern trees[J]. IEEE Transactions on Fuzzy Systems, 2010, 19(2): 241−252

    [110]

    Tan Mingxing, Le Quoc. EfficientNet: Rethinking model scaling for convolutional neural networks[C] //Proc of the Int Conf on Machine Learning. New York: PMLR, 2019: 6105−6114

    [111]

    Jeon J, Jeong B, Baek S, et al. Hybrid malware detection based on Bi-LSTM and SPP-Net for smart IoT[J]. IEEE Transactions on Industrial Informatics, 2022, 18(7): 4830−4837 doi: 10.1109/TII.2021.3119778

    [112]

    He Kaiming, Zhang Xiangyu, Ren Shaoqing, et al. Spatial pyramid pooling in deep convolutional networks for visual recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904−1916 doi: 10.1109/TPAMI.2015.2389824

    [113]

    Cozzi E, Vervier P A, Dell’Amico M, et al. The tangled genealogy of IoT malware[C] //Proc of the Annual Computer Security Applications Conf. New York: ACM, 2020: 1−16

    [114]

    Alzahrani H, Abulkhair M, Alkayal E. A multi-class neural network model for rapid detection of IoT botnet attacks[J]. International Journal of Advanced Computer Science and Applications, 2020, 11(7): 688−696

    [115]

    Puri R. Bots & botnet: An overview[J]. SANS Institute, 2003, 3: 58

    [116]

    Kolias C, Kambourakis G, Stavrou A, et al. DDoS in the IoT: Mirai and other botnets[J]. Computer, 2017, 50(7): 80−84 doi: 10.1109/MC.2017.201

    [117]

    Bertino E, Islam N. BotNets and Internet of things security[J]. Computer, 2017, 50(2): 76−79 doi: 10.1109/MC.2017.62

    [118]

    Hallman R, Bryan J, Palavicini G, et al. IoDDoS-the Internet of distributed denial of sevice attacks[C] //Proc of the 2nd Int Conf on Cnternet of Things, Big Data and Security. Setúbal, Portugal: Scitepress, 2017: 47−58

    [119]

    Meidan Y, Bohadana M, Mathov Y, et al. N-BaIoT—network-based detection of IoT botnet attacks using deep autoencoders[J]. IEEE Pervasive Computing, 2018, 17(3): 12−22 doi: 10.1109/MPRV.2018.03367731

    [120]

    Kumar A, Lim T J. EDIMA: Early detection of IoT malware network activity using machine learning techniques[C] //Proc of the 5th World Forum on Internet of Things (WF-IoT). Piscataway, NJ: IEEE, 2019: 289−294

    [121]

    Ozawa S, Ban T, Hashimoto N, et al. A study of IoT malware activities using association rule learning for darknet sensor data[J]. International Journal of Information Security, 2020, 19: 83−92 doi: 10.1007/s10207-019-00439-w

    [122]

    Alharbi A, Hamid M A, Lahza H. Predicting malicious software in IoT environment based on machine learning and data mining techniques[J]. International Journal of Advanced Computer Science and Applications, 2022, 13(8): 497−506

    [123]

    Waqas M, Kumar K, Laghari A A, et al. Botnet attack detection in Internet of things devices over cloud environment via machine learning[J]. Concurrency and Computation:Practice and Experience, 2022, 34(4): e6662

    [124]

    Uhříček D, Hynek K, Čejka T, et al. BOTA: Explainable IoT malware detection in large networks[J]. IEEE Internet of Things Journal, 2023, 10(10): 8416−8431 doi: 10.1109/JIOT.2022.3228816

    [125]

    Agrawal R, Imieliński T, Swami A. Mining association rules between sets of items in large databases[C] //Proc of the 1993 ACM SIGMOD Int Conf on Management of Data. New York: ACM, 1993: 207−216

    [126]

    Kusupati A, Singh M, Bhatia K, et al. FastGRNN: A fast, accurate, stable and tiny kilobyte sized gated recurrent neural network[J]. Advances in Neural Information Processing Systems, 2018, 31: 9031−9042

    [127]

    Hu Weiwei, Tan Ying. Generating adversarial malware examples for black-box attacks based on GAN[J]. arXiv preprint, arXiv: 1702.05983, 2017

    [128]

    Anderson H S, Kharkar A, Filar B, et al. Learning to evade static PE machine learning malware models via reinforcement learning[J]. arXiv preprint, arXiv: 1801.08917, 2018

    [129]

    Suciu O, Coull S E, Johns J. Exploring adversarial examples in malware detection[C] //Proc of the 2019 IEEE Security and Privacy Workshops (S&PW). Piscataway, NJ: IEEE, 2019: 8−14

  • 期刊类型引用(0)

    其他类型引用(1)

图(4)  /  表(5)
计量
  • 文章访问数:  842
  • HTML全文浏览量:  102
  • PDF下载量:  325
  • 被引次数: 1
出版历程
  • 收稿日期:  2023-06-04
  • 修回日期:  2023-08-13
  • 网络出版日期:  2023-08-20
  • 刊出日期:  2023-10-15

目录

/

返回文章
返回