-
摘要:
近年来,随着物联网(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.
-
强化学习(reinforcement learning, RL)作为一种机器学习方法,其主要思想是使智能体通过最大化从环境中获得的累积奖励来学习最优策略. Q-learning是单智能体强化学习领域中的经典方法之一,但其难以应对动作空间和状态空间维数较高的环境. 深度Q网络(deep Q-network, DQN)利用深度神经网络逼近价值函数来解决这个困难. 得益于DQN在高维空间中展现出的优越性能,学者们基于此方法提出诸多深度强化学习(deep reinforcement learning, DRL)[1-4]方法.
随着DRL在机器控制[5-7]、人机游戏[8-10]等单智能体领域取得显著成功,许多工作将单智能体DRL方法扩展到多智能体设置并应用到真实环境中,如自动驾驶[11-12]、交通控制[13-14]. 然而,实现高效的多智能体强化学习通常会面临2个主要困难:可扩展性问题和部分可观测性限制. 一方面,利用环境的所有信息进行决策可能会导致大规模的联合状态动作空间. 随着智能体的数量增加,状态动作空间规模将呈指数增长,这导致智能体的规模难以扩展,即产生可扩展性问题. 另一方面,部分可观测性限制要求智能体只根据自己的局部观测历史来选择动作和做出决策. 这虽然提高了决策效率,但也严重限制智能体探索最优动作的能力,同时造成了环境的不稳定性.
为应对部分可观测性限制带来的问题,Lowe等人[15]提出了多智能体深度确定性策略梯度(multi-agent deep deterministic policy gradient, MADDPG)方法. 该方法引入集中训练和分散执行(centralized training with decentralized execution, CTDE)框架:在集中训练阶段,智能体可以访问全局信息;在分散执行阶段智能体只根据局部观测历史选择动作[16-18]. 随着MADDPG方法在应对部分可观测限制情况时展现出的优越性能,基于CTDE框架的多智能体强化学习(multi-agent reinforcement learning, MARL)方法不断涌现,CTDE框架也成为MARL中最常用的框架之一. 此外,为了解决CTDE范式的可扩展性问题,学者们提出了各种价值函数分解方法[19-22].
尽管MADDPG已成为MARL中最常用的基线方法之一,以MADDPG为代表的CTDE方法存在的Q值高估问题没有得到广泛研究. Q值高估问题源于bootstrapping目标中常用的max算子. 具体地,Q-learning中的max算子用最大估计值逼近最大期望值,这将导致价值高估:E[max,其中 {X_{{a_i}}} 表示给定状态下动作{a_i}的Q值的随机变量. Q值高估问题会损害智能体的行为,导致智能体学得次优的策略[23-24].
在CTDE方法中,Q值高估问题同样存在. 具体地,假设有{\kern 1pt} n个智能体,每个智能体有 {\kern 1pt} L{\kern 1pt} 个动作,每个动作的Q值独立地由均匀分布U(0,1)得到,则{\max _{{a_i}}}E[{X_{{a_i}}}] = 1/2.同时 E[{\max _{{a_i}}}{X_{{a_i}}}] = {L^n}/({L^n} + 1 ),由于联合动作空间的大小 {\kern 1pt} L{\kern 1pt} 随智能体的数量呈指数增长, E[{\max _{{a_i}}}{X_{{a_i}}}] 趋向于1,且大于 {\max _{{a_i}}}E[{X_{{a_i}}}] ,由此可得CTDE方法存在Q值高估问题. 在CTDE方法中,个体智能体的决策质量取决于集中训练的评论家网络,评论家网络的价值函数高估问题可能会造成更严重的影响. 因此,研究MADDPG为代表的CTDE方法中存在的价值高估问题显得尤为必要和具有挑战性.
为应对这个挑战,本文提出基于双评论家的多智能体深度确定性策略梯度(multi-agent deep deterministic policy gradient method based on double critics, MADDPG-DC)方法来避免价值函数的过高估计. 本文的核心思想是通过在双评论家网络上的最小值操作来避免价值高估. 此外,为保证学习的稳定性和效率,本文采用延迟策略更新技术. 通过延迟行动者网络更新,减少了使用没变化的评论家网络得到的Q值来指导行动者网络重复更新的可能性,从而实现更高质量的策略更新. 本文的主要贡献和创新点有3点:
1) 从理论和实验层面上分别证明了MADDPG-DC存在严重的高估问题,并通过引入双评论家网络结构避免价值高估,从而促进更好的策略学习.
2) 为保证策略学习的效率和稳定性,在提出的MADDPG-DC中引入延迟行动者网络更新的方法,进一步提高策略更新的质量,使智能体更高效地学习最优策略.
3) 在多智能体粒子环境和交通信号控制环境上对所提出的MADDPG-DC方法进行了实验评估,实验结果表明提出的方法在仿真环境和实际系统上都具有可行性和优越性.
1. 基础理论
1.1 Dec-POMDP
MARL问题一般建模为去中心化部分可观测马尔可夫决策过程(decentralized partially observable Markov decision process, Dec-POMDPs)[25]. 具体地,Dec-POMDPs用元组{\kern 1pt} G = \langle S,A,P,R,O,n,\gamma \rangle 表示,其中部分可观测环境的状态记为{\kern 1pt} s \in S{\kern 1pt} ,智能体{\kern 1pt} i{\kern 1pt} 可获得的局部观测值记为{\kern 1pt} {o_i} \in O{{\kern 1pt} _i}. 智能体{\kern 1pt} {\kern 1pt} i{\kern 1pt} 根据其局部观测值{o_i}决定其动作{\kern 1pt} {a_i} \in A{\kern 1pt} , 联合动作表示为{\kern 1pt} a = ({a_1},{a_2},…,{a_N}) \in A{\kern 1pt},环境状态基于状态转移函数{\kern 1pt} P:S \times A \to S和联合动作转移至下一个状态. 智能体{\kern 1pt} i{\kern 1pt} 的学习目标是最大化其累计折扣奖励值{R_i} = \displaystyle\sum _{t = 0}^T{\gamma\;^t}r_i\;^t,其中{\kern 1pt} \gamma \in [0,1]{\kern 1pt} 为折扣因子, r_i\;^t 表示智能体{\kern 1pt} i{\kern 1pt} 在时间步{\kern 1pt} t获得的奖励值.
1.2 多智能体深度确定性策略梯度
MADDPG方法的关键思想是:在训练阶段,每个智能体都接收全局信息来学习一个集中的Q函数;在执行阶段,每个智能体只使用局部信息来选择动作. MADDPG利用CTDE框架与行动者-评论家结构,其中集中训练的评论家网络获得了全局信息,而分散的行动者网络只能获得个体的局部观测历史.
具体地,假设一个包含 {\kern 1pt} N{\kern 1pt} 个智能体的环境,智能体的策略是连续的,用\mu = \{ {\mu _1},{\mu _2},…,{\mu _N}\}表示,策略的参数是\varphi = \{ {\varphi _1},{\varphi _2},…,{\varphi _N}\},智能体{\kern 1pt} i{\kern 1pt} 的策略梯度J({\varphi _i}) = E[{R_i}]表示为
{\nabla _{{\varphi _i}}}J({\varphi _i}) = {E_{o,a \sim D}}[{\mu _i}({o_i})\nabla {a_i}Q_i^\mu (o,a)\left| {{a_i} = {\mu _i}({o_i})} \right.] \text{,} (1) 其中 Q_i^\mu (o,a) 是智能体{\kern 1pt} i{\kern 1pt} 的价值函数,函数的输入是全部智能体的联合动作 a = ({a_1},{a_2},…,{a_N}) 和观测信息 o = ({o_1},{o_2},…,{o_N}) ,输出是Q值. 经验回放池 {\kern 1pt} D{\kern 1pt} 由元组(o,o',{a_1},{a_2},…,{a_N},{r_1},{r_2},…,{r_N})组成,记录所有智能体的历史样本. 价值函数通过目标函数进行更新:
L({\varphi _i}) = {E_{o,a,r,o'}}{[Q_i^\mu (o,a) - y]^2} \text{,} (2) \left. {y = {r_i} + \gamma Q_i^{\mu '}(o',a')} \right|{a'_j} = {\mu '_j}({o_j})\text{,} (3) 其中\mu ' = \{ {\mu _{{{\varphi }_1'}}},{\mu _{{{\varphi }_2'}}}…,{\mu _{{{\varphi }_N'}}}\}是目标策略的集合. 值得注意的是,集中的评论家网络只在训练阶段使用,而在分散执行阶段,每个智能体只使用本地信息{o_i}和行动者网络{\mu _{{{\varphi }_i'}}}作出决策.
2. MADDPG-DC方法
在本节中,首先通过理论和实验证明,MADDPG存在过高估计价值函数的问题,然后介绍提出的改进方法,即基于双评论家网络的多智能体深度确定性策略梯度方法.
2.1 MADDPG中的价值函数高估问题
首先,给出理论证明以论证MADDPG中存在价值函数的过高估计问题. 定义策略参数 \varphi ,\varphi _i^{{\rm{ap}}}表示智能体{\kern 1pt} i{\kern 1pt} 的由对应评论家网络 Q_i^\theta (o,a) 指导的行动者网络的近似参数,并用\varphi _i^{{\rm{tr}}}表示由真实价值函数 Q_i^\mu (o,a) 指导的行动者网络的参数:
\varphi _i^{{\rm{ap}}}{\text{ = }}\varphi + \frac{\alpha }{{{Z_1}}}E[{\nabla _\varphi }{\mu _\varphi }({o_i})\nabla {a_i}Q_i^\theta (o,a)\left| {{a_i} = {\mu _\varphi }({o_i})} \right.] \text{,} (4) \varphi _i^{{\rm{tr}}}{\text{ = }}\varphi + \frac{\alpha }{{{Z_2}}}E[{\nabla _\varphi }{\mu _\varphi }({o_i})\nabla {a_i}Q_i^\mu (o,a)\left| {{a_i} = {\mu _\varphi }({o_i})} \right.] . (5) 然后,根据参数\varphi _i^{{\rm{ap}}}和参数\varphi _i^{{\rm{tr}}}定义最优策略{\mu _{{\rm{ap}}}}和{\mu _{{\rm{tr}}}}. 由于策略梯度是局部最大化操作,于是存在一个足够小的 {\varepsilon _1} ,当 \alpha \leqslant {\varepsilon _1} 时,{\mu _{{\rm{ap}}}}的近似值以{\mu _{{\rm{tr}}}}的近似值为下界.
E[Q_i^\theta (o,a)\left| {{a_i} = {\mu _{{\rm{ap}}}}({o_i})} \right.] \geqslant E[Q_i^\theta (o,a)\left| {{a_i} = {\mu _{{\rm{tr}}}}({o_i})} \right.]. (6) 相反,存在一个足够小的 {\varepsilon _2} ,当 \alpha \leqslant {\varepsilon _2} 时{\mu _{{\rm{ap}}}}的真实值以{\mu _{{\rm{tr}}}}的真实值为上界.
E[Q_i^\mu (o,a)\left| {{a_i} = {\mu _{{\rm{tr}}}}({o_i})} \right.] \geqslant E[Q_i^\mu (o,a)\left| {{a_i} = {\mu _{{\rm{ap}}}}({o_i})} \right.]. (7) 又因为价值估计的期望不小于对应的真实策略{\mu _{{\rm{tr}}}}的真实值的期望:
E[Q_i^\theta (o,a)\left| {{a_i} = {\mu _{{\rm{tr}}}}({o_i})} \right.] \geqslant E[Q_i^\mu (o,a)\left| {{a_i} = {\mu _{{\rm{tr}}}}({o_i})} \right.]. (8) 因此存在足够小的 {\varepsilon _1} 和 {\varepsilon _2} ,当 \alpha \leqslant \min ({\varepsilon _1},{\varepsilon _2}) 时,MADDPG中的价值函数会被高估:
\begin{split}& E[Q_i^\theta (o,a)\left| {{a_i} = {\mu _{{\rm{ap}}}}({o_i})} \right.] \geqslant E[Q_i^\theta (o,a)\left| {{a_i} = {\mu _{{\rm{tr}}}}({o_i})} \right.] \geqslant \\& E[Q_i^\mu (o,a)\left| {{a_i} = {\mu _{{\rm{tr}}}}({o_i})} \right.] \geqslant E[Q_i^\mu (o,a)\left| {{a_i} = {\mu _{{\rm{ap}}}}({o_i})} \right.]. \end{split} (9) 2.2 MADDPG-DC
MADDPG中存在的价值函数过高估计一般会导致2个问题:一方面,价值高估会在多次更新后导致显著的偏差;另一方面,价值估计偏差会进一步导致策略更新的不准确. 评论家网络对次优动作进行过高的评估,从而导致在接下来的策略更新中引导行动者网络对次优动作的选择.
在降低单智能体深度强化学习中的价值函数过高估计问题方面,已有多项工作取得了成功,其中深度双Q网络采用目标值网络和当前值网络结构来进行独立的价值估计,利用当前值网络的价值估计来选择最优动作,利用目标值网络的价值估计来评估最优动作,将最优动作的选择和价值估计分开,降低了对次优动作过高估计价值的可能性[2].
MADDPG方法中的评论家网络也采取相似的目标值网络和当前值网络结构进行更新:
{y_i} = {r_i} + \gamma \left. {Q_i^{{{\theta '}_i}}(o',a)} \right|{a_i} = {\mu _{{\varphi _i}}}({o'_i}) . (10) 然而,由于MADDPG方法的策略变化缓慢,导致目标值网络与当前值网络过于相似,难以进行有效的独立的价值估计,过高估计的问题仍然存在. 如图1所示,本文实验评估了MADDPG中存在的估计偏差问题.
在多智能体粒子环境(multi-agent particle environment)中的捕食者猎物(predator-prey)环境上,测量MADDPG和MADDPG-DC在学习过程中的价值估计的估计偏差、采样状态和经验回放池的动作,确定真实的和估计的Q值. 结果如图1所示,一个非常明显的过高估计偏差发生在MADDPG的学习过程中,而MADDPG-DC在学习过程中不存在明显的估计偏差.
MADDPG-DC使用双评论家网络结构来避免价值高估,2个评论家网络的目标函数分别为
{y_{i,1}} = {r_i} + \gamma \left. {Q_i^{{{\theta '}_{i,1}}}(o',a)} \right|{a_i} = {\mu _{{\varphi _{i,1}}}}({o'_i}) \text{,} (11) {y_{i,2}} = {r_i} + \gamma \left. {Q_i^{{{\theta '}_{i,2}}}(o',a)} \right|{a_i} = {\mu _{{\varphi _{i,2}}}}({o'_i}) . (12) MADDPG-DC通过在双评论家网络上进行最小值操作,能够避免价值估计过高的问题. 虽然该更新规则可能会导致价值低估,但价值低估不会在策略更新过程中显式传播[26-28]. MADDPG-DC方法的评论家网络的目标函数为
{y_i} = {r_i} + \gamma \mathop {\min }\limits_{k = 1,2} \left. {Q_i^{{{\theta '}_{i,k}}}(o',a)} \right|{a_i} = {\mu _{{\varphi _{i,k}}}}({o'_i}) . (13) MADDPG-DC方法利用目标网络来减少目标更新过程中的误差. 由于高误差状态下的策略更新会导致智能体动作的发散,MADDPG-DC方法引入延迟行动者网络更新的方法,将行动者网络的更新频率设置为低于评论家网络的更新频率,以使得行动者网络的策略更新前的误差最小化. 具体地,设定评论家网络每更新3次后,行动者网络更新1次. 同时为确保误差最小,缓慢地更新目标网络:
{\theta '_{i,k}} \leftarrow \tau {\theta _{i,k}} + (1 - \tau ){\theta '_{i,k}} \text{,} (14) {\varphi '_i} \leftarrow \tau {\varphi _i} + (1 - \tau ){\varphi '_i} . (15) 在评论家网络每3次迭代后,对于智能体{\kern 1pt} i{\kern 1pt} ,基于评论家网络 Q_i^{{\theta _i}} 利用确定性策略梯度方法更新行动者网络 {\mu _{{\varphi _i}}} . 通过延迟行动者网络更新,MADDPG-DC方法减少了使用没变化的评论家网络得到的Q值来指导行动者网络重复更新的可能性,从而实现更高质量的策略更新.
图2展示了MADDPG-DC的网络结构,在训练阶段,只对行动者网络和双评论家网络进行训练,而行动者目标网络和评论家目标网络用于稳定行动者网络和双评论家网络的学习效果. 算法1给出了MADDPG-DC的伪代码.
算法1. MADDPG-DC.
输入:每个智能体 {\kern 1pt} i{\kern 1pt} 的观测 {\kern 1pt} {o_i}{\kern 1pt} , 奖励函数 R ;
输出:评论家和行动者目标网络参数.
初始化:每个智能体 {\kern 1pt} i{\kern 1pt} 的评论家网络 Q_i^{{\theta _1}} , Q_i^{{\theta _2}} ;行动者网络 \mu _i^\varphi ;经验回放池 D .
① for 回合数 = 1 to M (最大回合数)
② for 时间步数 = 1 to T (最大时间步数)
③ for 智能体 {\kern 1pt} i{\kern 1pt}
④ 接收本地局部观测{\kern 1pt} {o_i};
⑤ 根据策略网络选择动作 {a_i} \sim \mu _i^\varphi ({\kern 1pt} {\kern 1pt} {o_i}{\kern 1pt} ) ;
⑥ 接收奖励值{r_i}和新的局部观测{\kern 1pt} {o'_i};
⑦ 存储历史样本({o_i},{a_i},{r_i},{o'_i})到 D ;
⑧ 从 D 中抽取小批量样本 S 用于训练;
⑨ 最小化目标函数来更新评论家网络:
L({\theta _{i,k}}) = {S^{ - 1}}\displaystyle\sum {({y_i} - } Q_i^{{{\theta '}_{i,k}}}(o',a){)^2};
⑩ for 时间步数 mod 3
⑪ 更新行动者网络 {\varphi _{i,k}} : {\nabla _{{\varphi _i}}}J({\varphi _i}) = {S^{ - 1}}\displaystyle\sum [{\mu _{{\varphi _i}}}({o_i})\nabla {a_i} Q_i^\mu (o,a)\left| {{a_i} = {\mu _{{\varphi _i}}}({o_i})} \right.];
⑫ 更新评论家目标网络和行动者 目标网络: {\theta '_{i,k}} \leftarrow \tau {\theta _{i,k}} + (1 - \tau ){\theta '_{i,k}} , {\varphi '_i} \leftarrow \tau {\varphi _i} + (1 - \tau ){\varphi '_i} ;
⑬ end for
⑭ end for
⑮ end for
⑯ end for
2.3 方法复杂度分析
MADDPG-DC方法使用神经网络来促进评论家的训练,其中神经网络使用多层感知器(multilayer perceptron, MLP)架构. 首先,对于使用MLP架构的单智能体强化学习方法而言,其训练复杂度是O(M \times T(S \times H + H \times A)). 其中 M 为回合数, T 是每回合的时间步数; S 表示输入层的大小,也表示智能体的观测集合的大小, H 表示神经网络隐藏层的大小; A 表示输出层的大小,也表示智能体的动作集合的大小.
对于MADDPG-DC的训练阶段,每个评论家网络用单一的值来评估多个智能体的联合动作和观测结果,其复杂度为 O(M \times T(N \times (A + S) \times H + H \times 1)) , N 表示智能体的数量. 在执行阶段的复杂度方面,由于每个智能体都是独立行动,不需要评论家网络和其他智能体的交互,因此每个智能体在给定时间步数上执行1个动作的复杂度为 O(S \times H + H \times A) . MADDPG方法的复杂度与MADDPG-DC一致.
3. 实验结果
本节在各种复杂的平台和任务上进行了实验,以验证MADDPG-DC方法的优越性和有效性. 首先在MARL领域中广泛使用的多智能体粒子环境进行了仿真实验;然后在交通信号控制环境的真实系统中评估MADDPG-DC方法,以证明该方法在真实环境中应用的可行性.
3.1 多智能体粒子环境
首先使用MARL中常用的多智能体粒子环境进行实验. 实验配置如表1所示. 环境是2维连续的,包含K个相互协作的智能体、Z个地标和L个敌对的智能体. 本文在多智能体粒子环境中的3个环境上进行了实验,以验证所提方法的有效性.
表 1 多智能体粒子环境的实验配置Table 1. Experimental Configuration for Multi-Agent Particle Environments环境 动作维度 状态维度 观测维度 (K, Z, L) 捕食-猎物 5 16 62 (3, 1, 2) 物理欺骗 5 10 28 (2, 1, 2) 世界 5 34 200 (4, 2, 1) 1)捕食者-猎物环境. 如图3所示,这个环境包含了3个合作的捕食者,即智能体1,2,3;1个移动速度更快的猎物,即敌方智能体和2个阻碍前进的障碍. 捕食者需要协作来追赶猎物,如果捕食者成功捕获猎物,捕食者得到奖励,而猎物得到惩罚.
2)物理欺骗(physical deception)环境. 该环境包括2个合作的智能体、1个敌对的智能体和2个地标物体. 2个合作智能体的目标是在敌对智能体不知道地标物体的情况下,从一个地标到达另一个地标. 合作智能体的奖励取决于其中一个智能体到达目的地的最小距离.
3)世界(world)环境. 在包含4个移动较慢的智能体和2个移动较快的敌对智能体的世界环境中,较慢的智能体的目标是学会合作以捕获2个移动较快的敌对智能体.
本文将提出的MADDPG-DC方法与多种基线方法在以上3个环境中进行对比实验. 实验选择了MADDPG[15]、反事实的多智能体策略梯度[18] (counterfactual multi-agent policy gradient, COMA)、值分解网络[19] (value-decomposition networks, VDN)方法、QMIX[20]这4种基于CTDE框架的方法作为基线方法. COMA使用一个基于反事实基线的评论家网络结构来推导智能体学习策略的优势函数. VDN和QMIX是价值函数分解方法的代表性方法,使用个体价值函数的组合来估计联合价值函数.
由于这些基线方法全部基于CTDE框架,于是都存在价值函数高估问题. 所有实验在CPU Intel Xeon Silver 4210和GPU Nvidia RTX 2080上使用5个随机种子构建. 对于MADDPG和COMA,使用与MADDPG-DC相同的参数,如表2所示. VDN和QMIX包括更复杂的网络结构,参数如表3所示.
表 2 MADDPG-DC, MADDPG, COMA在多智能体粒子环境上的超参数Table 2. Hyperparameters of MADDPG-DC, MADDPG, COMA on Multi-Agent Particle Environments超参数 取值 评论家网络学习率 10−3 行动者网络学习率 10−4 目标网络更新率 10−2 RNN类型 GRU 批量大小 100 折扣因子 0.95 优化函数 Adam 训练回合 106 表 3 VDN和QMIX在多智能体粒子环境上的超参数Table 3. Hyperparameters of VDN and QMIX on Multi-Agent Particle Environments超参数 取值 学习率 10−4 RNN类型 LSTM & GRU 超网络 Have & None 批量大小 100 折扣因子 0.95 训练回合 106 优化函数 Adam 图4~6展示了各方法的平均奖励值. 在捕食者-猎物环境中,在参数相对一致的情况下,MADDPG和QMIX方法下的智能体未学得稳定的策略,导致平均奖励呈下降状态. 本文提出的MADDPG-DC方法在训练一开始的表现低于价值函数分解方法VDN,但最终收敛到更高的平均奖励值. 在物理欺骗环境下,MADDPG-DC收敛得最快且学得的平均奖励值最高,而MADDPG,COMA,VDN方法未能学得最优的策略. 在世界环境下,除了QMIX以外的大部分方法都采用收敛到稳定的策略,而MADDPG-DC同样取得了最好的表现. 综上,对比其他存在价值高估问题的基线方法,MADDPG-DC方法取得了更好的性能.
此外,为探讨双评论家网络结构和延迟行动者网络更新这2个因素对性能提升的影响,本文设计了消融实验. 实验中使用2个变体:使用双评论家网络结构但不延迟行动者网络更新的MADDPG-D和不使用双评论家网络结构但延迟行动者网络更新的MADDPG-C. 将这2个变体与原始MADDPG方法以及同时使用双评论家网络结构和延迟行动者网络更新的MADDPG-DC进行了比较. 首先,比较MADDPG-D与MADDPG的性能表现. 图7~9展示了不同多智能体粒子环境环境下的消融实验. 实验结果表明,在捕食者-猎物环境和世界环境下,MADDPG-D的学习性能显著,并持续优于MADDPG且收敛到稳定的策略. 在物理欺骗环境下,虽然MADDPG-D的表现持续优于MADDPG,但其学习曲线在后期也呈现下降趋势.
进一步,为验证延迟行动者网络的有效性,首先对比MADDPG,MADDPG-C,MADDPG-D在3个环境中,MADDPG-C的性能相比MADDPG有一定的提升, 但无法超过MADDPG-D的性能. 接下来,对比MADDPG-D和MADDPG-DC的表现. 如图7~9所示,在捕食者-猎物环境和世界环境下,MADDPG-DC收敛更快,且收敛至更高的奖励值. 在物理欺骗环境下,MADDPG-DC相比MADDPG-D,其可以收敛到稳定的最优策略. 由此可见双评论家网络结构和延迟行动者网络更新这2个因素对方法的性能都有提升作用,且同时使用2个改进因素的效果大于单独使用任意1个的效果.
3.2 交通信号控制环境
随着城市化的快速发展,车辆数量的增加不可避免地导致交通拥堵程度的增加. 通过优化管理方法可以实现交通系统的可持续发展[29]. 交通信号控制(traffic signal control, TSC)是一种有效的优化策略,它有助于改善交通状况、减少拥堵、缩短出行时间[30-31]. 为了应对TSC的规模需求,学者们尝试在多智能体系统中使用RL.
在局部观测和通信受限的情况下,将TSC定义为由分散的强化学习智能体控制交叉口的协作MARL问题是一种有效且通用的方法. 其中一种思路是使用独立Q学习(independent Q-learning, IQL)方法建模[32],在这种方法中,分散的强化学习智能体独立地学习各自的策略,并将其他智能体当作环境的一部分. IQL方法可以解决可扩展性问题,但当其他智能体改变自己的策略[33]时,IQL会出现不收敛和不稳定性问题.
然而,现有的工作包括IQL方法通常采用分散训练和分散执行框架,这个框架通常会存在环境不稳定性问题[34]. 基于CTDE框架的MARL是一种有效的改进,如MADDPG方法. 然而,在TSC中,MADDPG方法的性能表现一般[35]. 其原因可能是在复杂环境下,MADDPG中价值估计的不准确导致了智能体行为的发散或者智能体学得了次优的策略. 同时,MADDPG在分散执行阶段缺乏通信学习机制[36-38],而通信学习机制对于保证整体交通状态的控制稳定性和效果具有重要意义.
本文应用MADDPG-DC和CTDE框架来处理TSC问题. 为验证MADDPG-DC在实际系统中的可行性和有效性,本文在成都市实际交通网络[39-40]上进行了实验. 利用城市交通平台模拟真实的交通状况. 实验将每个交叉口的交通信号控制器建模为一个智能体,将网络交通状态建模为全局状态.
在真实的交通信号控制环境中,为证明MADDP-DC方法的有效性,选择IQL[32]、MADDPG[15]和最大压力控制(max pressure control)[41]等3种方法作为基线方法. IQL[32]基于分散训练分散执行框架,分散的智能体独立地学习各自的策略,而MADDPG利用CTDE框架. 最大压力控制是TSC领域最先进的控制方法之一,通过选择信号相位,最大化通过交叉口的车辆数量.
评价结果以各交叉口的交通拥堵情况和车辆通行效率为主要评价指标,包括3个主要指标: 平均队列长度、平均延迟和平均行驶时间. 平均队列长度是指在交叉口的所有车辆的平均等待队列长度. 平均延迟是指交通路口的所有车辆的平均等待时间除以队列长度. 这二者的值越高,表示方法的性能越差. 平均行驶时间是指整个交通网络中车辆从起点行驶到终点所花费的平均时间. 同样地,平均行驶时间的值越高,表示该方法的性能越差.
首先,本文从合成道路数据集中随机选取合成交通网络来训练MADDPG-DC方法以及其他基线方法,仿真实验运行了8000回合. 交通信号控制环境下的MADDPG-DC的超参数如表4所示. 基线MADDPG和MADDPG-D也设置相同的超参数进行训练. IQL的超参数如表5所示. 最大压力控制不是一种MARL方法,其参数设置保持和文献[41]一致.
表 4 交通信号控制环境下MADDPG, MADDPG-D, MADDPG-DC的超参数Table 4. Hyperparameters of MADDPG, MADDPG-D, MADDPG-DC Under Traffic Signal Control Environments超参数 取值 评论家网络学习率 10−3 行动者网络学习率 10−4 批量大小 64 折扣因 0.99 训练回合 8000 优化函数 Adam 表 5 交通信号控制环境下IQL的参数Table 5. Hyperparameters of IQL Under Traffic Signal Control Environments超参数 取值 学习率 10−4 批量大小 64 折扣因子 0.99 训练回合 8000 优化函数 Adam 然后,在真实交通网络中对训练后的方法分别进行1h的时变交通流训练. 考虑到计算成本,实验在1h后停止评估. 图10和图11分别展示了各方法下的真实交通网络中的平均队列长度和平均延迟. 从图11可以看出,MADDPG-DC方法的平均队列长度小于其他基线方法. 在模拟时间为2700 s时,MADDPG-DC方法下的平均队列长度达到峰值,约为0.63辆. 而对于其他基线方法,MADDPG方法在2980 s时达到约为1.41辆的峰值,MADDPC-D方法在2980 s时的峰值在0.92辆以上,IQL方法在3010 s时的峰值在2.69辆以上,最大压力控制方法在2730 s时的峰值在1.65辆左右.
对比图10和图11可以发现,不同方法的曲线大部分都有相似的趋势. 大多数曲线在前期增加,然后在不同的时间到达峰值,最后趋于下降. 因此,可以推断这2个指标是相关的. 随着车辆队列的增加,交叉口的平均延迟也会增加. 值得注意的是,所有方法通过积累的交通数据进行学习后,都不同程度地减少了队列长度.
表6给出了不同方法在实际交通网络中多个的评价指标下的表现. 可以发现,MADDPG-DC的表现优于MADDPG-D,说明延迟行动者网络更新的有效性. 同时MADDPG-D的表现其次,证明双评论家网络结构实现了更准确的价值估计,进而促进更高质量的策略学习.
表 6 不同方法在真实交通网络中的性能Table 6. Performance of Different Methods in Real Traffic Networks方法 平均延迟/(s/辆) 平均队列长度/辆 平均行驶时间/s Max Pressure 40.94 1.82 269.45 IQL 48.61 2.15 285.23 MADDPG 37.73 1.53 253.67 MADDPG-D 24.08 1.21 216.32 MADDPG-DC 21.62 0.82 192.65 注: 黑体数字表示性能最优. 图11展示了所有方法的平均队列长度变化曲线. 如图11所示,MADDPG-DC方法在所有方法中表现最好,且MADDPG-D的表现其次. 2种变体方法在初期的曲线非常接近,但MADDPG-DC在3050 s达到约26.42 s/辆的峰值,而MADDPG-D在时间3250 s达到的峰值超过44.02 s/辆. MADDPG曲线虽然在模拟时间1700~1900 s之间有所下降,但之后一直呈现上升趋势. IQL方法和最大压力控制方法都直到结束时才出现一定程度的下降.
此外,值得注意的是,所有平均延迟曲线在前期均呈平稳上升趋势. 最大压力控制方法和IQL方法在后期仍然呈上升趋势,而MADDPG-D方法和MADDPG-DC方法在前期达到峰值,但在后期趋于下降. 无论是IQL方法还是最大压力控制方法都不能依靠一种可持续的策略来快速恢复拥堵的交通网络. 与MADDPG相比,MADDPG-D受益于更准确的价值估计可以学得更好的策略. 与MADDPG-D相比,MADDPG-DC倾向于一种更稳定和可持续的策略,能够实现更快的交通拥堵恢复. MADDPG-DC的平均队列长度趋于0,说明该方法对于减少交叉口拥堵,提高车辆行驶效率发挥了重要作用.
4. 总结和展望
为更好地估计MARL方法中的价值函数,本文提出基于双评论家网络的多智能体深度确定性策略梯度方法. 通过理论和实验论证MADDPG存在价值高估问题,并提出双评论家网络结构来避免价值高估. 此外,为提高策略更新的质量,延迟行动者网络更新. 实验结果表明,本文提出的方法在多智能体粒子环境的多个环境上的表现显著优于MADDPG等其他基线方法. 此外,交通信号控制环境上的实验结果证明所提方法在真实环境中的可行性.
然而,大多数基于CTDE框架的MARL方法可能都存在价值高估或低估的问题,本文没有对其他基于CTDE的MARL方法进行深入研究,这是未来的一个有趣且有价值的研究方向. 同时,在价值函数分解方法和其他CTDE方法中实现更好的价值估计将是我们下一步的工作.
作者贡献声明:丁世飞提出论文的研究方向及指导论文写作;杜威负责论文的撰写及研究框架设计;郭丽丽、张健、徐晓负责实验指导及论文写作指导.
-
表 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架构 实验室模拟 表 2 基于人工智能的跨架构物联网恶意代码检测技术对比
Table 2 Comparison of AI-based Cross-Architecture IoT Malware Detection Techniques
数据来源 特征类别 人工智能算法 数据集 支持的架构 年份 文献[25] 操作码及API SVM,kNN IoTPOT ARM,MIPS,MIPSE 2019 文献[52] 操作码及API SVM,kNN IoTPOT ARM,MIPS,MIPSEL 2018 文献[59] 操作码及CFG SVM firmware ARM,MIPS,PPC,SPARC,X86,X86_64 2019 文献[63] 操作码及ELF文件特征 CNN VirusTotal ARM,MIPS,PPC,SPARC 2020 文献[58] 操作码及IG RNN-CNN IoTPoT,VirusShare ARM,MIPS,PPC 2020 文献[68] 字节序列 SVM VirusTotal ARM,MIPS,PPC,SPARC,X86、X86_64 2020 文献[69] 字节序列 SVM VirusTotal ARM,MIPS,PPC,SPARC,X86,X86_64 2020 文献[70] 字节序列 Bi-GRU-CNN TWISC ARM,MIPS,X86,SuperH4,PPC 2022 文献[50] 可打印字符串 聚类 IoTPOT ARM,MIPS,PPC,SPARC 2018 文献[27] 可打印字符串 RF,kNN,SVM VirusTotal ARM,MIPS,X86,X86-64,PPC,SPARC 2020 文献[71] 图相关特征 RF,kNN,SVM,MLP,LR VirusTotal ARM,MIPS,SPARC,X86,X86-64,PPC 2023 文献[75] 图相关特征 GNN ARM,MIPS,SPARC,PPC,X86-64 2021 文献[72] 系统调用 KMM VirusTotal ARM,Intel X86 2023 表 3 基于人工智能资源限制的物联网恶意代码检测技术对比
Table 3 Comparison of Resource-constrained AI-based IoT Malware Detection Techniques
数据来源 资源限制类别 限制缓解方案 特征选择/处理方法 人工智能算法 年份 文献[79] 计算资源限制 降低特征维度 Word2Vec MLP 2021 文献[80] 计算资源限制 降低特征维度 ACO SVM 2023 文献[81] 计算资源限制 降低特征维度 相关性分析 Random Forest,Bagging,Stacking,SVM,LR,kNN 2021 文献[82] 计算资源限制 降低特征维度 无 SVM,Random Forest,Decision Tree 2023 文献[84] 计算资源限制 降低特征维度 图像化 CNN 2023 文献[33] 计算资源限制 降低算法复杂度 N-gram CFD 2020 文献[85] 计算资源限制 降低算法复杂度 C500-CFG SVM 2019 文献[88] 内存限制 设计轻量级模型 无 LiMNet 2021 文献[87] 内存限制 设计轻量级模型 图像化 LCNN 2021 文献[91] 电力限制 设计可独立于物联网设备部署的检测 图像化 CNN 2021 文献[92] 电力限制 设计可独立于物联网设备部署的检测 过滤电信号噪声 Seq2Seq 2020 文献[93] 电力限制 设计可独立于物联网设备部署的检测 无 SVM 2018 表 4 性能提升的物联网恶意代码检测技术对比
Table 4 Comparison of Performance-enhancing IoT Malware Detection Techniques
数据来源 检测对象 技术重心 人工智能算法 数据集来源 年份 文献[96] 二进制可执行文件 提高检测准确率 CNN+LSTM VirusTotal,VirusShare 2021 文献[99] 二进制可执行文件 提高检测准确率 ResNet18+MobileNetV2+DenseNet161 未公开 2022 文献[98] 二进制可执行文件 提高检测准确率 GCNN 未公开 2023 文献[97] 二进制可执行文件 提高检测准确率 FPT VirusShare 2019 文献[101] 二进制可执行文件 检测混淆恶意代码 SVM 未公开 2020 文献[102] 二进制可执行文件 检测混淆恶意代码 Inception-v3 未公开 2022 文献[103] 二进制可执行文件 检测混淆恶意代码 Bi-LSTM+EfficientNet-B3 VirusTotal 2021 文献[111] 二进制可执行文件 检测混淆恶意代码 Bi-LSTM+SPP-Net 未公开 2022 文献[100] 二进制可执行文件 提高检测模型鲁棒性 VGAE-MalGAN 未公开 2023 文献[119] 流量数据 及时发现攻击行为 Auto-encoder 未公开 2018 文献[15] 流量数据 提高检测模型性能 ANN ToN_IoT 2022 文献[122] 流量数据 提高检测模型性能 RF IoT-23 2022 文献[114] 流量数据 提高检测模型性能 FastGRNN MedBIoT 2020 文献[120] 流量数据 及时发现攻击行为 LR,kNN,RF,AdaBoost 未公开 2019 表 5 挑战与机遇
Table 5 Challenges and Opportunities
类别 具体内容 面临的挑战 缺少针对物联网设备特性的评估指标; 缺少统一可用的动态分析环境; 缺乏对攻击的鲁棒性. 未来研究方向 结合大模型实现物联网恶意代码检测; 提高检测模型安全性; 结合零信任架构实现检测. -
[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